pengukuran volume software berdasarkan kompleksitasnya dengan metode function point

Upload: im

Post on 30-May-2018

221 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/9/2019 Pengukuran Volume Software berdasarkan Kompleksitasnya dengan Metode Function Point

    1/10

    Pengukuran Volume Software berdasarkan Kompleksitasnya dengan MetodeFunction Point

    Kusrini, Muhammad Dedi Iskandar

    Abstract

    Software volume measuring can be basic for planning resource, cost and duration ofsoftware development. It also become base to determine software price. In this paper,the writer explain a measurement software volume using function point method. An

    example also included to help understanding the method.

    The usage of function point method need profesional touch, because themeasurement is very subjecctive. The method calculated based on data processing

    view. This method also needs additional data to improve the result.

    Key Word : Volume, Software, Function Point Method

    1. Pendahuluan

    Pengukuran volume software telah menjadi suatu perbincangan hangat di kalanganpengembang dan pebisnis software. Bagi pengembang, mengukur volume darisoftware bermanfaat untuk merencanakan sumber daya, biaya dan durasi yangdiperlukan untuk membangun software. Selain itu, pengembang juga dapatmengevaluasi kualitas produk dengan cara membandingkan volume sistem denganbanyaknya error (error-count) dalam software yang dikerjakan.

    Sementara dari perspektif bisnis, volume software dapat menjadi dasar untukmenentukan nilai harga dari produk software yang bersangkutan.

    2. Pengukuran Volume Software

    Dahulu orang banyak mengukur volume dari suatu software menggunakan LOC(Lines Of Code), yaitu suatu teknik pengukuran besar software dengan cara

  • 8/9/2019 Pengukuran Volume Software berdasarkan Kompleksitasnya dengan Metode Function Point

    2/10

    menghitung baris kode program yang ada. Teknik ini mempunyai sifat yang menjadikekurangannya yaitu :

    Relatif terhadap bahasa/tool pemrograman dan gaya pengkodean programer.LOC sangat tergantung pada karakteristik tool pemrograman yang digunakandan gaya pengkodean programer. Sebagai contoh dalam bahasa BASIC kodesebagai berikut :

    a = a + 1

    hanya membutuhkan 1 baris kode. Sedangkan untuk mendapatkan hasil yangsama dalam bahasa PASCAL kode tersebut dikonversi sebagai berikut :

    program x;

    var

    a : integer;

    begin

    a := a + 1;

    end.

    yang membutuhkan 6 baris kode. Juga perhatikan contoh perbedaan gayapengkodean dari 2 skrip program berikut yang mengakibatkan perbedaan LOC.

    LOC tidak bisa ditentukan sebelum proyek pengembangan menyelesaikantahapan implementasi (pengkodean). Oleh karena itu, LOC tidak dapatdimanfaatkan untuk merencanakan proses pengembangan dan tidak pula dapatdigunakan untuk memperkirakan harga produk. Selesainya tahapanimplementasi adalah suatu fase yang sangat terlambat untuk menyusun estimasisumber daya.

    Dari kekurangan tersebut maka timbul keinginan untuk mendapatkan suatu teknikpengukuran volume software yang tidak hanya berdasar pada banyaknya baris kodeprogram, namun lebih kearah sesuatu yang dapat diukur lebih awal pada softwaredevelopment life cycle sehingga kemudian munculah gagasan metode FunctionPoint.

    Kode 1 (2 baris)a := a + 1; b :=5;if a = 2 then a=1;

    Kode 2 (4 baris):a := a + 1;

    b := 5;

    if a = 2 thena := 1;

  • 8/9/2019 Pengukuran Volume Software berdasarkan Kompleksitasnya dengan Metode Function Point

    3/10

    Keunggulan dari metode Function Point adalah kemampuannya untuk menyediakanperkiraan volume proyek dalam bentuk sumber daya pengembangan yangdibutuhkan, sebelum proyek tersebut jauh melangkah. Perkiraan ini memberikandasar penting untuk perkiraan sumber daya yang dibutuhkan perusahaan softwaredalam mempersiapkan proposal tender danproject plan. Penggunaan metode sepertiini juga dapat mencegah atau setidaknya mengurangi secara substansial risiko darikesalahan manajerial karena underestimate pada perencanaan biaya proyek.

    Metode function point perhitungannya didasarkan pada ukuran banyak dankompleksitas fungsi yang diinginkan dalam proyek software. Function point dapatdihitung melalui telaah dokumentasi requirement fungsional sistem oleh seorangprofesional.

    Metode function point diperkenalkan pertama kali oleh Albrecht pada tahun 1979.Perkembangan selanjutnya metode ini digunakan secara luas untuk keperluankomersial oleh banyak pihak namun masih dipandang sebagai eksperimental olehbanyak ilmuwan atau profesional. Memandang pentingnya metode ini, maka riset-riset dilakukan untuk memvalidasi, meningkatkan dan mengadaptasikan metode inike dalam beberapa jenis sistem software seperti sistem software real-time dan sistemsoftware berorientasi obyek.

    3. Metode Function Point

    Perhitungan dengan metode Function Point menuntut untuk dilakukan oleh seorangprofesional yang berpengalaman karena memiliki tingkat subyektifitas yang cukuptinggi. Metode ini sendiri terdiri dari banyak varia. Variasi yang adalah padalangkah/tahapan yang ada maupun pada isi dari tiap tahapan. Varian-varian ini timbulkarena metode ini dapat diubah sesuai dengan kebijakan perusahaan pengembangsoftware. Namun apapun varian yang digunakan oleh pengembang, hendaknyadigunakan dengan konsisten agar tercipta komparasi yang benar antara software-software yang dinilai.

    Pada tulisan ini penulis memberikan contoh berdasarkan publikasi varian yangpopuler seperti Gramus dan Herron (1996), IEEE (2000), Caldiera dkk (1998) yangmenghasilkan manual penggunaan function point seperi IFPUG 3, IFPUG 4 dan MarkII. Contoh berikut penulis buat dengan beberapa penyesuaian sesuai denganpengalaman dan pengamatan penulis. Tahapan-tahapan yang ada dalammenentukan function point adalah sebagai berikut :

  • 8/9/2019 Pengukuran Volume Software berdasarkan Kompleksitasnya dengan Metode Function Point

    4/10

    Langkah 1 : Menghitung crude function points (CFP). Jumlah dari komponenfungsional sistem pertama kali diidentifikasi dan dilanjutkan dengan mengevaluasikuantitasi bobot kerumitan dari tiap komponen tersebut. Pembobotan tersebutkemudian dijumlahkan dan menjadi angka CFP.

    Langkah 2 : Menghitung faktor pengubah kompleksitas relatif/relative complexityadjustment factor (RCAF) untuk proyek tersebut.

    Langkah 3 : Menghitung Function Point dengan rumus :

    FP = CFP x (0.65 +

    0.01 x RCAF)

    Langkah 1 : Menghitung crude function points (CFP)Perhitungan CFP melibatkan 5 tipe komponen sistem software berikut :

    Jumlah macam aplikasi input Jumlah macam aplikasi output Jumlah macam aplikasi query online aplikasi ini berhubungan dengan query

    terhadap data yang tersimpan.

    Jumlah macam file/tabel logicyang terlibat Jumlah macam interface eksternal output atau input yang dapat berhubungan

    dengan komputer lewat komunikasi data, CD, disket, dan lain-lain.

    Kemudian diberikan faktor bobot pada tiap komponen di atas berdasarkankompleksitasnya. Tabel 1 di bawah ini merupakan contoh blanko pembobotantersebut.

  • 8/9/2019 Pengukuran Volume Software berdasarkan Kompleksitasnya dengan Metode Function Point

    5/10

    Tabel 1: Blanko penghitungan CFP

    Level kompleksitasTotalCFP

    Sederhana Menengah Kompleks

    Count FaktorBobot

    Point Count FaktorBobot

    Point Count

    FaktorBobot

    Point

    KomponenSistemSoftware

    A B C=AxB

    D E F=DxE

    G H I=GxH

    J=C+F+I

    Input 3 4 6

    Output 4 5 7

    QueryOnline

    3 4 6

    File logic 7 10 15

    InterfaceEksternal

    5 7 10

    Total CFP

    Langkah 2 : Menghitung faktor pengubah kompleksitas relatif/relativecomplexity adjustment factor (RCAF).RCAF berfungsi untuk menghitung kesimpulan kompleksitas dari sistem software dari

    beberapa subyek karakteristik. Penilaian berskala 0 sampai 5 diberikan pada tiapsubyek yang paling berpengaruh terhadap usaha pengembangan yang dibutuhkan.Blanko penilaian yang diusulkan penulis diberikan seperti Tabel 2.Tabel 2: Blanko penghitungan RCAF

    No Subyek Nilai

    1 Tingkat kompleksitas kehandalan backup/recovery 0 1 2 3 4 5

    2 Tingkat kompleksitas komunikasi data 0 1 2 3 4 5

    3 Tingkat kompleksitas pemrosesan terdistribusi 0 1 2 3 4 5

    4 Tingkat kompleksitas kebutuhan akan kinerja 0 1 2 3 4 5

    5 Tingkat kebutuhan lingkungan operasional 0 1 2 3 4 5

    6 Tingkat kebutuhan knowledge pengembang 0 1 2 3 4 5

    7 Tingkat kompleksitas updating file master 0 1 2 3 4 5

    8 Tingkat kompleksitas instalasi 0 1 2 3 4 5

    9 Tingkat kompleksitas aplikasi input, output, query online danfile

    0 1 2 3 4 5

    10 Tingkat kompleksitas pemrosesan data 0 1 2 3 4 5

    11 Tingkat ketidakmungkinan penggunaan kembali dari kode 0 1 2 3 4 5

  • 8/9/2019 Pengukuran Volume Software berdasarkan Kompleksitasnya dengan Metode Function Point

    6/10

    (reuse)

    12 Tingkat variasi organisasi pelanggan 0 1 2 3 4 5

    13 Tingkat kemungkinan perubahan/fleksibilitas 0 1 2 3 4 5

    14 Tingkat kebutuhan kemudahan penggunaan 0 1 2 3 4 5

    Total = RCAF

    Langkah 3 : Menghitung Function Point (FP)Nilai function point untuk sistem software tersebut kemudian dihitung berdasarkanhasil dari tahap 1 dan 2 yang dimasukkan ke dalam formula

    FP = CFP x (0.65 +0.01 x RCAF)

    4. Contoh Penggunaan Attend Master

    Akan dibangun sebuah sistem presensi karyawan bernamaAttend-Master yangdirencanakan dapat melayani bisnis kelas kecil sampai menengah dengan karyawan

    sebanyak 10-100 orang. Sistem tersebut direncanakan akan memiliki interfacedengan paket software dari perusahaan lain yaitu Human-Master, yang melayanisumber daya manusia dan Wage-Master yang melayani penggajian. Attend-Masterdirencanakan dapat menghasilkan beberapa laporan dan query online. Daridokumentasi requirement sistem software yang direncanakan ini, didapatkan DataFlow Diagram (DFD) yang ditunjukkan pada Gambar 1. Dari gambar tersebut dapatdihitung nilai function point untuk sistem software Attend-Master yang diajukan.

    Langkah 1 : Menghitung crude function points (CFP)- Jumlah aplikasi input 2- Jumlah aplikasi output 3- Jumlah query online 3- Jumlah file logic 2- Jumlah interface eksternal 2

    Derajat kompleksitas (sederhana, menengah atau kompleks) kemudian dievaluasiuntuk tiap komponen untuk mendapatkan nilai CFP seperti contoh pada Tabel 3

  • 8/9/2019 Pengukuran Volume Software berdasarkan Kompleksitasnya dengan Metode Function Point

    7/10

    Gambar 1: Data Flow Diagram dariAttend-MasterTabel 3: Contoh penghitungan CFP untukAttend Master

    Level kompleksitasTotalCFP

    Sederhana Menengah Kompleks

    Count FaktorBobot

    Point

    Count FaktorBobot

    Point Count FaktorBobot

    Point

    KomponenSistemSoftware

    A B C=

    AxB

    D E F=

    DxE

    G H I=

    GxH

    J=C+F+I

    Input 1 3 3 --- 4 --- 1 6 6 9

    Output --- 4 --- 2 5 10 1 7 7 17

    QueryOnline

    1 3 3 1 4 4 1 6 6 13

    File logic 1 7 7 --- 10 --- 1 15 15 22

  • 8/9/2019 Pengukuran Volume Software berdasarkan Kompleksitasnya dengan Metode Function Point

    8/10

    InterfaceEksternal

    --- 5 --- --- 7 --- 2 10 20 20

    Total CFP 81

    Langkah 2 : Menghitung relative complexity adjustment factor (RCAF)Evaluasi terhadap karakteristik kompleksitas dari Attend-Masterdan perhitungan dariRCAF digambarkan pada Tabel 4.

    Tabel 4: Contoh penghitungan RCAF

    No Subyek Nilai

    1 Tingkat kompleksitas kehandalan

    backup/recovery

    0 1 2 3 4 5

    2 Tingkat kompleksitas komunikasi data 0 1 2 3 4 5

    3 Tingkat kompleksitas pemrosesan

    terdistribusi

    0 1 2 3 4 5

    4 Tingkat kompleksitas kebutuhan akan

    kinerja

    0 1 2 3 4 5

    5 Tingkat kebutuhan lingkungan

    operasional

    0 1 2 3 4 5

    6 Tingkat kebutuhan knowledge pengembang 0 1 2 3 4 5

    7 Tingkat kompleksitas updating file

    master

    0 1 2 3 4 5

    8 Tingkat kompleksitas instalasi 0 1 2 3 4 5

    9 Tingkat kompleksitas aplikasi input,

    output, query online dan file

    0 1 2 3 4 5

    10 Tingkat kompleksitas pemrosesan data 0 1 2 3 4 5

    11 Tingkat ketidakmungkinan penggunaan

    kembali dari kode (reuse)

    0 1 2 3 4 5

    12 Tingkat variasi organisasi pelanggan 0 1 2 3 4 5

    13 Tingkat kemungkinan

    perubahan/fleksibilitas

    0 1 2 3 4 5

    14 Tingkat kebutuhan kemudahan penggunaan 0 1 2 3 4 5Total = RCAF 41

    Langkah 3 : Menghitung Function Point (FP)Dengan menggunakan rumus FP maka didapat :

  • 8/9/2019 Pengukuran Volume Software berdasarkan Kompleksitasnya dengan Metode Function Point

    9/10

    FP = CFP x (0.65 + 0.01 x RCAF) = 81 x (0.65 + 0.01 x 41) = 85.86

    5. Kelebihan dan Kekurangan Metode Function Point

    Kelebihan utama :

    Perkiraan dapat disiapkan pada tahap pra-proyek dan oleh karena itu makamanajemen dapat didukung dalam usaha persiapan proyek.

    Karena metode ini berbasiskan pada dokumen spesifikasi requirement (tidakberdasarkan pada tool pengembangan atau gaya pengkodean programer),kehandalan metode ini relatif tinggi.

    Kekurangan utama:

    Hasil perhitungan FP tergantung pada manual penggunaan function point yangdigunakan.

    Terkadang ada beberapa proyek yang tidak memiliki dokumen spesifikasirequirement mendetail pada tahap pra-proyek.

    Seluruh proses penghitungan memerlukan profesional yang berpengalaman Banyaknya evaluasi yang dibutuhkan berdampak pada hasil yang terlalu

    subyektif

    Penghitungan FP dilakukan hanya didasarkan pada sistem pemrosesan data.Padahal aspek-aspek lain dari pengembangan sistem software juga ikutberpengaruh terhadap pengembangan itu sendiri. Oleh karena itu metode FPtidak dapat diterapkan secara universal atau masih membutuhkan dukunganperhitungan faktor lainn untuk memperkuat perkiraan

    .6. Kesimpulan

    Dari uraian di atas dapat ditarik beberapa kesimpulan :- Metode function point dapat dijadikan salah satu alternatif untuk

    menghitung volume software berdasarkan kompleksitasnya.- Penggunaan metode function point memerlukan campur tangan profesional

    yang berpengalaman karena perhitungannya sangat subyektif.

    - Karena perhitungannya hanyak berdasarkan pada gambaran pemrosesandata, metode function point harus pula didukung data-data tambahan untukmemperkuat perkiraan volume sistem software yang dihasilkan.

  • 8/9/2019 Pengukuran Volume Software berdasarkan Kompleksitasnya dengan Metode Function Point

    10/10

    7. Daftar Pustaka

    Caldiera, G., Antoniol, G., Fiuterm, R. dan Lokan, C., 1998, Definition andExperimental Evaluation of Function Points for Object-Oriented Systems,Proceedings of The Fifth International Software Metrics Symposium,California, US

    Galin, Daniel, 2004, Software Quality Assurance, Pearson Education Limited,Addison Wesley, InggrisGramus, D. dan Herron, D., 1996, Measuring the Software Process A PracticalGuide to Functional Measurements, Yourdon Press, Prentice Hall, New Jersey, USIEEE, 2000, IEEE Std 1061-1998 Standard for Software Quality Metrics

    Methodology, The Institure of Electrical and Electronics Engineers, NewYork, US