Perencanaan Proyek Perangkat Lunak

Perencanaan Proyek Perangkat Lunak

Perencanaan Proyek Perangkat Lunak

Perencanaan Proyek Perangkat Lunak
Tiga langkah perencanaan : pendefinisian masalah, pengembangan strategi solusi, rencana proses pengembangan.

A. Pendefinisian Masalah
Nyatakan masalah yang akan diselesaikan secara tegas, termasuk di dalamnya batasan masalah dan sasaran yang ingin dicapai. Pernyataan masalah ditetapkan dalam sudut pandang pelanggan.
pernyataan masalah dalam sudut pelanggan misalnya : masalah penggajian, masalah inventory, atau masalah pengendalian lalu lintas udara
pernyataan masalah dalam sudut pengembang misalnya : masalah relational data bases, masalah algoritma sorting.
Teknik-teknik yang digunakan untuk mendapatkan informasi kebutuhan pelanggan meliputi : wawancara dengan pelanggan, pengamatan terhadap gugus tugas yang bermasalah, kinerja sebenarnya dari gugus tugas.
Rancang sebuah strategi solusi berbasis komputer.
Solusi harus ekonomis dan dapat diterima secara sosial maupun secara politik.
Solusi yang ekonomis adalah sistem komputerisasi yang memberikan pelayanan dan informasi yang sama dengan sistem lama tetapi membutuhkan waktu dan personal yang lebih sedikit dalam pengoperasiannya.
Sistem baru mungkin akan mengurangi keterlibatan personal; hal ini mungkin akan menimbulkan dampak sosial, bahkan politik.
Identifikasi sumber daya yang tersedia.
Tiga subsistem dalam sistem komputerisasi adalah : perangkat keras, perangkat lunak, dan personal. Identifikasi juga keterkaitan antar ketiga subsistem tersebut.
Subsistem perangkat keras meliputi perangkat keras beserta periferalnya, dan dalam beberapa kasus juga meliputi peralatan lain seperti sensor kendali proses, antena, dan radar.
Subsistem perangkat lunak meliputi perangkat lunak yang akan dikembangkan ditambah dengan perangkat lunak yang ada yang boleh jadi digunakan seadanya atau dalam versi modifikasinya.
Subsistem personal meliputi para operator, pemelihara, dan end user.
Tetapkan sasaran dan persyaratan, baik untuk proses pengembangan maupun produk.
Sasaran adalah tujuan yang ingin dicapai. Sasaran digunakan sebagai dasar bagi kerangka kerja proyek pengembangan perangkat lunak, baik dalam proses pengembangan maupun untuk produk kerja.
Sasaran dapat dinyatakan secara kualitatif maupun kuantitatif. Contoh :
proses (kualitatif) : harus meningkatkan keterampilan personal
proses (kuantitatif) : sistem harus selesai dalam 12 bulan
produk (kualitatif) : sistem harus membuat pekerjaan user maikin menarik
produk (kuantitatif) : sistem harus mengurangi biaya transaksi sebesar 25%.
Persyaratan menetapkan spesifikasi kemampuan sistem dalam menyelesaikan masalah.
Persyaratan mencakup aspek-aspek : fungsional, kinerja, perangkat keras, perangkat lunak, personal, dan pengantarmukaan.
Kalau memungkinkan, nyatakan persyaratan secara kuantitaif untuk menghindari ketidakjelasan dan perselisihan antara pengembang dengan pelanggan.
Contoh persyaratan kuantitatif :
akurasi sudut fase harus berada pada kisaran 0.5 derajat
tanggapan maksimum terhadap interrup adalah 0.25 detik
space maksimum yang digunakan sistem adalah 50 KB memori utama, tidak termasuk space untuk file-file buffer
sistem harus dapat beroperasi dengan kemampuan 95% ketika dioperasikan selama 24 jam penuh
Contoh persyaratan kualitatif :
akurasi harus cukup tinggi
sistem harus mempunyai tanggapan yang baik
sistem harus hemat dalam penggunaan memori utama
keandalan sistem harus 99%
Sasaran dan persyaratan dapat juga ditetapkan melalui atribut-atribut kualitas yang harus dimiliki sistem, di antaranya : portability (S/W tidak bergantung mesin), realiability (kemampuan program melakukan fungsi yang diinginkan), efficiency (menggunakan sumber daya minimal), accuracy (ukuran besarnya error), robustness/integrity (kemampuan bekerja dengan baik walau mendapat input yang tidak benar), correctness (hasil sesuai dengan yang diharapkan).
Tetapkan kriteria penerimaan sebuah sistem
Kriteria harus dinyatakan sedemikian rupa sehingga tidak akan menimbulkan perselisihan antara pengembang dan pelanggan. Kriteria harus dapat diverfikasi dengan suatu metoda baku seperti : peninjauan langsung, analisa, atau serangkaian uji, terhadap produk yang dihasilkan.

B. Pengembangan Strategi Solusi
Kecenderungan untuk menerima begitu saja solusi pertama yang terlintas di benak kita adalah masalah utama dalam perkeayasaan perangkat lunak. Ini tidak memberi peluang terhadap solusi lain yang sebenarnya masih mungkin untuk dipertimbangkan.
Kembangkan strategi solusi. Strategi bukan merupakan solusi rinci tetapi penyataan umum tentang sifat-sifat dari solusi yang mungkin.
Langkah-langkah pengembangan strategi solusi adalah sebagai berikut :
Uraikan beberapa strategi solusi tanpa memperhatikan batasan-batasan apapun
Adakan studi kelayakan terhadap setiap strategi. Perhatikan bahwa an unreasonable idea will lead to other ideas, some of which may be very reasonable.
Rekomendasikan sebuah strategi solusi, beri catatan mengapa solusi lain ditolak
Buat sebuah daftar prioritas karakteristik produk. Daftar ini penting jika kondisi tidak memungkinkan untuk mengimplementasikan seluruh kemampuan produk yang diinginkan seperti yang telah ditentukan sebelumnya.