Pertemuan 9 Proyek Sistem Informasi Viska Armalina, ST., M.Eng Fase Pengembangan -2 Pertemuan 9 Proyek Sistem Informasi Viska Armalina, ST., M.Eng
f. Desain Antarmuka Pengguna Harapan pengguna : antarmuka yang efisien untuk memudahkan penyelesaian tugasnya dengan menggunakan software tersebut. Antarmuka baik = Software bagus
Keuntungan Menggunakan Desain Antarmuka Menghasilkan produk software yang lebih baik Meningkatkan kepuasan klien - antarmuka yang user friendly. Lebih fleksibel memberikan respon terhadap umpan balik klien. - jika ada perubahan keinginan klien, antarmuka dapat diubah secara efisien. Mempersingkat waktu siklus pengembangan software.
Pedoman Desain Antarmuka Konsisten Menentukan standar tampilan antarmuka Ikuti standar industri Penjelasan aturan penggunaan Dukungan baik bagi pengguna awam maupun mahir Tampilan objek Navigasi mudah Penentuan warna, kontras, dan jenis huruf Penanda untuk objek yang tidak aktif Perataan tampilan Tampilan huruf dan angka Efisien Posisi tampilan pop-up window Tips Bantuan
g.Desain Database (1) Desain database : proses untuk menghasilkan model data dari database. Desain database yang baik : Membagi informasi menjadi tabel-tabel berdasar subyek untuk mengurangi redudansi data Tabel-tabel dapat dihubungkan sesuai keperluan Memberikan dukungan dan memastikan akurasi dan integritas informasi Memiliki kemampuan melakukan pemrosesan data dan keperluan laporan.
Database Management System (DBMS) g.Desain Database (2) Database harus : - punya kemampuan mengelola data - dapat melakukan replikasi, koneksi, backup, restore - memiliki keamanan yang baik Database Management System (DBMS)
Database Management System (DBMS) Software untuk mengatur pembuatan, pemeliharaan, dan penggunaan database. Database harus didesain untuk mampu memenuhi requirements yang telah ditetapkan. Jika desain database tidak tepat dapat menyebabkan turunnya performa sistem.
Pengujian Desain Database Manfaat pengujian desain database adalah dapat terhindar dari : Integritas data yang kurang Relasi yang terlalu kompleks Masih adanya tabel yang belum dinormalisasi Ada kolom-kolom yang tidak terpakai dalam tabel Terlalu banyak informasi dalam satu tabel
3. Pembangunan Software Aktivitas utama dalam tahap ini : 1. Pemrograman 2. Integrasi sistem
Pemrograman Melibatkan programmer yang menerima deliverables dari proses desain untuk kemudian diwujudkan dalam bentuk software. Pada proyek SI dengan skala besar, tidak hanya mengandalkan satu atau dua programmer saja, namun dibentuk suatu tim programmer dengan pengaturan pembagian kerja yang sesuai requirements agar tidak tumpang tindih dan menimbulkan konflik kolaborasi pemrograman.
Penyimpanan dan Dokumentasi Pemrograman (1) Tujuan Penyimpanan : Dapat mendokumentasikan setiap perkembangan dan perubahan, sehingga mudah diteruskan bila ada pergantian personal dalam tim programmer. Manajer proyek dapat memantau perkembangan dalam proses pembangunan software dan melakukan tindakan yang diperlukan jika ada penyimpangan jadwal maupun dalam pemenuhan requirements.
Penyimpanan dan Dokumentasi Pemrograman (2) Backup untuk setiap perkembangan versi dapat dilakukan secara teratur sehingga mudah untuk menelusuri setiap milestone dalam pembangunan software. Pengamanan source code agar tidak disalahgunakan oleh pihak yang tidak berkepentingan. Manajer proyek harus memahami bahwa source code terkini dan backup harus disimpan di lokasi terpisah.
Penyimpanan dan Dokumentasi Pemrograman (3) Strategi backup harus ditentukan dengan baik meliputi backup secara terjadwal, lokasi penyimpanan, prosedur restore jika diperlukan.
Dokumentasi Pemrograman Harus lengkap, tidak perlu terlalu rinci. Harus ada penjelasan yang menggambarkan aspek-aspek mengenai bagaimana software dioperasikan. Penulisan dokumentasi bisa secara manual dan menggunakan alat bantu untuk menyusun dokumentasi otomatis, seperti: Doxygen (http://www.doxygen.org) Ndoc (http://ndoc.sourceforge.net/)
Integrasi Sistem Pengertian : Menyatukan setiap hasil kerja dari anggota tim programmer ke dalam satu kesatuan sistem yang utuh. Modul utama dari software dapat memanggil modul lainnya dalam sistem secara transparan serta setiap modul mengakses database yang sama/saling berelasi sebagai suatu sistem. Setiap modul/program yang dibangun akan saling berinteraksi dan informasi yang diharapan dapat sesuai requirements.
Kendala dalam Integrasi Sistem Terlalu fokus pada sisi teknologi sehingga proses bisnis yang mendasari integrasi sistem sering diabaikan. Manajer proyek terbebani dalam hal penerapan teknologi dan pemenuhan requirements, sehingga tim yang direkrut adalah orang-orang yang mempunyai keahlian teknis saja sehingga secara teknis sistem bisa terintegrasi dengan baik, namun secara workflow tidak sesuai dengan proses bisnis.
4. Quality Assurance/QA (1) Pada tahap ini akan dilakukan pengujian sebelum masuk ke fase delivery. Software diyakini sudah memenuhi: - user requirements spesification - standar user friendliness Standar tersebut disusun oleh tim QA sebagai pedoman dalam menentukan apakah software akan di deliver dapat digunakan oleh user tanpa mengalami hambatan dan kesulitan.
4. Quality Assurance/QA (2) Dua hal kualitas yang harus diperhatikan: - Kualitas deliverables : kualitas sistem informasi yang dihasilkan oleh pelaksanaan proyek. - Kualitas proyek : kualitas yang berhubungan dengan pelaksanaan pekerjaan dalam proyek. Proyek sebaiknya mempunyai Rencana Kualitas (Quality Plan) agar tidak berada pada situasi dimana deliverables yang dihasilkan tidak jelas dari sisi kualitasnya.
Testing Dimaksudkan agar software memenuhi spesifikasi requirements baik secara bisnis maupun teknis sebagaimana yang telah dijabarkan dalam desain dan pengembangan, berfungsi seperti yang diharapkan, dan dapat diimplementasikan dengan karakteristika yang sama.
Strategi Testing (1) Penjelasan secara formal bagaimana sistem akan ditest. Dibutuhkan: - Deskripsi hardware dan software serta alat bantu test - Penjelasan peran dan tanggung jawab semua yang terlibat dalam testing - Perlu requirements teknis dan fungsional software (dokumen requirements, dokumen perubahan dan desain teknis dan fungsional).
Strategi Testing (2) Tim testing akan melakukan : - analisis requirements - menyusun strategi testing - membahas rencana dengan tim proyek
Tingkatan Testing (1) Testing Unit Testing Integrasi Sistem dan Walkthrough Testing Fungsional Testing Kasus Testing Audit Testing Usability Testing End-to-End Testing Regresi Testing Kinerja Testing Beban
Tingkatan Testing (2) Testing Instalasi Testing Keamanan Testing Recovery/Error Testing Kompatibilitas Testing Perbandingan Testing Penerimaan Testing Alpha Testing Beta
5. Dokumentasi Dokumen yang dibuat tergantung dari kontrak antara manajemen dengan klien, jenis SI yang dibangun, umur sistem tersebut, budaya dan besarnya organisasi/perusahaan yang membangun SI, jadwal pengembangan yang ditentukan. Secara umum terbagi menjadi 2 kelompok : Dokumentasi Proses Dokumentasi Produk
Dokumentasi Proses Mendokumentasikan proses pengembangan software dan proses pemeliharaannya. Terbagi menjadi beberapa kategori: - Rencana, estimasi, dan jadwal untuk memprediksi dan mengontrol proses pengembangan software - laporan-laporan penggunaan sumberdaya proyek - Standar penjelasan implementasi proses berdasar standar internal, nasional, internasional. - Kertas kerja dokumen komunikasi teknis proyek yang berisi pemikiran dan gagasan anggota proyek. - Memo dan pesan e-mail mencatat komunikasi harian anggota tim proyek.
Dokumentasi Produk Berkaitan dengan produk software yang disampaikan kepada klien beserta pengguna- penggunanya. Waktu pemakaian dokumentasi produk lebih panjang dan berkembang seiring perkembangan software yang dibangun. Terdiri atas : - Dokumentasi Pengguna - Dokumentasi Sistem
Dokumentasi Pengguna Struktur dokumen harus mampu menjawab kebutuhan dari berbagai macam pengguna dari segi keahlian dan pengalamannya. Pengguna : - Pengguna akhir (end-user) - Administrator mengelola sistem yang digunakan oleh pengguna akhir
Dokumentasi Sistem Terdiri atas semua dokumen yang mendeskripsikan sistem tersebut, mulai dari spesifikasi requirements sampai ke dokumen rencana test final untuk penerimaan. Harus terstruktur dengan tinjauan yang dapat menjelaskan setiap aspek sistem lebih formal dan detail. Biasanya yang didokumentasikan antara lain desain sistem, kode sumber program, petunjuk penggunaan sistem.