Tiga teknik yang digunakan untuk melakukan estimasi, yaitu :
1. Keputusan Profesional
Adalah orang yang memiliki pengalaman yang luas dalam membuat program “report generation modules”, untuk merancang report dan memperkirakan berapa lama waktu yang dibutuhkan untuk membuat program. Atau orang yang setelah mempelajari rancangan program selama 5 menit, kemudian menutup matanya selama 5 menit (dia tidak tidur, tetapi berhitung), dan mengatakan “15 hari”.
Keuntungan dari teknik ini adalah cepat , dan jika seseorang sudah ahli dalam teknik ini, maka estimasinya pasti akan lebih akurat. Sedangkan kerugian dari teknik ini adalah bahwa anda membutuhkan seorang ahli yang berpengalaman dalam bidang ini, dan beberapa ahli tersebut akan bekerja keras untuk mendapatkan estimasi yang tepat.
2. Sejarah
Menuliskan jalan keluar dari ketergantungan pada orang dan untuk membuat estimasi lebih khusus sehingga dapat menjabarkan suatu proyek ke dalam beberapa tugas yang biasanya diulang dan mudah untuk dibandingkan.
3. Rumus-rumus
Ada beberapa rumus yang digunakan dalam software estimasi. Software yang baik untuk diketahui adalah COCOMO (Referensi 15). COCOMO dapat digunakan untuk memperkirakan biaya proyek, usaha (person months), jadwal, dan jumlah staf untuk masing-masing fase berikut ini :
a. Preliminary Design - our Analysis Phase
b. Detailed Design (DD) - our Design Phase
c. Code and Unit Tes (CUT) - same as ours
d. System Test - our System Test and Acceptance Phase.
Minggu, 05 Juni 2011
keuntungan membangun software menggunakan protipe dan langkah-langkah yang harus diperhatikan jika kita membangun prototipe
I. PENDAHULUAN
Prototype merupakan metodologi pengembangan software yang menitik-beratkan pada pendekatan aspek desain, fungsi dan user-interface. Developer dan user fokus pada user-interface dan bersama-sama mendefinisikan spesifikasi, fungsi, desain dan bagaimana software bekerja. Developer dan user bertemu dan melakukan komunikasi dan menentukan tujuan umum, kebutuhan yang diketahui dan gambaran bagian-bagian yang akan dibutuhkan. Developer mengumpulkan detail dari kebutuhan dan memberikan suatu gambaran dengan cetak biru (prototype).
Dari proses tersebut akan diketahui detail-detail yang harus dikembangkan atau ditambahkan oleh developer terhadap cetak biru, atau menghapus detail-detail yang tidak diperlukan oleh user. Proses akan terjadi terus menerus sehingga produk sesuai dengan keinginan dari user.
Tujuan utama dari prototype [Thompson, Wishbow - 1992] adalah :
* Proses revisi dan pengujian terhadap produk dilakukan secara terus menerus, sehingga didapatkan produk yang sesuai dengan yang diinginkan oleh user. Proses testing dan revisi dapat dilakukan baik secara keseluruhan maupun partial pada bagian dari produk.
* Proses pengujian harus memiliki perbandingan baku (benchmark) sehingga menghasilkan produk yang secara empiris sehinga menghindari kegagalan produk atau terjadi perbedaan persepsi antara developer atau user.
* Dengan proses testing dan komunikasi yang terus menerus antara user dan developer diharapkan dihasilkan produk yang user-friendly.
II. METODOLOGI
[Purtilo, Larson, Clark-1991] mengambarkan proses-proses pada model prototype sebagai berikut:
1. Identifikasi objek, definisi dari masalah yang harus dipecahkan dinyatakan secara bersama-sama dengan memberikan ukuran-ukuran yang pasti terhadap batasan kesuksesan dari produk yang digunakan sebagai benchmark.
2. Identifikasi resiko, tidak ada pengembangan produk yang bersih dan mampu menghasilkan produk yang berstatus “Tidak ada Masalah”, selalu terdapat area abu-abu yang memberikan resiko terhadap pengembangan produk. Perjelas dan pertegas batasan dan permasalahan pada area tersebut.
3. Merumuskan hipotesa prototype, setelah resiko dinyatakan pengembang mendesain secara terperinci sebuah prototype yang menggambarkan keseluruhan sistem dan resiko-resiko yang mungkin berpengaruh pada sistem. Prototype juga memberikan potensi terhadap perbaikan-perbaikan terhadap produk.
4. Membangun perancangan prototype, perancangan prototype berdasarkan hipotesa kedalam produk prototype. Tujuan yang utama dari membangun suatu prototipe adalah untuk menjawab satu atau lebih pertanyaan mengenai karakteristik fungsional dari produk .
5. Eksperimental, prototipe harus dicoba-coba untuk menentukan perilakunya dan mengumpulkan keluaran dari instrumentasi sistem sehingga didapat produk yang sesuai dengan keinginan user.
6. Evaluasi, Hasil dari eksperimen harus dievaluasi untuk menilai kebenaran dan efisiensi prototype.
7. Proses yang berulang-ulang, proses yang keseluruhan diulangi sampai salah satu dari tiga hasil dicapai:
* Didapat informasi yang cukup dari prototype sehingga dapat dimulainya proses pengembangan produk.
* Untuk beberapa masalah yang tidak terpecahkan telah dapat ditemukan solusi yang lebih mudah atau setara dengan tetap memperhatikan cost dan manfaat.
* Didapat prototype yang memiliki mutu yang sesuai dengan spesifikasi produk yang ingin dibuat sehingga proses pembuatan produk dapat dilakukan dengan menggunakan prototype yang ada.
III. KETERGANTUNGAN TERHADAP USER
User atau pengguna merupakan bagian terpenting pada prototype. Karena user merupakan komponen yang menentukan apakah prototype telah memenuhi spesifikasi untuk dikembangkan sebagai produk.
[Harker -1993] memaparkan tentang permasalahan yang terjadi pada metodologi prototype :
* User yang tidak memiliki spesialisasi dalam pembuatan dan perancangan sistem akan memberikan input yang akan mempersulit pembuatan prototype.
* Prototype yang dikembangkan secara tim memerlukan kepastian dapat menangani keinginan user terutama dilevel manajemen.
* Perancangan prototype akan tidak relevan dan menyulitkan jika pada lever user terjadi perubahan struktur organisasi yang cenderung lebih besar pengaruhnya dinding perubahan secara teknis
IV. TIPE-TIPE PROTOTYPE
Terdapat 3 (tiga) tipe dari metodologi prototype [Sommerville, 1995]:
* Throwaway Prototypes
Model Throwaway Prototypes mengunakan prototype sebagai tool atau perangkat untuk melakukan analisa terhadap user-interface dan kebutuhan fungsional dari produk yang ingin dibuat. ketika prototype dievaluasi dan spesifikasi dibaharui, prototype dibuang dan proses pengembangan dimulai kembali.
* Evolutionary Prototypes
Evalusi prototype didasarkan pada pengembangan produk dengan melakukan peningkatan pada detail-detail yang dianggap perlu diperbaharui. Proses akan dilakukan secara terus menerus dalam satu produk dan dilakukan hingga didapat produk yang sesuai dengan keinginan dari user.
* Incremental Development
Metodologi ini masing-masing dievaluasi berdasarkan bagian-bagian secara partial jika terjadi perubahan akan dilakukan secara partial juga. Setelah didapatkan potongan-potongan produk yang sesuai, maka disatukan untuk mendapatkan produk yang sesuai dengan keinginan user.
V. KEUNTUNGAN
Keuntungan dari metodologi prototype adalah [Sommerville, 1995] :
* Kegagalan dalam mendefinisikan masalah antara user dan developer dapat dikenali dari awal.
* Kesulitan user-interface dan pemakaian dapat dikenali dari awal
* Manajemen telah melihat gambaran secara riil tentang produk yang dibuat dengan melihat prototype dari produk.
* Prototype dapat disebut juga sebagai bagian dari training penggunaan produk, sehingga user telah mengenal produk dari prototype.
* Proses testing dan perbaikan dapat dilakukan secara terus menerus sehingga mengurangi tingkat kegagalan produk.
* Prototype lebih mengedepankan pada requirement sehingga mampu menghasilkan produk yang berkualitas dan sesuai dengan keinginan dari user.
Prototype merupakan metodologi pengembangan software yang menitik-beratkan pada pendekatan aspek desain, fungsi dan user-interface. Developer dan user fokus pada user-interface dan bersama-sama mendefinisikan spesifikasi, fungsi, desain dan bagaimana software bekerja. Developer dan user bertemu dan melakukan komunikasi dan menentukan tujuan umum, kebutuhan yang diketahui dan gambaran bagian-bagian yang akan dibutuhkan. Developer mengumpulkan detail dari kebutuhan dan memberikan suatu gambaran dengan cetak biru (prototype).
Dari proses tersebut akan diketahui detail-detail yang harus dikembangkan atau ditambahkan oleh developer terhadap cetak biru, atau menghapus detail-detail yang tidak diperlukan oleh user. Proses akan terjadi terus menerus sehingga produk sesuai dengan keinginan dari user.
Tujuan utama dari prototype [Thompson, Wishbow - 1992] adalah :
* Proses revisi dan pengujian terhadap produk dilakukan secara terus menerus, sehingga didapatkan produk yang sesuai dengan yang diinginkan oleh user. Proses testing dan revisi dapat dilakukan baik secara keseluruhan maupun partial pada bagian dari produk.
* Proses pengujian harus memiliki perbandingan baku (benchmark) sehingga menghasilkan produk yang secara empiris sehinga menghindari kegagalan produk atau terjadi perbedaan persepsi antara developer atau user.
* Dengan proses testing dan komunikasi yang terus menerus antara user dan developer diharapkan dihasilkan produk yang user-friendly.
II. METODOLOGI
[Purtilo, Larson, Clark-1991] mengambarkan proses-proses pada model prototype sebagai berikut:
1. Identifikasi objek, definisi dari masalah yang harus dipecahkan dinyatakan secara bersama-sama dengan memberikan ukuran-ukuran yang pasti terhadap batasan kesuksesan dari produk yang digunakan sebagai benchmark.
2. Identifikasi resiko, tidak ada pengembangan produk yang bersih dan mampu menghasilkan produk yang berstatus “Tidak ada Masalah”, selalu terdapat area abu-abu yang memberikan resiko terhadap pengembangan produk. Perjelas dan pertegas batasan dan permasalahan pada area tersebut.
3. Merumuskan hipotesa prototype, setelah resiko dinyatakan pengembang mendesain secara terperinci sebuah prototype yang menggambarkan keseluruhan sistem dan resiko-resiko yang mungkin berpengaruh pada sistem. Prototype juga memberikan potensi terhadap perbaikan-perbaikan terhadap produk.
4. Membangun perancangan prototype, perancangan prototype berdasarkan hipotesa kedalam produk prototype. Tujuan yang utama dari membangun suatu prototipe adalah untuk menjawab satu atau lebih pertanyaan mengenai karakteristik fungsional dari produk .
5. Eksperimental, prototipe harus dicoba-coba untuk menentukan perilakunya dan mengumpulkan keluaran dari instrumentasi sistem sehingga didapat produk yang sesuai dengan keinginan user.
6. Evaluasi, Hasil dari eksperimen harus dievaluasi untuk menilai kebenaran dan efisiensi prototype.
7. Proses yang berulang-ulang, proses yang keseluruhan diulangi sampai salah satu dari tiga hasil dicapai:
* Didapat informasi yang cukup dari prototype sehingga dapat dimulainya proses pengembangan produk.
* Untuk beberapa masalah yang tidak terpecahkan telah dapat ditemukan solusi yang lebih mudah atau setara dengan tetap memperhatikan cost dan manfaat.
* Didapat prototype yang memiliki mutu yang sesuai dengan spesifikasi produk yang ingin dibuat sehingga proses pembuatan produk dapat dilakukan dengan menggunakan prototype yang ada.
III. KETERGANTUNGAN TERHADAP USER
User atau pengguna merupakan bagian terpenting pada prototype. Karena user merupakan komponen yang menentukan apakah prototype telah memenuhi spesifikasi untuk dikembangkan sebagai produk.
[Harker -1993] memaparkan tentang permasalahan yang terjadi pada metodologi prototype :
* User yang tidak memiliki spesialisasi dalam pembuatan dan perancangan sistem akan memberikan input yang akan mempersulit pembuatan prototype.
* Prototype yang dikembangkan secara tim memerlukan kepastian dapat menangani keinginan user terutama dilevel manajemen.
* Perancangan prototype akan tidak relevan dan menyulitkan jika pada lever user terjadi perubahan struktur organisasi yang cenderung lebih besar pengaruhnya dinding perubahan secara teknis
IV. TIPE-TIPE PROTOTYPE
Terdapat 3 (tiga) tipe dari metodologi prototype [Sommerville, 1995]:
* Throwaway Prototypes
Model Throwaway Prototypes mengunakan prototype sebagai tool atau perangkat untuk melakukan analisa terhadap user-interface dan kebutuhan fungsional dari produk yang ingin dibuat. ketika prototype dievaluasi dan spesifikasi dibaharui, prototype dibuang dan proses pengembangan dimulai kembali.
* Evolutionary Prototypes
Evalusi prototype didasarkan pada pengembangan produk dengan melakukan peningkatan pada detail-detail yang dianggap perlu diperbaharui. Proses akan dilakukan secara terus menerus dalam satu produk dan dilakukan hingga didapat produk yang sesuai dengan keinginan dari user.
* Incremental Development
Metodologi ini masing-masing dievaluasi berdasarkan bagian-bagian secara partial jika terjadi perubahan akan dilakukan secara partial juga. Setelah didapatkan potongan-potongan produk yang sesuai, maka disatukan untuk mendapatkan produk yang sesuai dengan keinginan user.
V. KEUNTUNGAN
Keuntungan dari metodologi prototype adalah [Sommerville, 1995] :
* Kegagalan dalam mendefinisikan masalah antara user dan developer dapat dikenali dari awal.
* Kesulitan user-interface dan pemakaian dapat dikenali dari awal
* Manajemen telah melihat gambaran secara riil tentang produk yang dibuat dengan melihat prototype dari produk.
* Prototype dapat disebut juga sebagai bagian dari training penggunaan produk, sehingga user telah mengenal produk dari prototype.
* Proses testing dan perbaikan dapat dilakukan secara terus menerus sehingga mengurangi tingkat kegagalan produk.
* Prototype lebih mengedepankan pada requirement sehingga mampu menghasilkan produk yang berkualitas dan sesuai dengan keinginan dari user.
Langganan:
Postingan (Atom)