This is the blog of Merry Sarlita . This simple blog aims to share information . Thank you for visiting this blog. GBU always...
RSS

Jumat, 30 Maret 2012

COCOMO

SEJARAH SINGKAT COCOMO

COCOMO pertama kali diterbitkan pada tahun 1981 Barry Boehm W. 's Book ekonomi Software engineering 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 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 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.


PENGERTIAN COCOMO

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.


MODEL JENIS COCOMO

Ada tiga model cocomo, yaitu :

1. Dasar Cocomo

Dengan menggunakan estimasi parameter persamaan (dibedakan menurut tipe sistem yang berbeda) upaya pengembangan dan pembangunan durasi dihitung berdasarkan perkiraan DSI. Dengan rincian untuk fase ini diwujudkan dalam persentase. Dalam hubungan ini dibedakan menurut tipe sistem (organik-batch, sebagian bersambung-on-line,embedded-real-time) dan ukuran proyek (kecil, menengah, sedang, besar, sangat besar).


Model COCOMO dapat diaplikasikan dalam tiga tingkatan kelas :

a. Proyek organik (organic mode) Adalah proyek dengan ukuran relatif kecil, dengan anggota tim yang sudah berpengalaman, dan mampu bekerja pada permintaan yang relatif fleksibel.

b. Proyek sedang (semi-detached mode)Merupakan proyek yang memiliki ukuran dan tingkat kerumitan yang sedang, dan tiap anggota tim memiliki tingkat keahlian yang berbeda

c. 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:

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


2. Intermediate Cocomo

Persamaan estimasi sekarang mempertimbangkan (terlepas dari DSI) 15 pengaruh faktor-faktor; ini adalah atribut produk (seperti kehandalan perangkat lunak, ukuran database, kompleksitas), komputer atribut-atribut (seperti pembatasan waktu komputasi, pembatasan memori utama), personil atribut ( seperti aplikasi pemrograman dan pengalaman, pengetahuan tentang bahasa pemrograman), dan proyek atribut (seperti lingkungan pengembangan perangkat lunak,tekanan waktu pengembangan). Tingkat pengaruh yang dapat diklasifikasikan sebagai sangat rendah, rendah, normal, tinggi, sangat tinggi, ekstra tinggi; para pengganda dapat dibaca dari tabel yang tersedia.


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:

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)

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

Dari pengembangan ini diperoleh persamaan:

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


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


Tabel 5. COCOMO II Post Architecture Effort Multipliers

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://agustinadewic.blogspot.com/2011/04/cocomo.html

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

Software Open Source

Kenapa anda dianjurkan menggunakan software open source dalam membuat aplikasi?

Open source software adalah istilah yang digunakan untuk software yang membuka/membebaskan source codenya untuk dilihat oleh orang lain dan membiarkan orang lain mengetahui cara kerja software tersebut dan sekaligus memperbaiki kelemahan-kelemahan yang ada pada software tersebut. Dan yang menarik dan salah satu keunggulannya adalah bahwa Open source software dapat diperoleh dan digunakan secara gratis tanpa perlu membayar lisensi. Biasanya orang mendapatkan software ini dari internet. Salah satu open source software yang terkenal yaitu Linux.


Keberadaan open source software ini sangat ditunjang oleh internet. Mula-mula Open source software diambil dari internet kemudian digunakan oleh orang dan diperbaiki apabila ada kesalahan. Hasil perbaikan dari open source ini kemudian dipublikasikan kembali melalui internet yang memungkinkan orang lain menggunakan dan memperbaikinya. Dan begitulah seterusnya. Saat ini sangat mudah mendapatkan open source software di internet.


Pengembangan open source software melibatkan banyak orang dari berbagai penjuru dunia yang berinteraksi melalui internet. Maka bermunculanlah berbagai macam software yang dibuat berbasis open source ini yang dipublikasikan melalui internet. Pola open source ini telah melahirkan developer-developer handal dari berbagai penjuru dunia.


Keuntungan Software Open Source

Biasanya keuntungan yang dirasa pertama dari model Open Source adalah fakta bahwa ketersediaan Open Source diciptakan secara gratis atau dengan biaya yang rendah. Berikut ini beberapa keuntungan menggunakan Open Source :

a. Ketersedian source code dan hak untuk memodifikasi

Ini merupakan hal yang penting. Hal ini menyebakan perubahan dan improvisasi pada produk software. Selain itu, hal ini memunculkan kemungkinan untuk meletakan code pada hardware baru, agar dapat diadaptasi pada situasi yang berubah-ubah, dan menjangkau pemahaman bagimana sistem itu bekerja secara detail.

b. Hak untuk mendistribusikan modifikasi dan perbaikan pada code

