Jumat, 15 April 2011

Cocomo

COCOMO adalah sebuah model yang didesain oleh Barry Boehm untuk memperoleh perkiraan dari jumlah orang-bulan yang diperlukan untuk mengembangkan suatu produk perangkat lunak. Satu hasil observasi yang paling penting dalam model ini adalah bahwa motivasi dari tiap orang yang terlibat ditempatkan sebagai titik berat. Hal ini menunjukkan bahwa kepemimpinan dan kerja sama tim merupakan sesuatu yang penting, namun demikian poin pada bagian ini sering diabaikan.

1. Model COCOMO Dasar

Model COCOMO dapat diaplikasikan dalam tiga tingkatan kelas:

  1. Proyek organik (organic mode) Adalah proyek dengan ukuran relatif kecil, dengan anggota tim yang sudah berpengalaman, dan mampu bekerja pada permintaan yang relatif fleksibel.
  2. Proyek sedang (semi-detached mode)Merupakan proyek yang memiliki ukuran dan tingkat kerumitan yang sedang, dan tiap anggota tim memiliki tingkat keahlian yang berbeda
  3. Proyek terintegrasi (embedded mode)Proyek yang dibangun dengan spesifikasi dan operasi yang ketat

Model COCOMO dasar ditunjukkan dalam persamaan 1, 2, dan 3 berikut ini:

c1.jpg (1, 2, 3)

Dimana :

  • E : besarnya usaha (orang-bulan)
  • D : lama waktu pengerjaan (bulan)
  • KLOC : estimasi jumlah baris kode (ribuan)
  • P : jumlah orang yang diperlukan.

Sedangkan koefisien ab, bb, cb, dan db diberikan pada Tabel 1 berikut:

Tabel 1 . Koefisien Model COCOMO Dasar

untitled.jpg

2. Model COCOMO Lanjut (Intermediate COCOMO)

Pengembangan model COCOMO adalah dengan menambahkan atribut yang dapat menentukan jumlah biaya dan tenaga dalam pengembangan perangkat lunak, yang dijabarkan dalam kategori dan subkatagori sebagai berikut:

1. Atribut produk (product attributes)

  1. Reliabilitas perangkat lunak yang diperlukan (RELY)
  2. Ukuran basis data aplikasi (DATA)
  3. Kompleksitas produk (CPLX)

2. Atribut perangkat keras (computer attributes)

  1. Waktu eksekusi program ketika dijalankan (TIME)
  2. Memori yang dipakai (STOR)
  3. Kecepatan mesin virtual (VIRT)
  4. Waktu yang diperlukan untuk mengeksekusi perintah (TURN)

3. Atribut sumber daya manusia (personnel attributes)

  1. Kemampuan analisis (ACAP)
  2. Kemampuan ahli perangkat lunak (PCAP)
  3. Pengalaman membuat aplikasi (AEXP)
  4. Pengalaman penggunaan mesin virtual (VEXP)
  5. Pengalaman dalam menggunakan bahasa pemrograman (LEXP)

4. Atribut proyek (project attributes)

  1. Penggunaan sistem pemrograman modern(MODP)
  2. Penggunaan perangkat lunak (TOOL)
  3. Jadwal pengembangan yang diperlukan (SCED)

Masing-masing subkatagori diberi bobot seperti dalam tabel 2 dan kemudian dikalikan.

c3.jpg

Dari pengembangan ini diperoleh persamaan:

c4.jpg (4)

Dimana :

  • E : besarnya usaha (orang-bulan)
  • KLOC : estimasi jumlah baris kode (ribuan)
  • EAF : faktor hasil penghitungan dari sub-katagori di atas.

Koefisien ai dan eksponen bi diberikan pada tabel berikut.

Tabel 3. Koefisien Model COCOMO Lanjut

c5.jpg

2.1 Persamaan Perangkat Lunak

Persamaan perangkat lunak merupakan model variabel jamak yang menghitung suatu distribusi spesifik dari usaha pada jalannya pengembangan perangkat lunak. Persamaan berikut ini diperoleh dari hasil pengamatan terhadap lebih dari 4000 proyek perangkat lunak :

c6.jpg (5)

Dimana :

  • E = usaha yang dilakukan (orang-bulan atau orang-tahun)
  • t = durasi proyek dalam (bulan atau tahun)
  • B = faktor kemampuan khusus
  • P = parameter produktivitas

Nilai B diambil berdasarkan perkiraan. Untuk program berukuran kecil (0.5 < KLOC < 5), B = 0.16. Untuk program yang lebih besar dari 70 KLOC, B = 0.39.

Sedangkan besarnya nilai P merefleksikan:

  1. Kematangan proses dan praktek manajemen
  2. Kualitas rekayasa perangkat lunak
  3. Tingkat bahasa pemrograman yang digunakan
  4. Keadaan lingkungan perangkat lunak
  5. Kemampuan dan pengalaman tim pengembang
  6. Kompleksitas aplikasi

Berdasarkan teori, diperoleh P = 2000 untuk sistem terapan, P = 10000 untuk perangkat lunak pada sistem informasi dan sistem telekomunikasi, dan P = 28000 untuk sistem aplikasi bisnis.

2.2 Konversi Waktu Tenaga Kerja

Konversi waktu tenaga kerja ini diperoleh dari angka pembanding yang digunakan pada perangkat lunak ConvertAll, dengan hubungan persamaan antara orang-bulan (OB), orang-jam (OJ), orang-minggu (OM), dan orang-tahun (OT) adalah sebagai berikut :

OM = 40 OJ (6)

OT = 12 OB (7)

OT = 52 OM (8)

Dari persamaan di atas, diperoleh konversi orang-bulan ke orang-jam sebagai berikut :

OB = (40 OJ x 52) / 12

OB = 173,33 OJ (9)

3. Model COCOMO II

Model COCOMO II, pada awal desainnya terdiri dari 7 bobot pengali yang relevan dan kemudian menjadi 16 yang dapat digunakan pada arsitektur terbarunya.

Tabel 4. COCOMO II Early Design Effort Multipliers

c7.jpg

Tabel 5. COCOMO II Post Architecture Effort Multipliers

c8.jpg

Sama seperti COCOMO Intermediate (COCOMO81), masing-masing sub katagori bisa digunakan untuk aplikasi tertentu pada kondisi very low, low, manual, nominal, high maupun very high. Masing-masing kondisi memiliki nilai bobot tertentu. Nilai yang lebih besar dari 1 menunjukkan usaha pengembangan yang meningkat, sedangkan nilai di bawah 1 menyebabkan usaha yang menurun. Kondisi Laju nominal (1) berarti bobot pengali tidak berpengaruh pada estimasi. Maksud dari bobot yang digunakan dalam COCOMO II, harus dimasukkan dan direfisikan di kemudian hari sebagai detail dari proyek aktual yang ditambahkan dalam database.


Sumber : http://yayuk05.wordpress.com/2007/11/09/constructive-cost-model-cocomo/

free counters