## Estimasi Biaya Perangkat Lunak Menggunakan Metode Function Point Analysis (Studi Kasus: Sistem BKD Universitas XYZ)

## Reinindhi Puspitasari, Dian Nugraini, Renny Sari Dewi
Departemen Sistem Informasi, Universitas Internasional Semen Indonesia, Gresik, Indonesia Email: 1 Reinindhi.sari16@student.uisi.ac.id, 1 Dian.nugraini16@student.uisi.ac.id, 1 Renny.dewi@uisi.ac.id

## Abstrak
Estimasi usaha pada pembangunan perangkat lunak dinilai penting dalam tahap perencanaan proyek teknologi informasi dan komunikasi sebagai penentuan alokasi sumber daya. Tingkat akurasi dalam memperkirakan besar biaya yang harus dilakukan agar dapat meminimalisir kegagalan. Disisi lain, sudah banyak penelitian yang membahas dan menguji metode estimasi usaha tersebut, salah satunya adalah Function Points  (FP).  Metode  FP dipengaruhi oleh 5  parameter utama dan 14 item  faktor kompleksitas  relatif.  Maka dapat disimpulkan  bahwa apabila,  institusi  pendidikan  perguruan  tinggi,  ingin  mengembangkan  aplikasi  BKD  (Beban  Kinerja  Dosen)  untuk  menunjang  proses bisnisnya maka, biaya yang dibutuhkan ialah IDR 42,181,198 atau setara dengan effort 3,273.11 orang/jam.
Kata Kunci: Function Points, Estimasi Usaha, Estimasi Biaya, Effort, Sistem BKD

## Abstract
Software  effort  estimation  was  considered  importantly  in  planning  stage  of  information  technology  and  communication  projects  as  a determination of resource allocation. The level of accuracy in estimating the cost that must be done in order to minimize failure. On the other hand, there have been many studies that have discussed and tested the business estimation method, one of which is Funct ion Points (FP). The FP method is influenced by 5 main parameters and 14 items relative complexity factors. So it can be concluded that if, a tertiary education institution, wants to develop an BKD (Lecturer Performance Load) application to support its business processes, the required cost is IDR 42,181,198 or equivalent to an effort of 3,273.11 man / hour.
Keywords : Function Points, Business Estimates, Cost Estimates, Effort, BKD System

