Head Picture

Head Picture
...

Senin, 25 Juni 2012

COCOMO (Constructive Cost Model)

COCOMO adalah singkatan dari Constructive Cost Model yang merupakan sebuah kombinasi dari estimasi parameter persamaan dan metode pembobotan. Merupakan model algoritma estimasi biaya perangkat lunak yang dikembangkan oleh Barry Boehm pada tahun 1981 menggunakan dasar regresi formula, dengan parameter yang berasal dari data historis dan karakteristik proyek-proyek saat ini.
SOURCE LINE OF CODE
  • Perhitungan COCOMO didasarkan pada estimasi anda pada ukuran proyek dalam Source Line Of Code (SLOC). Pendefinisian SLOC:
  • Hanya jumlah baris kode yang dikirim sebagai bagian dari produk yang disertakan (test drivers dan software pendukung lainnya tidak dihitung).
  • Baris kode dibuat oleh staf proyek (kode yang di-generate oleh aplikasi tidak dihitung).
  • Satu SLOC adalah satu baris kode secara logis.
  • Deklarasi dihitung sebagai SLOC.
  • Komentar tidak dihitung sebagai SLOC.
Model COCOMO 81 didefinisikan dalam bentuk Delivered Source Instruction, yang mana sangat menyerupai SLOC. Perbedaan utama antara DSI dan SLOC adalah sebuah SLOC mungkin merupakan beberapa baris secara fisik. Sebagai contoh, sebuah statement “if-then-else” akan dihitung sebagai satu SLOC, tetapi mungkin dihitung sebagai beberapa DSI.

SCALE DRIVERS
Pada model COCOMO II, beberapa factor terpenting yang berkontribusi pada durasi proyek dan biaya yang dikeluarkan adalah Scale Drivers. Anda mengeset setiap Scale Driver untuk mendeskripsikan proyek anda. Scale Drivers tersebut menentukan eksponen yang digunakan dalam Effort Equation.
Ada 5 Scale Drivers :
  • Precedentedness
  • Development Flexibility
  • Architecture / Risk Resolution
  • Team Cohesion
  • Process Maturity
Catat bahwa Scale Drivers telah menggantikan Development Mode dari COCOMO 81. Dua Scale Drivers yang pertama, Precedentedness dan Development Flexibility sebenamya mendeskripsikan pengaruh yang hampir sama dibanding Development Mode.

COST DRIVERS
COCOMO II memiliki 17 cost drivers. Cost driver tersebut adalah factor pengali yang menentukan usaha yang diperlukan untuk menyelesaikan proyek software anda. Sebagai contoh, jika proyek anda akan mengembangkan software yang mengatur penerbangan pesawat, anda akan mengeset Required Software Reliability (RELY) cost driver menjadi sangat tinggi. Rating tersebut berhubungan dengan effort multiplier 1,26 yang berarti bahwa proyek anda akan membutuhkan usaha lebih sebesar 26% dibanding proyek software pada umumnya. COCOMO II mendefinisikan setiap cost drivers dan effort multiplier yang terhubung dengan setiap rating.

Dalam perkembangannya, COCOMO memiliki 3 jenis implementasi, yaitu :
1. Basic COCOMO (COCOMO I 1981)
Menghitung dari estimasi jumlah LOC (Lines of Code). Pengenalan COCOMO ini diawali di akhir tahun 70-an. Sang pelopor, Boehm, melakukan riset dengan mengambil kasus dari 63 proyek perangkat lunak untuk membuat model matematisnya. Model dasar dari model ini adalah sebuah persamaan sebagai berikut :
effort = C * size^M
ket :
effort    =            usaha yang dibutuhkan selama proyek, diukur dalam person-months;
c dan M =            konstanta-konstanta yang dihasilkan dalam riset Boehm dan tergantung pada                                                    penggolongan besarnya proyek perangkat lunak
size         =             estimasi jumlah baris kode yang dibutuhkan untuk implementasi, dalam satuan KLOC                                    (kilo lines of code).
2. Intermediate COCOMO (COCOMO II 1999)
Menghitung dari besarnya program dan cost drivers (faktor-faktor yang berpengaruh langsung kepada proyek), seperti: perangkat keras, personal, dan atribut-atribut proyek lainnya. Selain itu pada jenis ini, COCOMO mempergunakan data-data historis dari proyek-proyek yang pernah menggunakan COCOMO I, dan terdaftar pengelolaan proyeknya dalam COCOMO database. yang dijabarkan dalam kategori dan sub-kategori sebagai berikut :
a. Atribut produk (product attributes) :
1. Reliabilitas perangkat lunak yang diperlukan (RELY)
2. Ukuran basis data aplikasi (DATA)
3. Kompleksitas produk (CPLX)
b. 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)
c. 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)
d. Atribut proyek (project attributes)
1. Penggunaan sistem pemrograman modern(MODP)
2. Penggunaan perangkat lunak (TOOL)
3. Jadwal pengembangan yang diperlukan (SCED)
3. Advance COCOMO
Memperhitungkan semua karakteristik dari intermediate di atas dan cost drivers dari setiap fase (analisis, desain, implementasi, dsb) dalam siklus hidup pengembangan perangkat lunak. Model rinci kegunaan yang berbeda upaya pengali untuk setiap driver biaya atribut tersebut. Sensitif pengganda tahap upaya 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.

Referensi :




Tidak ada komentar:

Posting Komentar