Estimasi untuk proyek perangkat lunak

           Manajemen proyek perangkat lunak dimulai dengan serangkaian kegiatan yang secara kolektif di sebut perencanaan proyek.
            Dalam sebuah panduan yang sangat menarik untuk “kelangsungan proyek perangkat lunak”. 
Steve mconnell menyajikan pandangan dunia-nyata tentang perencanaan proyek.
Banyak tenaga teknis lebih suka melakukan pekerjaan teknis daripada menghabiskan waktu untuk perencanaan. Banyak manajer teknis tidak memiliki pelatihan yang memadai dalam pengelolaan teknis sehingga merasayakin bahwa perencanaan yang mereka buat akan meningkatkan hasil sebuah proyek. Oleh karena kedua belah pihak enggan melakukan perencanaan, seringkali perencanaan itu sendiri tidak pernah dibuat. 

Apa yang dimaksud dengan estimasi perangkat lunak ?

Suatu kebutuhan nyata untuk perangkat lunak telah ditetapkan; stakeholder sudah siap, rekayasawan perangkat lunak sudah siap untuk mulai bekerja, dan proyek pun akan di mulai untuk dapat bergerak maju, maka di butuhkan perencanaan proyek yang terlibat dalam 5 aktivitas.
Perencanaan Proyek
Penjelasan :

1.  Estimasi 

Perencanaan itu seperti membuat komitmen awal meskipun “komitmen” ini kemungkinan akan terbukti salah. Setiap kali perkiraan dibuat , anda melihat masa depan dan menerima ketidakpastian dalam kadar tertentu sebagai hal yang biasa. Mengutip Frederick Brooks:
…Tehnik pembuatan estimasi kita kurang dikembangkan. Lebih serius lagi,tehnik-tehnik tersebut mencerminkan asumsi tak terucap yang cukup  benar, yaitu, bahwa semua akan berjalan dengan baik… oleh karena itu kita tidak merasa pasti akan estimasi kita, manajer perangkat lunak sering kurang gigih membuat orang mau menunggu produk yang baik..

2.  Penjadwalan, Analisis resiko, perencanaan  manajemen kulalitas dan juga Perencanaan manajemen perubahan 

Risiko diukur melalui tingkat ketidakpastian pada estimasi kuantitatif yang dibuat untuk sumber daya, biaya, dan jadwal.Bila ruang lingkup proyek atau syarat proyek tidak dipahami dengan baik, maka risiko dan ketidakpastian menjadi sangat tinggi.
Perencana perangkat lunak harus melengkapi fungsi, kinerja, dan definisi interface(yang diisikan ke dalam spesifikasi sistem). Pendekatan-pendekatan rekayasa perangkat lunak modern (seperti model proses evolusioner) memakai pandangan pengembangan yang interaktif. Dengan pandangan semacam ini dimungkinkan untuk melihat estimasi dan merevisinya bila customer mengubah kebutuhannya.

Tujuan Perencanaan Proyek Perangkat Lunak

Tujuan umum dari perencanaan proyek perangkat lunak adalah:
-Menyediakan sebuah kerangka kerja yang memungkinkan manajer membuat estimasi yang dapat dipertanggung-jawabkan mengenai sumber daya, biaya dan jadwal. Estimasi dibuat dengan sebuah kerangka waktu yang terbatas pada awal sebuah proyek perangkat lunak dan seharusnya diperbaharui secara teratur selagi proyek sedang berjalan.

-Untuk pengawasan, penelusuran, dan pemantauan sebuah proyek teknik yang kompleks.

Ruang Lingkup Perangkat Lunak

Aktivitas pertama dalam perencanaan perangkat lunak adalah penentuan ruang lingkup perangkat lunak yang terdiri dari

-Fungsi
Untuk memberikan awalan yang lebih detail pada saat dimulai estimasi.

-Kinerja
Melingkupi pemrosesan dan kebutuhan waktu respon.

-Batasan
Mengidentifikasi batas yang ditempatkan pada perangkat lunak oleh hardware eksternal, memori dan system lain.

-Interface
Konsep sebuah Interface diinterpretasikan untuk menentukan:

-Hardware yang mengeksekusi perangkat lunak dan device yang dikontrol secara langsung oleh perangkat lunak.

-Software yang sudah ada dan harus dihubungkan dengan perangkat lunak baru.

-Manusia yang menggunakan perangkat lunak melalui perangkat I/O

-Prosedur

-Realibilitas (Keandalan)

Untuk mengerti Ruang Lingkup tersebut, maka perekayasa perangkat lunak harus:
-Mengerti kebutuhan pelanggan
-Mengerti konteks bisnis
-Mengerti batasan-batasan proyek
-Mengerti motivasi pelanggan
-Mengerti alur kearah perubahan

Teknik yang banyak dipakai secara umum untuk menjembatani jurang komunikasi antara pelanggan dan pengembang serta untuk memulai proses komunikasi adalah dengan melakukan pertemuan atau wawancara pendahuluan.

Gause & Weinberg mengusulkan bahwa analisis harus memulainya dengan mengajukan pertanyaan-pertanyaan bebas konteks, yaitu serangkaian pertanyaan yang akan membawa kepada pemahaman yang mendasar terhadap masalah, orang yang menginginkan suatu solusi, sifat solusi yang diharapkan, dan efektivitas pertemuan itu sendiri.

