Jumat, 15 April 2011

cocomo

Constructive Cost Model (COCOMO) adalah algoritma estimasi biaya perangkat lunak model yang dikembangkan oleh Barry Boehm. Model ini menggunakan rumus regresi dasar, dengan parameter yang berasal dari data historis dan karakteristik proyek proyek saat ini.

COCOMO pertama kali diterbitkan pada tahun 1981 Barry Boehm W. 's Book ekonomi Software engineering [1] sebagai model untuk memperkirakan usaha, biaya, dan jadwal untuk proyek-proyek perangkat lunak. Ini menarik pada studi dari 63 proyek di TRW Aerospace mana Barry Boehm adalah Direktur Riset dan Teknologi Perangkat Lunak pada tahun 1981. Penelitian ini memeriksa proyek-proyek ukuran mulai dari 2.000 sampai 100.000 baris kode, dan bahasa pemrograman mulai dari perakitan untuk PL / I. Proyek-proyek ini didasarkan pada model pengembangan perangkat lunak waterfall yang merupakan proses software umum pembangunan di tahun 1981.

Referensi untuk model ini biasanya menyebutnya COCOMO 81. Pada tahun 1997 COCOMO II telah dikembangkan dan akhirnya diterbitkan pada tahun 2000 dalam buku Estimasi Biaya COCOMO II Software dengan [2] COCOMO II. adalah penerus dari COCOMO 81 dan lebih cocok untuk mengestimasi proyek pengembangan perangkat lunak modern. Hal ini memberikan lebih banyak dukungan untuk proses pengembangan perangkat lunak modern, dan basis data proyek diperbarui. Kebutuhan model baru datang sebagai perangkat lunak teknologi pengembangan pindah dari batch processing mainframe dan malam untuk pengembangan desktop, usabilitas kode dan penggunaan komponen software off-the-rak. Artikel ini merujuk pada COCOMO 81.

COCOMO terdiri dari tiga bentuk hirarki semakin rinci dan akurat. Tingkat pertama, Basic COCOMO adalah baik untuk cepat, order awal, kasar estimasi besarnya biaya perangkat lunak, namun akurasinya terbatas karena kurangnya faktor untuk memperhitungkan perbedaan atribut proyek (Cost Drivers). Intermediate COCOMO mengambil Driver Biaya ini diperhitungkan dan Rincian tambahan COCOMO account untuk pengaruh fase proyek individu

Basic COCOMO

COCOMO dasar menghitung usaha pengembangan perangkat lunak (dan biaya) sebagai fungsi dari ukuran program. Ukuran program dinyatakan dalam ribuan estimasi baris kode (KLOC)

COCOMO berlaku untuk tiga kelas proyek perangkat lunak:

* Organik proyek - "kecil" tim dengan pengalaman "baik" bekerja dengan "kurang dari kaku" persyaratan
* Semi-terpisah proyek - "menengah" tim dengan pengalaman bekerja dicampur dengan campuran persyaratan kaku kaku dan kurang dari
* Embedded proyek - dikembangkan dalam satu set "ketat" kendala (hardware, software, operasional, ......)

Persamaan COCOMO dasar mengambil bentuk

Upaya Terapan (E) = ab (KLOC) bb [orang-bulan]
Pembangunan Waktu (D) = cb (Usaha Terapan) db [bulan]
Orang yang dibutuhkan (P) = Upaya Terapan / Pembangunan Waktu [count]

mana, KLOC adalah perkiraan jumlah baris disampaikan (dalam ribuan) kode untuk proyek, The koefisien ab, bb, cb, dan db diberikan dalam tabel berikut.
Proyek perangkat lunak ab bb cb db
Organik 2,4 1,05 2,5 0,38
Semi-terpisah 3,0 1,12 2,5 0,35
Embedded 3,6 1,20 2,5 0,32

Basic COCOMO baik untuk memperkirakan cepat biaya perangkat lunak. Namun tidak memperhitungkan perbedaan dalam kendala hardware, personil kualitas dan pengalaman, penggunaan alat-alat modern dan teknik, dan sebagainya.
[Sunting] Menengah COCOMOs