## 1. PENDAHULUAN
Semakin  berkembang  dan  luasnya  penggunaan  komputer  memicu  banyaknya  perangkat  lunak  yang  turut  tumbuh  dan berkembang dalam jumlah dan kegunaanya. Berbagai aplikasi baru yang ditujukan untuk memfasilitasi manusia yang lebih banyak  berkembang  di  semua  bidang,  termasuk  di  bidang  pendidikan.  Universitas  XYZ  merupakan  lembaga  pendidikan yang telah memanfaatkan teknologi untuk mendukung proses bisnis. Sejak berdiri tahun 2015 beberapa aplikasi perangkat lunak (Perangkat Lunak) telah dikembangkan oleh Universitas XYZ melalui departemen ICT (Komunikasi dan Teknologi Informasi). Banyak proyek perangkat lunak yang mengalami kegagalan, karena keberhasilan suatu proyek dikatakan berhasil apabila sistem tersebut bisa diserahkan tepat waktu, sesuai antara biaya dan kualitas yang diinginkan. Untuk mencegah agar tidak terjadi kegagalan disuatu pembuatan perangkat lunak maka perkiraan biaya perangkat lunak harus dilakukan dengan hati-hati dan terukur dengan jelas, sehingga nantinya dapat dicapai keberhasilan proyek yang tepat waktu, sesuai budget dan terpenuhinya standar kualitas produk. Permasalahan yang sering terjadi dalam proses estimasi adalah kelebihan estimasi atau dibawah estimasi. Estimasi berlebihan dapat menyebabkan alokasi sumberdaya lebih besar dari yang dibutuhkan.  Sedangkan estimasi yang kurang akan menghasilkan kualitas dari perangkat yang dihasilkan tidak sesuai dengan standar. Oleh karena itu, estimasi usaha juga bertujuan untuk efisiensi penggunaan sumber daya proyek [1].
Terdapat  beberapa teknik perkiraan biaya pengembangan perangkat  lunak, di  antaranya adalah: Constructive Cost, Model (COCOMO) II, Expert Judgment, Function Point (FP), Analogi, Neural Network, Fuzzy , dan lain-lain. Masing masing metode    mempunyai  kelebihan  dan  kekurangan  untuk  pengembangan  perangkat  lunak[2].  Dalam  penelitian  ini,  kami mengajukan sebuah teknik paling umum dan familiar untuk diujicobakan pada data proyek yang telah berjalan di lapangan yaitu  menggunakan  metode Function  Point  Analysis. Dari  beberapa  penelitian  yang  sudah  ada, implementasi  metode  FP dianggap lebih baik dari metode lainnya seperti Use Case Points dan lainnya[3] . Menariknya, metode ini telah diteliti oleh Albrecht  di  perusahaan  IBM  sejak.  Dari  teori  awal  yang  dikemukakan  Albrecht  tersebut,  kemudian  berkembang  pesat menjadi  suatu  asosiasi  internasional  yang  bernama  IFPUG  (International  Function  Points  User  Group)  dan  berevolusi menjadi standar ISO/IEC 20926. Analisis Function Point sebuah perangkat lunak dilakukan berdasarkan lima komponen dari suatu sistem software, yaitu : External Inputs, External Outputs, Internal Logical Files, External Logical Files dan External inquiry [4].  Function  Point  adalah  pendekatan  yang  berorientasi  fungsi  mengukur  fungsionalitas  perangkat  lunak  untuk mengestimasi size perangkat  lunak  dan  selanjutnya  digunakan  untuk  estimasi  biaya  serta  estimasi  effort  yang  diperlukan untuk  mengembangkan  sistem  [5].  Metode Function  Point dapat  digunakan  untuk  estimasi  Effort  dan  estimasi  biaya perangkat lunak berdasarkan jumlah dan kompleksitas dari fungsi yang ada. Metode function point (FP) dianggap lebih cepat karena tidak memerlukan hasil analisis  sistem dalam  bentuk  skema pelaporan penggunaan naratif dan basis data konsep. Pada dasarnya metode analysis functiom point (FP) merupakan indikator pengukuran yang tidak bisa ditinggalkan.

## 2. METODE PENELITIAN

## 2.1 Studi Lapangan
Studi  lapangan  dilakukan  dengan  mengamati  masalah-masalah  aktual  dalamp  royek-proyek  pengembangan  piranti  lunak (software) di Universitas XYZ dan mengumpulkan data-data yang dibutuhkan untuk melakukan penelitian

## 2.2 Studi Kepustakaan
Studi kepustakaan dilakukan dengan mencari  sumber-sumber referensi  yang berkaitan dengan penelitian yang dilakukan. Sumber-sumber referensi tersebut diperoleh melalui buku, artikel, dan jurnal online dari internet.