Sumber Daya

Tugas kedua perencanaan perangkat lunak adalah mengestimasi sumber daya yang dibutuhkan untuk menyelesaikan usaha pengembangan perangkat lunak tersebut. Gambar berikut memperlihatkan sumber daya pengembangan sebagai sebuah piramid.

Piramida diatas memperlihatkan sumber daya pengembangan sebagai sebuah piramis. Piranti perangkat keras dan perangkat lunak berada pada fondasi dan menyediakan infrastruktur untuk mendukung usaha pengembangan (lingkungan pengembang). Dalam tingkat yang lebih tinggi terdapat komponen perangkat lunak reusable, blok bangunan perangkat lunak yang dapat mengurangi biaya pengembangan secara dramatis dan mempercepat pencapaian. Pada puncak piramida terdapat sumber daya utama yaitu manusia.


Dibawah ini merupakan penjelasan lebih spesifik mengenai sumber daya.

Sumber Daya Manusia
Perencanaan sumber daya manusia memulai dengan mengevaluasi ruang lingkup serta memilih kecakapan yang dibutuhkan untuk mnyelesaikan pengembangan. Baik posisi organisasi maupun specialty. Jumlah orang yang diperlukan untuk sebuah proyek perangkat lunak dapat ditentukan setelah estimasi usaha pengembangan dibuat.

Komponen Perangkat lunak (reusable)
Kreasi dan penggunaan kembali blok bangunan perangkat lunak yang seharusnya dikatalog menjadi referensi yang mudah, distandarisasi untuk aplikasi yang mudah, dan divalidasi untuk integrasi yang mudah. Ada empat kategori sumber daya perangkat lunak yang harus dipertimbngkan pada saat perencanaan berlangsung, yaitu :

Komponen Off-the self
Perangkat lunak yang ada dapat diperoleh dari bagian ketiga atau telah dikembangkan secara internal untuk proyek sebelumnya.

Komponen Full-Experience
Spesifikasi, kode, desain atau pengujian data yang sudah ada yang dikembangkan pada proyek yang lalu yang serupa dengan perangkat lunak yang akan dibangun pada proyek saat ini.

Komponen Partial-Experience
Aplikasi, kode, desain, atau data pengujiaan yang ada pada proyek yang lalu yang dihubungkan dengan perangkat lunak yang dibangun untuk proyek saat ini, tetapi akan membutuhkan modifikasi substansial.

Komponen Baru
Komponen perangkat lunak yang harus dibangun oleh tim perangkat lunak khususnya adalah untuk kebutuhan proyek sekarang . Lebih baik mengkhususkan syarat sumber daya perangkat lunak dari awal. Dengan cara ini evaluasi teknis dari semua alternatif dapat dilakukan dan akuisisi secara berkala dapat terjadi.

Lingkungan
Lingkungan yang mendukung proyek perangkat lunak, yang disebut juga software engineering environment (SEE), menggabungkan perangkat lunak dan perangkat keras. Karena sebagian besar organisasi perangkat lunak memiliki konstituen ganda yang memerlukan akses ke SEE, maka perencana proyek harus menentukan jendela waktu yang dibutuhkan bagi perangkat keras dan perangkat lunak serta membuktikan bahwa sember-sumber daya tersebut dapat diperoleh.
Pada saat sebuah sistem berbasis komputer akan direkayasa, tim perangkat lunak mungkin membutuhkan akses ke elemen perangkat keras yang sedang dikembangkan oleh tim rekayasa yang lain.

Estimasi Proyek Perangkat Lunak

Estimasi biaya dan usaha perangkat lunak tidak akan pernah menjadi ilmu pasti. Variabel yang terlalu banyak, manusia, teknik, lingkungan, politik dapat mempengaruhi biaya dan usaha akhir yang diaplikasikan untuk mengembangkannya.
Ada sejumlah pilihan untuk mencapai estimasi biaya dan usaha yang dapat dipertanggungjawabkan :
-Menunda estimasi sampai akhir proyek (estimasi akurat 100% bila proyek sudah selesai)
-mendasarkan estimasi pada proyek-proyek yang mirip yang sudah dilakukan sebelumnya.
-menggunkana “teknik dekomposisi” yang relatif sederhana untuk melakukan estimasi biaya dan usaha proyek.
-menggunakan satu atau lebih model empiis bagi estimasi usaha dan biaya PL
Perkiraan Biaya
-Ruang Lingkup proyek harus didefinisikan secara eksplisit
-Tugas dan atau dekomposisi fungsional diperlukan
-Pengukuran historis sangat membantu
-Paling sedikit harus digunakan dua teknik berbeda
-Harus diingat bahwa ketidakpastian adalah hal yang tidak dapat dipidahkan (dari proyek PL).
Akurasi Estimasi perangkat lunak ditentukan oleh:
-Ukuran yang diperkirakan dari produk.
-Kemampuan untuk menterjemahkan ukuran ke satuan usaha, waktu dan anggaran.
-Kemampuan tim menyesuaikan dengan rencana proyek.
-Stabilitas kebutuhan dan lingkungan.

Download Materi Lengakap  Disini
Share on Google Plus

About Unknown

    Blogger Comment
    Facebook Comment

0 komentar:

Posting Komentar