Pengertian COCOMO
COCOMO merupakan singkatan dari Constructive Cost Model yaitu algortima
model estimasi biaya perangkat lunak yang dikembangkan dan diterbitkan
oleh Barry Boehm. Cocomo merupakan sebuah model – model untuk
memperkirakan usaha, biaya dan jadwal untuk proyek-proyek perangkat
lunak.
Model estimasi COCOMO telah digunakan oleh ribuan project manager suatu
proyek perangkat lunak, dan berdasarkan pengalaman dari ratusan proyek
sebelumnya. Tidak seperti model estimasi biaya yang lain, COCOMO adalah
model terbuka, sehingga semua detail dipublikasikan, termasuk :
• Dasar persamaan perkiraan biaya.
• Setiap asumsi yang dibuat dalam model.
• Setiap definisi.
• Biaya yang disertakan dalam perkiraan dinyatakan secara eksplisit
Sejarah COCOMO
COCOMO pertama kali diterbitkan pada tahun 1981 Barry Boehm W. ‘s Book
rekayasa ekonomi Perangkat Lunak 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 waterfall pengembangan
perangkat lunak yang merupakan pengembangan software proses lazim pada
tahun 1981. Referensi pada model ini dikenal dengan nama COCOMO 81.
Pada tahun 1990, muncul suatu model estimasi baru yang disebut dengan
COCOMO II. Secara umum referensi COCOMO sebelum 1995 merujuk pada
original COCOMO model yaitu COCOMO 81, setelah itu merujuk pada COCOMO
II.
COCOMO II diset sebagai siklus hidup software modern. Orgininal COCOMO
model sudah sangat berhasil, tetapi tidak sesuai dengan praktek
pengembangan software yang lebih baru sebagaimana dengan software
tradisional. COCOMO II menargetkan proyek software pada tahun 1990an
sampai 2000an dan akan terus berkembang dalam beberapa tahun ke depan.
Jenis Implementasi COCOMO
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 II 1999)
Menghitung dari besarnya program dan “cost drivers”
(faktor-faktor yangberpengaruh langsung kepada proyek), seperti:
perangkat keras, personal, danatribut-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)
Model-model COCOMO II adalah :
COCOMO II EFFORT EQUATION
Model COCOMO II ini membuat estimasi dari usaha yang dibutuhkan (diukur
dari Person-Month) berdasarkan keutamaan dalam estimasi anda akan ukuran
proyek perangkat lunak (yang diukur dalam ribuan SLOC atau KSLOC) :
Effort = 2,94 * EAF * (KSLOC)E
ket:
EAF = Effort Adjustment Factor yang berasal dari Cost Drivers adalah
produk dari effort multipliers yang terhubung pada masing-masing cost
drivers untuk proyek.
E = Eksponen yang berasal dari Scale Drivers.
COCOMO II SCHEDULE EQUATION
COCOMO II Schedule Equation memprediksi jumlah bulan yang dibutuhkan
untuk menyelesaikan proyek perangkat lunak anda. Durasi dari proyek
berdasarkan pada usaha yang diprediksi oleh effort equation :
Duration = 3,67 * (Effort)SE
Dimana :
Effort = usaha dari COCOMO II effort equation.
SE = eksponen scheduled equation yang berasal dari Scale Drivers.
COCOMO II memiliki 3 model berbeda, yakni:
a) The Application Composition Model
Sesuai untuk pembangunan proyek dengan tools GUI-builder yang modern. Berdasar pada Object Points baru.
b) The Early Design Model
Model ini dapat digunakan untuk mendapat estimasi kasar biaya dan durasi
dari suatu proyek sebelum menentukan arsitektur keseluruhan proyek
tersebut. Model ini menggunakan sekumpulan kecil cost driver baru dan
persamaan estimasi baru. Berdasar pada Unadjusted Function Points atau
KSLOC.
c) The Post-Architecture Model
Ini adalah model COCOMO II yang paling detail. Digunakannya setelah
membentuk arsitektur proyek secara menyeluruh. Model ini memiliki cost
driver baru, aturan penghitungan baris yang baru, dan persamaan baru.
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.
COCOMO berlaku untuk tiga kelas proyek perangkat lunak:
• Organik proyek : “kecil” tim dengan pengalaman “baik” bekerja dengan “kurang dari kaku” persyaratan.
• Semi-terpisah proyek : “sedang” tim dengan pengalaman bekerja dicampur dengan campuran persyaratan kaku kaku dan kurang dari.
• Embedded proyek : dikembangkan dalam satu set “ketat” kendala (hardware, software, operasional).COCOMO terdapat tiga macam pengimplementasian dalam evolusinya sejak dari awal kejadiannya hingga kini, yaitu:
- Basic (COCOMO I 1981)
Menghitung dari estimasi jumlah LOC (Lines of Code);
- Intermediate (COCOMO II 1999)
-
Menghitung dari besarnya program dan “cost drivers” (faktor-faktor yang
berpengaruh langsung kepada proyek), seperti: perangkat keras,
personal, danatribut-atribut proyek lainnya;
- Mempergunakan
data-data historis dari proyek-proyek yang pernah menggunakan COCOMO I,
dan terdaftar pengelolaan proyeknya dalam COCOMO database.
- Advanced
Memperhitungkan
semua karakteristik dari “intermediate” di atas dan “cost drivers” dari
setiap fase (analisis, desain, implementasi, dsb) dalam siklus hidup
pengembangan perangkat lunak.
Model COCOMO dapat diaplikasikan dalam tiga tingkatan kelas:
1.
Proyek organik, adalah proyek dengan ukuran relatif kecil, dengan
anggota tim yang sudah berpengalaman, dan mampu bekerja pada permintaan
yang relatif fleksibel.
2. Proyek sedang (semi-terpisah), adalah
proyek yang memiliki ukuran dan tingkat kerumitan yang sedang, dan tiap
anggota tim memiliki tingkat keahlian yang berbeda.
3. Proyek terintegrasi, adalah proyek yang dibangun dengan spesifikasi dan operasi yang ketat.
Pengenalan
Cocomo ini diawali tahun 70-an akhir. Sang pelopor Boehm, melakukan
riset dengan mengambil kasus dari 63 proyek perangkat lunak untuk
membuat model matematisnya.Model dasar dari model ini adalah persamaan:
effort = C x sizeM
Dikenal sebagai Constructive Cost Model (COCOMO), model konstruksi biaya.
Dimana :
C
dan M adalah koefisien konstanta ( > 1 ), targantung pada tipe
proyek dan organisasi, dengan cara melihat Tabel Konstanta (sudah
tersedia dari penelitian).
Ditentukan pula oleh: application
experience, leadership capability, new environment and tools,
requirements uncertainty, software reuse.
Persamaan dasar model COCOMO adalah:
E = ab (KLOC)b
b
D = cb (E)d
b
P = E / D
Dimana
E adalah usaha dalam orang-bulan, D adalah waktu pengerjaan dalam
satuan bulan, KLOC adalah estimasi jumlah baris kode dalam ribuan, dan P
adalah jumlah orang yang diperlukan. Koefisien ab, bb, cb, dan db
diberikan pada tabel berikut:
Penggolongan suatu proyek
perangkat lunak didasarkan pada sistem aplikasi dimana perangkat lunak
tersebut dikembangkan dan lingkungan pendukungnya. Penggolongan ini
terbagi atas:
- Organic mode : digunakan pada proyek-proyek kecil
dengan sedikit pekerja dandikembangkan pada lingkungan yang tidak
memerlukan program antar-muka (interface)yang kompleks, contoh:
pembuatan situs mandiri untuk perusahaan;
- Embedded mode : mode
ini merupakan kombinasi antara dua mode di atas dan
memilikikarekteristik gabungan antara keduanya. Proyek mode ini
dikembangkan ke dalamserangkaian perangkat keras, lunak dan batasan
operasional yang ketat, contoh: aplikasipengontrolan penerbangan pada
pesawat terban.
Pengembangan model COCOMO adalah dengan
menambahkan atribut yang dapat menentukan jumlah biaya dan tenaga dalam
pengembangan perangkat lunak, yang dijabarkan dalam kategori dan
subkategori sebagai berikut:
1. Atribut produk
a. Reliabilitas perangkat lunak yang diperlukan
b. Ukuran basis data aplikasi
c. Kompleksitas produk
2. Atribut perangkat keras
a. Performa program ketika dijalankan
b. Memori yang dipakai
c. Stabilitas mesin virtual
d. Waktu yang diperlukan untuk mengeksekusi perintah
3. Atribut Sumber Daya Manusia
a. Kemampuan analisis
b. Kemampuan ahli perangkat lunak
c. Pengalaman membuat aplikasi
d. Pengalaman menggunakan mesin virtual
e. Pengalaman dalam menggunakan bahasa pemrograman
4. Atribut proyek
a. Menggunakan perangkat lunak tambahan
b. Metode rekayasa perangkat lunak
c. Waktu yang diperlukan
Sumber :
- haryanto.staff.gunadarma.ac.id/Downloads/files/.../COCOMO.ppt
- http://www.scribd.com/doc/49646935/COCOMO
- http://www.dashboardcafe.com/index.php?option=com_content&view=category&layout=blog&id=1&Itemid=50&limitstart=12
-http://wartawarga.gunadarma.ac.id/2012/03/cocomo-9/
-http://singlesmilesoup.blogspot.com/2012/04/cocomo.html
Tidak ada komentar:
Posting Komentar