## 2.3. Analisa dan pemodelan menggunakan metode Function Point Analysis
Data hasil survei dikodekan dan dianalisa untuk membuat model estimasi dengan metode Function Point Analysis. . Berikut ini adalah langkah untuk melakukan estimas biaya dengan menggunakan metode Function Point Analysis :
a) Menghitung Nilai Crude Function Points (CFP) Crude Function Points (CFP) digunakan untuk menghitung bobot nilai dari komponen-komponen function points yang dikaitkan dengan perangkat lunak yang akan dikembangkan. Komponen dari estimasi sebuah software ada lima, yakni : EI ( External Inputs ), EO ( External Outputs ), ILF ( Internal Logical Files ), ELF ( External Logical Files dan External inquiry ).  Komponen  komponen  tersebut  kemudian  diberi  nilai  “mudah”,  “sedang”,  “kompleks”,  tergantung  pada karakteristik  masing-masing.  Kemudian,  jumlahkan  semua  komponen  yang  disebut  sebagai Crude  Function  Points (CFP). Nilai Crude Function Points ditentukan dengan cara, nilai fungsi dari tiap pembobotan kompleksitas yang didapat dikalikan dengan masing- masing faktor kali kompleksitas. Kriteria pengali berdasarkan bobot kompleksitas dari setiap kategori yang disajikan pada Tabel 1.
Tabel 1. Bobot Komponen Estimasi Software menggunakan Function Point
b) Menghitun g Relative Complexity Adjusment Factor (RCAF) Pada tahapan ini dilakukan perhitungan terhadap Relative Complexity Adjusment Factor (RCAF) pada sebuah proyek perangkat lunak. Table penilaian RCAF dapat dilihat pada Tabel 2.
Tabel 2. Faktor Kompleksitas Relatif
Keterangan Skor: 1 = pengaruh insidental 2 = sedikit berpengaruh
3 = pengaruh rata-rata
4 = pengaruh yang signifikan 5 = sangat berpengaruh/ esensial Komponen Deskripsi Mudah Sedang Kompleks External Inputs Setiap masukan pengguna yang berorientasi pada data tertentu 3 4 6 External Outputs Setiap masukan pengguna yang menyediakan  tampilan  berorientasi informasi kepada pengguna lain 4 5 7 Internal Logical Files Setiap masukan yang berupa pengunggahan berkas logis 7 10 15 External Logical Files Setiap berkas yang ditampilkan sebagai    informasi  untuk  sistem aplikasi yang lain 5 7 10 External inquiry Pertanyaan yang didefinisikan/dimasukkan secara online  yang  menghasilkan  beberapa formulir tanggapan 3 4 6 No Modifikasi Faktor Kompleksitas Skor 1  Tingkat Kehandalan Dan Pemulihan Data ( 1, 2, 3, 4, 5 ) 2  Tingkat Komunikasi Data ( 1, 2, 3, 4, 5 ) 3  Tingkat Distribusi Pemrosesan Data ( 1, 2, 3, 4, 5 ) 4  Tingkat Capaian Kinerja ( 1, 2, 3, 4, 5 ) 5  Tingkat Konfigurasi Lingkungan ( 1, 2, 3, 4, 5 ) 6  Tingkat Kapasitas Transaksi ( 1, 2, 3, 4, 5 ) 7  Tingkat Efisiensi Pengguna ( 1, 2, 3, 4, 5 ) 8  Tingkat Pembaruan File Induk ( 1, 2, 3, 4, 5 ) 9  Tingkat Pembaruan Realtime Online ( 1, 2, 3, 4, 5 ) 10  Tingkat Penggunaan Kembali ( 1, 2, 3, 4, 5 ) 11  Tingkat Kemudahan Instalasi ( 1, 2, 3, 4, 5 ) 12  Tingkat Kemudahan Penggunaan ( 1, 2, 3, 4, 5 ) 13  Tingkat Variasi Organisasi Pengguna ( 1, 2, 3, 4, 5 ) 14  Tingkat Kerentanan Terhadap Perubahan ( 1, 2, 3, 4, 5 )
c) Menghitung Nilai Function Point (FP) Untuk menghitung nilai function point dapat menggunakan rumus sebagai berikut : FP = CFP × (0.65 + (0.01 × RCAF)) ..........................................................................(1)
d) Menghitung Nilai Effort Nilai function point telah diketahui langkah selanjutnya ialah melakukan perhitungan nilai effort , dengan rumus sebagai berikut :
Effort = FP × 8.2 ...........................................................................................................(2)
e) Mengkalkulasi Nilai Kloc
Untuk mengkalkulasi nilai Kloc maka dapat menggunakan rumus sebagai berikut :
Kloc = FP × 56 .............................................................................................................(3)