Intermediate COCOMO menghitung usaha pengembangan perangkat lunak sebagai fungsi ukuran program dan sekumpulan "cost drivers" yang mencakup penilaian subjektif produk, perangkat keras, personil dan atribut proyek. Ekstensi ini mempertimbangkan satu set empat "cost drivers", masing-masing dengan sejumlah atribut anak: -

* Atribut produk
o keandalan perangkat lunak yang disyaratkan
o Ukuran aplikasi database
o Kompleksitas produk
* Hardware atribut
o run-time kinerja kendala
o Memori kendala
o Volatilitas lingkungan mesin virtual
o Diperlukan waktu pembalikan haluan
* Personil atribut
o Analis kemampuan
o Rekayasa perangkat lunak kemampuan
Aplikasi o pengalaman
o Mesin Virtual pengalaman
o Bahasa pemrograman pengalaman
* Proyek atribut
o Penggunaan perangkat lunak
o Penerapan metode rekayasa perangkat lunak
o Pengembangan jadwal Diperlukan

Masing-masing dari 15 atribut menerima rating pada skala enam poin yang berkisar dari "sangat rendah" ke "ekstra tinggi" (dalam kepentingan atau nilai). Upaya multiplier dari tabel di bawah ini berlaku untuk rating. Produk dari semua hasil usaha pengali dalam faktor penyesuaian usaha (EAF). Nilai yang untuk rentang EAF 0,9-1,4.
Biaya Driver Rating
Sangat Rendah Rendah Sangat Tinggi Tinggi Nominal Extra Tinggi
Atribut produk
Perangkat lunak yang disyaratkan reliabilitas 0,75 0,88 1,00 1,15 1,40
Ukuran database aplikasi 0,94 1,00 1,08 1,16
Kompleksitas produk 0,70 0,85 1,00 1,15 1,30 1,65
Hardware atribut
Run-time kinerja kendala 1,00 1,11 1,30 1,66
Memori kendala 1,00 1,06 1,21 1,56
Volatilitas lingkungan mesin virtual 0,87 1,00 1,15 1,30
Pembalikan diperlukan waktu 0,87 1,00 1,07 1,15
Personil atribut
Analis kemampuan 1,46 1,19 1,00 0,86 0,71
Aplikasi pengalaman 1,29 1,13 1,00 0,91 0,82
Software engineer kemampuan 1,42 1,17 1,00 0,86 0,70
Mesin virtual pengalaman 1,21 1,10 1,00 0,90
Bahasa pemrograman pengalaman 1,14 1,07 1,00 0,95
Proyek atribut
Penerapan metode rekayasa perangkat lunak 1,24 1,10 1,00 0,91 0,82
Penggunaan perangkat lunak 1,24 1,10 1,00 0,91 0,83
Diperlukan jadwal pembangunan 1,23 1,08 1,00 1,04 1,10

Rumus Intermediate COCOMO sekarang mengambil bentuk:

E = ai (KLOC) (bi). EAF

dimana E adalah usaha diterapkan dalam orang-bulan, KLOC adalah perkiraan jumlah ribuan baris kode untuk melahirkan proyek, dan EAF adalah faktor dihitung di atas. The ai koefisien dan eksponen bi diberikan pada tabel berikutnya.

Proyek perangkat lunak ai bi
Organik 3,2 1,05
Semi-terpisah 3.0 1,12
Embedded 2.8 1.20

Pembangunan Waktu perhitungan D menggunakan E dengan cara yang sama seperti dalam COCOMO Dasar.
[Sunting] Detil COCOMO

Detil COCOMO - menggabungkan semua karakteristik versi intermediate dengan penilaian dampak cost driver di setiap langkah (analisis, desain, dll) dari proses rekayasa perangkat lunak 1. model rinci kegunaan yang berbeda upaya pengali untuk setiap driver biaya atribut Tahap pengganda ini upaya Sensitif masing-masing untuk menentukan jumlah usaha yang dibutuhkan untuk menyelesaikan setiap tahap.

Pada COCOMO rinci, upaya dihitung sebagai fungsi dari ukuran program dan satu set driver biaya yang diberikan sesuai dengan tiap tahap siklus hidup rekayasa perangkat lunak. Fase yang digunakan dalam COCOMO rinci perencanaan kebutuhan dan perancangan perangkat lunak, perancangan detil, kode dan menguji unit, dan pengujian integrasi.


sumber : http://en.wikipedia.org/wiki/COCOMO