D-7-1 PERHITUNGAN KOMPLEKSITAS FUNCTION POINT UNTUK SUATU WEB Silvia Rostianingsih e-mail : [email protected] Jurusan Teknik Informatika, Universitas Kristen Petra, Surabaya Siwalankerto 121-131 Surabaya ABSTRAK Function point dapat digunakan untuk mengukur produktifitas kerja, ukuran proyek atau aplikasi berdasarkan jumlah dan kompleksitas dari fungsi yang digunakan dan diberikan kepada user. Elemen dari function point adalah eksternal input, eksternal output, eksternal inquiries, internal logical files dan eksternal interface. Penentuan kompleksitas dilakukan terhadap struktur data internal dan struktur data eksternal yang dihitung dari jumlah tabel dan field, input dan output yang dihitung dari jumlah interface dan proses dalam pembuatan interface, serta inquiries yang dihitung dari jumlah perintah yang digunakan dan tabel yang berelasi. Pengujian dilakukan dengan menghitung suatu function point dari website yang sudah ada, kemudian dibandingkan dengan pembuatan website baru. Estimasi proyek pembuatan website baru dihitung dengan dua metode yaitu function point dan perkiraan. Hasil pengujian menyatakan bahwa perhitungan kedua metode hampir sama, sehingga penentuan kompleksitas dapat digunakan untuk estimasi proyek pembuatan suatu website. Kata kunci: estimasi proyek, function point, kompleksitas ABSTRACT Function points can be used to measure the work-product, or relative size of a software application or project based on the number and complexity of user functions requested or delivered. The element of function point are external input, external output, external inquiries, internal logical files and external interface. The complexity of each element is determine by internal data structure and external data structure which is calculate by number of table and field, input and output which is calculate by number of interface and process of making the interface, include inquiries which is calculate by number of code and related tables. This function point applied to calculate the function point from the existing website, and it is compare with the new web. The new website project estimation is calculate with two method which is function point and estimation. The experiment show that the calculation with those two method is equal, so the complexity for each element can be used to estimated the project of a web. Key Word: complexity, function point, project estimation _____________________________________________________________________________ Prosiding Seminar Nasional Manajemen Teknologi I ISBN : 979-99302-0-0 25-26 Pebruari 2005 Program Studi Magister Manajemen Teknologi Institut Teknologi Sepuluh Nopember D-7-2 Pendahuluan Pengukuran proyek rekayasa perangkat lunak menyangkut biaya dan usaha yang diaplikasikan. Salah satu cara untuk mengukur produktifitas suatu pengembangan proyek adalah menggunakan metode function point. Function point berbeda dari cara pengukuran yang tradisional seperti lines of code (LOC) dimana LOC hanya mengukur apa yang dikirimkan kepada user, bukan bagaimana sistem dikembangkan. Penentuan kompleksitas masing-masing elemen yang dipergunakan untuk menghitung function point pada saat ini dapat bermacam-macam. International Function Point Users Group (IFPUG) juga mempunyai standar untuk menghitung kompleksitas masing-masing elemen [2]. Tanpa adanya suatu standar, perhitungan function point menjadi tidak relevan antara satu sistem dengan sistem yang lain. Pada penelitian ini dibuat suatu penentuan kompleksitas masing-masing elemen suatu sistem informasi pada website. Dari penentuan kompleksitas tersebut, diujicobakan pada dua macam sistem yaitu website yang sudah ada (website Pusat Komputer UK. Petra) dan website yang baru (website help desk Pusat Komputer UK. Petra). Function Point Function point dapat digunakan untuk mengukur produktifitas kerja, ukuran proyek atau aplikasi berdasarkan jumlah dan kompleksitas dari fungsi yang digunakan dan diberikan kepada user [3]. Elemen dari function point adalah eksternal input, eksternal output, eksternal inquiries, internal logical files dan eksternal interface. Transaksi (batch or online Input Eksternal user Output Inquiry Input Internal Logical File Output Transaksi Inquiry Proses Informasi Secara Umum Eksternal Interface File Gambar 1. Elemen analisis function point Function point dihitung dengan melengkapi data yang ada pada gambar 2 [1]. Jumlah input pemakai yaitu setiap input pemakai yang memberikan data yang berorientasi pada aplikasi yang jelas pada perangkat lunak dihitung. Jumlah output pemakai yaitu setiap output pemakai yang memberikan informasi yang berorientasi pada aplikasi kepada pemakai dihitung dengan mengacu pada laporan, layar, tampilan kesalahan dan sebagainya. Jumlah inquriy yaitu didefinisikan sebagai input online yang mengakibatkan munculnya beberapa respon perangkat lunak yang cepat dalam bentuk sebuah output online. Jumlah logical file yaitu setiap file master logika (yaitu pengelompokan data secara logis yang menjadi suatu bagian dari sebuah database yang besar atau sebuah file yang terpisah). Jumlah interface eksternal yaitu semua interface yang dapat dibaca oleh mesin (contohnya, file data pada disket) yang digunakan untuk memindahkan informasi ke sistem yang lain. _____________________________________________________________________________ Prosiding Seminar Nasional Manajemen Teknologi I ISBN : 979-99302-0-0 25-26 Pebruari 2005 Program Studi Magister Manajemen Teknologi Institut Teknologi Sepuluh Nopember D-7-3 Gambar 2. Perhitungan function point 1. Penentuan Kompleksitas Penentuan kompleksitas didasarkan dari pengamatan terhadap tingkat kesulitan yang dilakukan selama membuat suatu program. Kompleksitas jumlah input dan output pemakai ditentukan dari dua faktor yaitu jumlah tabel dan jumlah field yang digunakan pada input dan output setiap aplikasinya. Tabel 1. Menentukan kompleksitas jumlah input/output pemakai untuk function point Jumlah output pemakai yang tidak berhubungan dengan database ditentukan dari jumlah bagian pada setiap aplikasinya. Tabel 2. Menentukan kompleksitas jumlah output pemakai yang tidak berhubungan dengan database untuk function point Bagian Nilai 1-2 rendah 3-4 sedang s tinggi _____________________________________________________________________________ Prosiding Seminar Nasional Manajemen Teknologi I ISBN : 979-99302-0-0 25-26 Pebruari 2005 Program Studi Magister Manajemen Teknologi Institut Teknologi Sepuluh Nopember D-7-4 Kompleksitas jumlah inquiry ditentukan dari jumlah proses yang digunakan pada setiap aplikasinya. Tabel 3. Menentukan kompleksitas jumlah inquiry untuk function point Kompleksitas jumlah logical file ditentukan dari jumlah elemen data dan tipe data yang digunakan pada setiap aplikasinya. Tabel 4. Menentukan kompleksitas jumlah logical file untuk function point Kompleksitas jumlah interface eksternal ditentukan dari jumlah elemen data dan tipe data yang digunakan pada setiap aplikasinya. Tabel 5. Menentukan kompleksitas jumlah interface eksternal untuk function point Untuk menghitung function point (FP) digunakan persamaan sebagai berikut: FP = jumlah total x [0,65 + 0,01 x Fi] ............................................................persamaan 1 _____________________________________________________________________________ Prosiding Seminar Nasional Manajemen Teknologi I ISBN : 979-99302-0-0 25-26 Pebruari 2005 Program Studi Magister Manajemen Teknologi Institut Teknologi Sepuluh Nopember D-7-5 Keterangan: Jumlah total adalah jumlah semua entry yang diperoleh dari gambar 1. Fi (i = 1 sampai 14) adalah harga penyesuaian kompleksitas berdasarkan respon pada pertanyaan berikut ini: 1. Apakah sistem membutuhkan backup dan recovery yang reliabel? 2. Apakah komunikasi data dibutuhkan? 3. Apakah fungsi pemrosesan didistribusikan? 4. Apakah kinerja penting? 5. Apakah sistem berjalan pada lingkungan operasional yang sudah ada yang paling banyak digunakan? 6. Apakah sistem membutuhkan entry data online? 7. Apakah entry data online membutuhkan ada transaksi input terhadap layar atau operasi ganda? 8. Apakah file master diperbarui secara online? 9. Apakah input, output, file atau penyelidikan kompleks? 10. Apakah pemrosesan internal kompleks? 11. Apakah kode didesain untuk dapat dipakai kembali? 12. Apakah desain melibatkan konversi dan instalasi? 13. Apakah sistem didesain untuk instalasi ganda dalam organisasi berbeda? 14. Apakah aplikasi didesain untuk memfasilitasi perubahan dan mempermudah pemakai untuk menggunakannya? Untuk jawaban tiap faktor bernilai antara 0-5 yang dapat dilihat pada gambar 3. Gambar 3. Arti faktor pada function point 2. Pengujian Penentuan kompleksitas diujicobakan pada website Pusat Komputer UK. Petra (http://genesis.petra.ac.id/puskom2/). Pada website tersebut terdapat 11 input pemakai dengan total nilai 36, 10 output pemakai dengan total nilai 44 dan 12 output pemakai yang tidak berhubungan dengan database dengan total nilai 48, delapan inquiry dengan total nilai 26, dua logical file dengan nilai 14, lima file interface eksternal dengan total nilai 35 dan faktor lingkungan (Fi) dengan total nilai 46. Berdasarkan persamaan 1, dihitung FP: FP = jumlah total x [0,65 + 0,01 x Fi] = (36+44+48+26+14+35) x [0,65 + 0,01 x 46] = 225,33 Pembuatan website tersebut dilakukan oleh satu orang, selama tiga bulan (tahap pembuatan program dan uji coba), sehingga produktivitas rata-rata adalah 75,11 FP/pm. Estimasi proyek tersebut digunakan untuk memperkirakan jumlah pekerjaan dan biaya berdasarkan proyek yang pernah dikerjakan sebelumnya. Untuk itu, hasil FP diujicobakan pada website yang akan dibuat yaitu website help desk Pusat Komputer UK. Petra. Pada website ini terdapat terdapat 12 input pemakai dengan total nilai 38, 13 _____________________________________________________________________________ Prosiding Seminar Nasional Manajemen Teknologi I ISBN : 979-99302-0-0 25-26 Pebruari 2005 Program Studi Magister Manajemen Teknologi Institut Teknologi Sepuluh Nopember D-7-6 output pemakai dengan total nilai 58, 13 inquiry dengan total nilai 41, tujuh logical file dengan nilai 49 dan faktor lingkungan (Fi) dengan total nilai 36. FP = jumlah total x [0,65 + 0,01 x Fi] = (38+58+41+46) x [0,65 + 0,01 x 36] = 187,86 Dengan 75,11 FP/pm maka proyek yang dirancang dapat diselesaikan kira-kira 1,5 bulan oleh satu orang pekerja. Apabila dihitung berdasarkan pekerjaan yang dilakukan yaitu pembuatan program dan uji coba, maka didapatkan bahwa pekerjaan dapat diselesaikan dalam waktu 33 hari (satu bulan = 22 hari kerja). Hasil perhitungan waktu penyelesaian proyek pembuatan website help desk Pusat Komputer UK. Petra yang dihitung dengan menggunakan dua cara ternyata menghasilkan waktu yang sama yaitu 1,5 bulan (33 hari). Tabel 6. Jadwal proyek Pekerjaan Pembuatan program untuk web civitas Pembuatan program untuk help desk web pegawai Puskom Pembuatan program untuk KPI web pegawai Puskom Testing keseluruhan dan perbaikan Pembuatan dokumentasi Implementasi Maintenance Total Waktu Pelaksana 5 hari 1 orang programmer 7 hari 1 orang programmer 9 hari 1 orang programmer 5 hari 1 orang programmer 3 hari 2 hari 2 hari 33 hari 1 orang programmer 1 orang programmer 1 orang programmer Kesimpulan 1. Jumlah output pemakai pada website dapat dibedakan menjadi dua yaitu jumlah output pemakai yang berhubungan dengan database dan jumlah output pemakai yang tidak berhubungan dengan database. 2. Function point dengan penentuan kompleksitas pada penelitian ini dapat digunakan untuk menentukan waktu penyelesaian suatu proyek. Daftar Pustaka [1] Hargrove, Dave (2003) Calculating Productivity Using Functions Points, Everware, Inc. [2] International Function Point User Group (2002) http://www.ifpug.org/. [3] Jogiyanto, H.M. (1995) Analisis dan Disain Sistem Informasi : Pendekatan Terstruktur. Andi Offset, Jakarta. [4] Pressman R. S. (1997), Software Engineering : A Practitioner’s Approach. The McGraw-Hill. _____________________________________________________________________________ Prosiding Seminar Nasional Manajemen Teknologi I ISBN : 979-99302-0-0 25-26 Pebruari 2005 Program Studi Magister Manajemen Teknologi Institut Teknologi Sepuluh Nopember