## f) Menghitung Final Effort
Final Effort = ( FP 18 ) × 22 × 8 ....................................................................................(4)
g) Mendistribusikan Nilai Final Effort Ke Aktivitas Setiap final effort yang sudah diketahui di distribusikan ke dalam setiap aktivitas pengembangan perangkat lunak yang ada pada  Tabel  3, tujuannya adalah untuk mencari  estimasi  biaya yang dibutuhkan dalam membangun sistem Beban Kinerja Dosen (BKD).
Tabel 3. Nilai effort ke aktivitas
Keterangan :
• Persentase berdasarkan pada konstanta mutlak [6]
h) Total Seluruh Biaya Per Masing – Masing Tenaga Kerja
Tabel 4. Biaya Per Tenaga Kerja No Tenaga Kerja Aktivitas Persentase 1 Business Analyst Requirement 12% Specifications 2 Designer Design 5% 3 Business Developer Training And Support 11% Acceptance
And Deployment Integration Testing 4 Programmer Implementation 42% 5 Project Manager Project Management 22% Configuration Management No Aktivitas Persentase 1 Requirement 1.60 % 2 Specifications 7.50 % 3 Design 6.00 % 4 Training And Support 1.00 % 5 Acceptance And Deployment 5.50 % 6 Integration Testing 7.00 % 7 Implementation 52.00 % 8 Project Management 3.80 % 9 Configuration Management 4.30 % 10 Quality Assurance 0.90 % 11 Documentation 8.40 % 12 Evaluation And Testing 2.00 % Total 100.00 %
No Tenaga Kerja Aktivitas Persentase 6 Quality Assurance Quality Assurance 1% 7 Testing Documentation 8% Evaluation And Testing Total 100.00%

## 3. ANALISA DAN PEMBAHASAN

## 3.1 Analisis Perhitungan Crude Function Points (CFP)
Tabel  5  berikut ini adalah Tabel perhitungan Crude Function Points (CFP) di  sistem BKD (Beban Kinerja Dosen). Pada Tabel 5 terdapat kolom EI atau External Input digunakan untuk penilaian pada input sistem pada proyek perangkat lunak.  Kolom  EO  atau External  Output digunakan  untuk  penilaian  pada output sistem  pada  proyek  perangkat lunak.Kolom EQ atau External Inquiry digunakan untuk penilaian pada inquiry sistem pada proyek perangkat lunak. Kolom  ILF  atau Internal  logical  File digunakan  untuk  penilaian  pada  logika  sistem  pada  proyek  perangkat  lunak. Kolom ELF atau External Logical File digunakan untuk penilaian pada interface sistem pada proyek perangkat lunak. Sedangkan di kolom mudah, sedang dan kompleks berisi nilai dikalikan bobot masing-masing komponen. Sedangkan kolom  Skor  berisi  jumlah  dari  point  masing  –  masing  komponen.  Di  Tabel  5  terdapat  baris  Total  CFP yang  berisi jumlah skor dari semua komponen.

## Tabel 5. Perhitungan CFP

## 3.2 Analisis perhitungan Relative Complexity Adjusment Factor (RCAF)
Tabel 6 berikut adalah perhitungan RCAF dari sistem BKD.  Penilaian kompleksitas memiliki skala 1 sampai dengan 5. Dengan keterangan nilai sebagai berikut : 1= Insidental, 2= Moderat, 3= Rata-rata, 4= Signifikan dan 5= Essential. Untuk nilai Total RCAF didapat dari penjumlahan semua skor yang didapat dari modifikasi faktor kompleksitas.
Tabel 6. Perhitungan RCAF