Hal ini merupakan titik perbedaan Open Source Software dengan Free Software. Pada kenyataannya, hak pendistribusian diakui dan merupakan hal yang umum, ini adalah hal yang berpengaruh bagi sekumpulan developer ( pengembang ) untuk bekerja bersama dalam project Open Source Software.

c. Hak untuk menggunakan software

Ini merupakan kombinasi dari hak pendistribusian, menjamin ( jika software cukup berguna ) beberapa user yang mana membantu dalam menciptakan pasar untuk mendukung dan berlangganan software. Hal ini juga membantu dalam improvisasi kualitas dari produk dan improvisasi secara fungsi. Selain itu akan menyebabkan sejumlah user untuk mencoba produk dan mungkin menggunakannya secara regler.

d. Legal

Penggunaan software Open Source di seluruh Indonesia akan menyebabkan tingkat pembajakan software di Indonesia menjadi turun drastis, dari 88% menjadi 0%.

e. Penyelamatan Devisa Negara

Dengan menggunakan solusi berbasis Open Source, maka dapat dilakukan penghematan devisa negara secara signifikan. Kemudian dana tersebut dapat dialokasikan ke usaha-usaha untuk kesejahteraan rakyat.

f. Keamanan Negara / Perusahaa

Software Open Source bebas dari bahaya ledakan yang disebabkan oleh software komputer proprietary / tertutup, karena bisa dilakukan audit terhadap kode programnya.

g. Keamanan Sistem

Pada software proprietary / tertutup, sangat sulit untuk dapat benar-benar yakin dengan keamanannya, karena kita tidak dapat mengetahui apa yang ada di dalamnya. Selain itu, sangat sulit untuk mendapatkan solusinya.

h. Penghematan

Perusahaan yang menggunakan Open Source untuk membuat aplikasi yang menunjang bisnisnya akan mengalami penghematan karena dana yang harusnya dialokasikan untuk proyek itu dapat ditekan dan dialihkan untuk pendanaan yang lain.

i. Mencegah Software Privacy yang Melanggar Hukum


Kerugian Software Open Source

Tiap software memiliki kekurangan, baik software dengan lisensi berbayar maupun software Open Source yang lisensinya gratis. Berikut beberapa kekurangan dari software Open Source :

a. Tidak ada garansi dari pengembangan

Biasanya terjadi ketika sebuah project dimulai tanpa dukungan yang kuat dari satu atau beberapa perusahaan, memunculkan celah awal ketika sumber code masih mentah dan pengembangan dasar masih dalam pembangunan.

b. Masalah yang berhubungan dengan intelektual property

Pada saat ini, beberapa negara menerima software dan algoritma yang dipatentkan. Hal ini sangat sulit untuk diketahui jika beberapa motede utama untuk menyelesaikan masalah software di patenkan sehingga beberapa komunitas dapat dianggap bersalah dalam pelanggaran intelektual property.

c. Kesulitan dalam mengetahui status project

Tidak banyak iklan bagi open source software, biasanya beberapa project secara tidak langsung ditangani oleh perusahaan yang mampu berinvestasi dan melakukan merketing.

d. Support berbayar dan langka

Jika terdapat masalah pada software, misalnya ditemukan hole atau bug yang tidak anda pahami, maka langkah yang ditempuh adalah mencari penyelesaian masalah di forum-forum. Jika tidak diperoleh solusi, maka harus menganggarkan dana yang tidak sedikit untuk mendatangkan jasa konsultan dari pakar Open Source tersebut.

e. Versi Beta, Stabil dan Tidak Stabil

Kepastian stabil dan tidak stabil kadang menjadi keraguan pilihan para petinggi IT untuk memilih software Open Source. Bayangkan seandainya versi software yang unstable telah terinstal di server, lalu terjadi hal yang tidak diinginkan, dan patch-nya harus menunggu orang yang sukarela memperbaiki masalah yang terjadi.

f. Kerja komunitas bukan professional

Beberapa software dikembangkan oleh sebuah komunitas yang mempunya tujuan khusus, jaminan dan kepercayaan kualitas produk hasil perlu dicompare dengan produk komersil yang jauh lebih mumpuni dari segala sisi.

g. Limitasi modifikasi oleh orang-orang tertentu yang membuat atau memodifikasi sebelumnya.

h. Open Source digunakan secara sharing, dapat menimbulkan resiko kurangnya diferensiasi antara satu software dengan yang lain, apabila kebetulan menggunakan beberapa Open Source yang sama.


Sumber :

http://yudithtesalonika.blogspot.com/2011/06/kenapa-anda-dianjurkan-menggunakan.html

http://deluthus.blogspot.com/2011/03/keuntungan-kekurangan-open-source.html

 
background-attachment:fixed;