Selasa, 15 April 2014

Constructive Cost Model (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 sebagai model untuk memperkirakan usaha, biaya, dan jadwal untuk proyek-proyek perangkat lunak. Ini menarik pada studi dari 63 proyek di TRW Aerospace dimana 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.
Jenis-Jenis COCOMO terdiri dari 3 jenis, yaitu :



Basic COCOMO

Menghitung usaha pengembangan perangkat lunak (dan biaya) sebagai fungsi dari ukuran program. Ukuran program dinyatakan dalam ribuan estimasi baris kode (KLOC).
COCOMO membedakan perhitungan terhadap tiga jenis kelas proyek perangkat lunak sebagai berikut :

Organic : tim kecil dengan pengalaman cukup baik dan kebutuhan sistem yang relatif sederhana.
Semi-detached : tim berukuran menengah yang berpengalaman dengan lingkungan kerja yang lebih kompleks.

Embedded projects : pengembangan berdasarkan pada kebutuhan dengan kompleksitas tinggi dan batasan atau constraint yang ketat. 


 Intermediete COCOMO

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”, yang dijabarkan dalam kategori dan subkatagori sebagai berikut :

  • Atribut produk (product attributes)
Reliabilitas perangkat lunak yang diperlukan (RELY), Ukuran basis data aplikasi (DATA), Kompleksitas produk (CPLX)

  • Atribut perangkat keras (computer attributes)
Waktu eksekusi program ketika dijalankan (TIME), Memori yang dipakai (STOR), Waktu yang diperlukan untuk mengeksekusi perintah (TURN), 

  • Atribut sumber daya manusia (personnel attributes)
Kemampuan analisis (ACAP), Kemampuan ahli perangkat lunak (PCAP), Pengalaman membuat aplikasi (AEXP), Pengalaman penggunaan mesin virtual (VEXP), Pengalaman dalam menggunakan bahasa pemrograman (LEXP)

  • Atribut proyek (project attributes)
Penggunaan sistem pemrograman modern(MODP),  Penggunaan perangkat lunak (TOOL), Jadwal pengembangan yang diperlukan (SCED)


Detailed 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 :



 







Rabu, 02 April 2014

SISTEM INFORMASI GEOGRAFIS DENGAN MAPSERVER



Akhir-akhir ini GIS (Geographic Information System) telah menjadi bagian tak terpisahkan dari
solusi yang digunakan oleh berbagai industri seperti telco, pertambangan, pertanian, perikanan,
kehutanan, pariwisata, transportasi dan sebagainya. 

Dahulu GIS dikembangkan sebagai bagian yang tak terpisahkan dari product yang ditawarkan oleh vendor, seperti ArcView dengan avanue-nya atau MAPINFO dengan script-nya sendiri. Hal ini memiliki kelemahan karena untuk memiliki aplikasi ini sebuah institusi harus turut membeli core product-nya agar sistem atau aplikasi dapat berjalan. Selain itu dengan model ini customisasi terhadap solusi yang ditawarkan juga sangat terbatas. Untuk itulah kemudian diciptakan komponen yang bisa dengan mudah diaplikasikan dengan menggunakan bahasa pemrograman apapun sehingga memberi kemudahan untuk kustomisasi bagi user. Selain itu dengan adanya komponen ini ketergantungan terhadap core product dapat direduksi atau bahkan hilang sama sekali.  

Sampai saat ini MapServer lebih banyak digunakan pada aplikasi yang dikembangkan menggunakan bahasa pemrograman PHP, tapi perlu kita ketahui bersama bahwa MapServer dapat juga dikolaborasikan dengan bahasa laen semisal asp atau bahkan html sederhana sekalipun. Tulisan ini akan mengajak kita untuk membuat sebuah aplikasi GIS sederhana dengan menggunakan HTML.

MapServer adalah applikasi Open Source yang memungkinkan sebuah data peta diakses melalui web. aplikasi ini dapat membuat Peta Digital menjadi lebih mudah dan interaktif. Interaktif peta disini diartikan bahwa pengguna dapat dengan mudah melihat dan mengubah tampilan peta seperti zoom, rotate, dan menampilkan informasi (seperti menampilkan info jalan) dan analisis( seperti menentukan rute perjalanan) pada permukaan geografi. Diagram berikut menggambarkan bagaimana user berinteraksi dengan peta interaktif berbasis MapServer. - See more at: http://pitikuye.blogspot.com/2013/11/penggunaan-aplikasi-mapserver.html#sthash.Fej4A0cP.dpuf
MapServer adalah applikasi Open Source yang memungkinkan sebuah data peta diakses melalui web. aplikasi ini dapat membuat Peta Digital menjadi lebih mudah dan interaktif. Interaktif peta disini diartikan bahwa pengguna dapat dengan mudah melihat dan mengubah tampilan peta seperti zoom, rotate, dan menampilkan informasi (seperti menampilkan info jalan) dan analisis( seperti menentukan rute perjalanan) pada permukaan geografi. Diagram berikut menggambarkan bagaimana user berinteraksi dengan peta interaktif berbasis MapServer.



http://dennycharter.files.wordpress.com/2008/05/webserver4.jpg
MapServer adalah applikasi Open Source yang memungkinkan sebuah data peta diakses melalui web. aplikasi ini dapat membuat Peta Digital menjadi lebih mudah dan interaktif. Interaktif peta disini diartikan bahwa pengguna dapat dengan mudah melihat dan mengubah tampilan peta seperti zoom, rotate, dan menampilkan informasi (seperti menampilkan info jalan) dan analisis( seperti menentukan rute perjalanan) pada permukaan geografi. Diagram berikut menggambarkan bagaimana user berinteraksi dengan peta interaktif berbasis MapServer. - See more at: http://pitikuye.blogspot.com/2013/11/penggunaan-aplikasi-mapserver.html#sthash.Fej4A0cP.dpuf



  • Bagai mana MapServer berkerja?

Map Server bekerja secara berdampingan dengan applikasi web server. Web Server menerima request peta melalui MapServer. MapServer mengenerate request terhadap peta dan mengirimkannya ke web server seperti pada gambar berikut:



http://dennycharter.files.wordpress.com/2008/05/webserver1.jpg
 
 

 
Fungsi utama dari MapServer adalah melakukan pembacaan data dari banyak sumber dan menempatkannya kedalam layer-layer secara bersamaan menjadi file graphic. Salah satu layernya bisa saja berupa gambar satelit. Setiap layer saling overlay satu dengan lainnya dan ditampilkan kedalam web browser. Sebuah contoh tampilan Overlaping yang baik diperlihatkan seperti gambar berikut. 


http://dennycharter.files.wordpress.com/2008/05/webserver2.jpg 


Dari gambar tersebut kita bisa melihat sebuah foto satelit (diperoleh dari remote server), garis-garis jalan, lokasi perkotaan, dan label-label kota yang di tampilkan secara generic oleh MapServer. Proses pengambaran peta (rendering) muncul setiap kali permintaan terhadap peta baru yang dilakukan oleh Mapserver termasuk ketika user melakukan level zoom terhadap tampilan peta.


  • Komponen-komponen utama 

Mapserver menghasilkan keluaran berupa file graphic berdasarkan masukan yang diberikan oleh user. Komponen kuncinya adalah MapServer executable yang terdiri dari CGI program, file peta, sumber data dan output gambar. Seperti pada gambar dibawah ini semua komponen bekerja bersama-sama, setelah user melakukan request/perminataan maka CGI akan mengakses file peta, menggambarkan informasi yang didapat dari sumber data dan kembali menampilkannya pada peta.




http://dennycharter.files.wordpress.com/2008/05/webserver3.jpg
 


 
MapServer executable
 


Secara sederhana MapServer menjalankan executable applikasi CGI pada web server yang secara teknis merupakan proses stateless berbasis pada HTTP. Stateless adalah sebuah proses permintaan yang dilanjutkan dengan stop running. Applikasi CGI menerima permintaan dari web server, kemudian proses dilakukan dan mengembalikan respon atau data ke web server. CGI bekerja sangat sederhana tidak diperlukan sebuah pemrograman untuk dapat menggunakannya. Kita tinggal melakukan edit berdasarkan text base, konfigurasi runtime file, membuat halaman web, dan menempatkannya bekerja pada web server. MapServer CGI executable bekerja sebagai perantara antara file peta dengan program web server yang meminta peta. 



  • MapServer map file

MapServer seperti sebuah mesin yang membutuhkan bahan bakar untuk dapat bekerja dan membutuhkan system pengiriman (delivery system) bahan bakar untuk mencapai mesin . Program MapServer perlu mengetahui layer peta yang akan digambar, bagaimana menggambarkannya, dan dimana lokasi sumber datanya. 

Data merupakan bahan bakarnya dan file peta atau .map.file merupakan system pengirimannya (delivery system). File Peta adalah text konfigurasi yang terdiri dari list setting yang digunakan untuk menggambar dan berinteraksi dengan peta. Informasi yang termuat didalamnya adalah layer data apa yang akan digambar, dimana focus geografis petanya, system proyeksi yang digunakan, format apa yang akan digunakan untuk menampilkan gambar, dan cara menentukan legenda dan skala pada peta.
 

Contoh script dasar pemetaan dengan satu layer.
MAP
SIZE 600 300
EXTENT -180 -90 180 90
LAYER
NAME countries
TYPE POLYGON
STATUS DEFAULT
DATA countries.shp
CLASS
OUTLINECOLOR 100 100 100
END
END
END

Ketika request atau permintaan dating dari applikasi MapServer maka reguest tersebut mesti menyebutkan sepesifikasi file peta yang diinginkan. Kemudian MapServer membuat petanya berdasarkan pada setting pada file peta yang diberikan tadi.



 

 
Sumber :





 Berikut ini berisi 5 jurnal yang berhubungan dengan pembahasan diatas :