## 3.3 Analisis Perhitungan Function Point (FP)
Pada rumus  (1) digunakan untuk menghitung nilai Function Point (FP). Di rumus berikut ini untuk mencari nilai FP maka dibutuhkan nilai Crude Function Points (CFP) dan nilai RCAF yang telah dihitung di Tabel 5 dan 6. FP = CFP × (0.65 + (0.01 × RCAF))
FP = 325 × (0.65 + (0.01 × 38))
Komponen Mudah Sedang Kompleks Skor External Inputs 120 48 12 180 External Outputs 72 60 7 139 Internal Logical Files 0 0 0 6 External Logical Files 0 0 0 0 External inquiry 0 0 6 0 Total CFP 325 No Modifikasi Faktor Kompleksitas Skor 1  Tingkat Kehandalan Dan Pemulihan Data 4 2  Tingkat Komunikasi Data 3 3  Tingkat Distribusi Pemrosesan Data 3 4  Tingkat Capaian Kinerja 4 5  Tingkat Konfigurasi Lingkungan 1 6  Tingkat Kapasitas Transaksi 1 7  Tingkat Efisiensi Pengguna 2 8  Tingkat Pembaruan File Induk 3 9  Tingkat Pembaruan Realtime Online 3 10  Tingkat Penggunaan Kembali 3 11  Tingkat Kemudahan Instalasi 2 12  Tingkat Kemudahan Penggunaan 4 13  Tingkat Variasi Organisasi Pengguna 3 14  Tingkat Kerentanan Terhadap Perubahan 2 Total RCAF 38
FP = 325 × (1,03) FP = 334.75

## 3.4  Analisis Perhitungan Nilai Effort
Pada rumus (2) terdapat perhitungan untuk mencari nilai Effort . Nilai effort didapat dari nilai FP yang dihitung di rumus (1) dan dikalikan dengan angka 8.2. untuk satuan dari nilai effort ialah man/hour
Effort = FP × 8.2 Effort = 334.75 × 8.2 Effort = 2744.95 man/hour

## 3.5  Mengkalkulasi Nilai Kloc
Untuk mengkalkulasi nilai Kloc maka harus menggunakan rumus (3). Didalam rumus (3) terdapat nilai FP yang telah dihitung di dalam rumus (1) dan dikalikan dengan angka 56. Dan nilai FP ke Kloc untuk sistem BKD ini ialah 18746.
Kloc = FP × 56 Kloc = 334.75 × 56 Kloc = 18746

## 3.6  Analisis Perhitungan Final Effort
Untuk  mencari  final  effort  maka  dibutuhkan  nilai  FP  yang  telah  dihitung  pada  rumus  (1).  Pada  rumus  (4)  untuk menghitung final effort maka nilai FP dibagi dengan nilai 18 lalu dikalikan dengan angka 22 dan 8.
Final Effort = ( 𝐹𝑃 18 ) × 22 × 8
Final Effort = ( 334.75 18 ) × 22 × 8 Final Effort = 18.60 × 22 × 8 Final Effort  = 3273.111

## 3.7 Analisis Pendistribusian Nilai Final Effort Ke Aktivitas
Pada Tabel 7 ialah Tabel pendistribusian nilai effort ke aktivitas. Pendistribusian ini memerlukan daftar aktivitas yang dilakukan dalam development  sistem BKD. Untuk yang dikolom persentase menggambarkan persentase tugas yang dilakukan di setiap aktivitas. Di Tabel 7 juga terdapat kolom effort, effort didapat dari hasil final effort yang terdapat di rumus(4) dikalikan dengan persentase aktivitas. Sedangkan kolom cost di dapat dari effort dikalikan dengan payrate / hour , payrate/hour di lihat dari standart gaji oleh Kelly Service [7].
Tabel 7. Pendistribusian nilai effort ke aktivitas

## 3.8 Analisis Pendistribusian ke Tenaga Kerja
Setelah pendistribusian ke masing-masing aktivitas di Tabel 7, maka masing-masing aktivitas di distribusikan kedalam tenaga kerja seperti pada Tabel 8. Dikolom total cost didapat dari jumlah cost masing-masing aktiftas per tenaga kerja.
Tabel 8. Pendistribusian ke tenaga kerja No Tenaga Kerja Aktivitas Persentase Cost Total Cost 1 Business Analyst Requirement 12 % 900,106 5,119,350 Specifications 4,219,245 2 Designer Design 5 % 2,025,238 2,025,238 No Aktivitas Persentase Effort ( final effort * persentase) Cost 1 Requirement 1.60 % 52.370 900,106 2 Specifications 7.50 % 245.483 4,219,245 3 Design 6.00 % 196.387 2,025,238 4 Training And Support 1.00 % 1702.018 17,552,058 5 Acceptance And Deployment 5.50 % 229.118 2,362,777 6 Integration Testing 7.00 % 180.021 1,856,468 7 Implementation 52.00 % 124.378 4,275,501 8 Project Management 3.80 % 140.744 4,838,067 9 Configuration Management 4.30 % 29.458 303,786 10 Quality Assurance 0.90 % 274.941 2,835,333 11 Documentation 8.40 % 32.731 337,540 12 Evaluation And Testing 2.00 % 65.462 675,079 Total 100.00 % 3273.111 42,181,198
3 Business Developer Training And Support 11 % 17,552,058 4,556,784 Acceptance And Deployment 2,362,777 Integration Testing 1,856,468 4 Programmer Implementation 42 % 4,275,501 4,275,501 5 Project Manager Project Management 22 % 4,838,067 9,113,569 Configuration Management 303,786 6 Quality Assurance Quality Assurance 1 % 2,835,333 2,835,333 7 Testing Documentation 8 % 337,540 3,510,412 Evaluation And Testing 675,079 Total 100.00 % 42,181,198 42,181,198

## 3. KESIMPULAN
Setelah dilakukan estimasi biaya perangkat lunak pada BKD (Beban Kinerja Dosen) di Universitas XYZ, maka disimpulkan bahwa apabila, institusi pendidikan tinggi, ingin mengembangkan aplikasi BKD untuk menunjang proses bisnisnya. Maka, kurang lebih biaya yang dibutuhkan adalah IDR 42,181,198

## REFERENCES
[1]  R. S. Dewi, A. P. Subriadi, and Sholiq, “A Modification Complexity Factor in Function Points Method for Software Cost Estimation Towards Public Service Application,” in Procedia Computer Science , 2017. [2]  T. N. Sharma et al. , “Estimasi Biaya Pembuatan Modul Enterprise Resource Planning (Erp) Untuk Unit Bisnis Pabrik Gula Di Pt. Perkebunan Xyz Dengan Metode Use Case Point,” J. Ilm. Teknol. Inf. , 2012.
[3]  R. S. Dewi, A. P. Subriadi, and S. Sholiq, “Use Case Point - Activity-Based Costing: Metode Baru untuk Mengestimasi Biaya Pengembangan Perangkat Lunak,” Sisfo , 2015.
[4]  J. Marchewka, “Information technology project management,” in Information technology project management , 2009.
[5]  Suharjito, S. Nanda, and B. Soewito, “Modeling software effort estimation using hybrid PSO-ANFIS,” in Proceeding - 2016 International Seminar on Intelligent Technology and Its Application, ISITIA 2016: Recent Trends in Intelligent Computational Technologies for Sustainable Energy , 2017. [6]  F.  P.  Laksamana,  A.  R.  Perdanakusuma,  and  M. C.  Saputra,  “Evaluasi  Biaya  Pengembangan  Sistem  Informasi  Pengelolaan Arsip  Surat  (  SIPAS  ) Menggunakan Function Point dan Object Point ( Studi Kasus : PT Sekawan Media Informatika ),” J. Pengemb. Teknol. Inf. dan Ilmu Komput. Univ. Brawijaya , vol. 2, no. 8, pp. 2692–2701, 2018.
[7]  R.  S.  Dewi,  T.  W.  Andari,  A.  P.  Subriadi,  and  Sholiq,  “Function  Points  Method  in  Game  Casual  Context,”  in Proceedings  of  2018  International Conference on Electrical Engineering and Computer Science, ICECOS 2018 , 2019.