penentuan nilai effort rate (er) pada metode use case point (ucp) untuk estimasi effort proyek...
TRANSCRIPT
JURNAL TEKNIK POMITS 1
Abstrak - Estimasi effort harus dilakukan oleh tim
proyek untuk memprediksi berapa jumlah pekerja dan berapa
lama waktu yang dibutuhkan, saat ini salah satu metode yang
sering digunakan untuk perhitungan estimasi adalah metode Use
Case Point (UCP). Metode UCP pertama kali di populerkan oleh
Karner pada tahun 1993. Metode ini banyak digunakan karena
berdasarkan beberapa hasil penelitian terkait UCP menjelaskan
bahwa metode UCP lebih baik daripada metode yang
dikembangkan oleh para ahli. Metode UCP mampu memberikan
estimasi effort dengan melakukan perkalian antara nilai UCP
dan nilai Effort Rate (ER). Nilai ER yang diusulkan oleh Karner
adalah 20 staff-hours yang didapatkan dari tiga data dan hanya
dilakukan perhitungan korelasi. Banyak penelitian dalam
perhitungan nilai ER yang mengacu pada nilai yang diusulkan
oleh Karner, namun hingga saat ini belum ada yang
memperdebatkan asal dari nilai ER tersebut.
Penelitian Tugas Akhir ini mengangkat peninjauan
ulang nilai ER yang dibutuhkan proyek pengembangan
perangkat lunak di bidang pendidikan. Dalam melakukan
penelitian ini, dibutuhkan beberapa jumlah data terkait
pengembangan proyek perangkat lunak di bidang pendidikan.
Data tersebut digunakan untuk mencari nilai ER. Metode yang
digunakan ialah dengan melakukan analisa korelasi dan
persamaan linear. Metode ini akan digunakan untuk mencari
hubungan pola dari masing-masing data, sehingga terbentuk
suatu garis persamaan linear dan menghasilkan nilai tangen.
Nilai tangen tersebut dapat digunakan untuk melakukan
perhitungan terhadap nilai ER.
Hasil akhir yang diharapkan dari penelitian ini berupa
nilai ER baru yang didapatkan dari data representative dari
Karner pada UCP untuk estimasi effort proyek pengembangan
perangkat lunak pendidikan. Yang kemudian nilai ER dapat
dijadikan acuan bagi pengembang software untuk melakukan
estimasi effort dalam proyek pengembangan perangkat lunak
pendidikan di masa mendatang.
Kata kunci: Effort Rate (ER), Estimasi Effort, Use Case Point
(UCP), Analisis Korelasi dan Persamaan Linier
I. PENDAHULUAN Saat ini, teknologi telah banyak berkembang,
dibuktikan oleh semakin banyak proyek pembuatan perangkat
lunak yang bermunculan. Salah satu tahapan terpenting dalam
melakukan manajemen proyek perangkat lunak adalah tahapan
planning atau perencanaan. Dalam tahapan planning, upaya
dan estimasi sumber daya harus sangat diperhitungkan,
dengan mempertimbangkan manusia (human resource),
material, infrastruktur, waktu, dan anggaran (Barbosa, 2004).
Akhir-akhir ini metode UCP menjadi topik menarik
dalam estimasi proyek perangkat lunak. Metode Use Case
Point (UCP) bukan metode baru, tetapi belum menjadi popular
meskipun mudah untuk dipelajari. Metode UCP ini menarik
diperbincangkan karena berdasarkan hasil penelitian,
menunjukkan bahwa metode UCP dapat berhasil digunakan
untuk memperkirakan effort pengembangan perangkat lunak
(Bente Anda, 2002).
Metode UCP adalah metode yang mampu untuk
memberikan estimasi effort (orang per jam) yang diperlukan
untuk membuat suatu proyek (Karner, 1993), metode ini
pertama kali dipopulerkan oleh Karner pada tahun 1993.
Setelah mengalami banyak pengembangan yang telah
dilakukan oleh beberapa penelitian membuktikan bahwa
metode UCP lebih baik dari perkiraan para ahli (expert
judgment). Perbandingan estimasi effort dengan upaya (effort)
yang sebenarnya menggunakan metode UCP memiliki deviasi
sebesar 19% (Karner, 1993), sementara estimasi para ahli
memiliki deviasi sebesar 20% yang dipopulerkan oleh Anda
(Bente Anda, 2002). Penelitian lain menunjukkan terjadi
deviasi sebesar 6% yang dihasilkan oleh Nageswaran
(Nageswaran, 2001). Pendapat terakhir yang dikemukakan
oleh Carrol menunjukkan terjadi deviasi sebesar 9%.
Metode UCP ini sangat penting untuk melakukan
estimasi effort, dimana nilai dari estimasi effort didapat dari
hasil perkalian antara nilai UCP dan nilai Effort Rate (ER).
Nilai Effort Rate (ER) adalah nilai yang dijadikan variabel
untuk menghitung effort.
Effort Rate (ER) pertama kali dipopulerkan oleh karner
pada tahun 1993, memiliki nilai 20 staff-hours yang dihasilkan
dari penggunaan tiga data proyek pengembangan perangkat
lunak (Karner, 1993). Pada tahun 1998 Schneider & Winters
mengusulkan nilai ER sebesar 20, 28, dan 30 staff-hours
dengan menggunakan dasar kompleksitas proyek yang
mengacu pada Technical Complexity Factor (TCF)
(Schneider, 1998). Diusulkan oleh Clemmons pada tahun 2006
nilai ER sebesar 18 staff-hours yang berdasarkan kualitas tim
proyek dan data historis (Clemmons, 2006). Pada tahun 2011
nilai ER mengalami perkembangan yang berkisar antara 4
sampai 35 staff-hours yang dipopulerkan oleh Ochodek pada
tahun 2011 berdasarkan dari perhitungan 14 proyek perangkat
lunak yang telah selesai (Ochodeck, 2011).
Setelah melalui berbagai penelitian terhadap
perhitungan nilai ER, maka ditemukan adanya permasalahan,
yakni para ahli dalam pengembangan penelitiannya masih
menggunakan acuan nilai ER yang diusulkan oleh Karner, 20
staff-hours. Nilai ER tersebut didapatkan dari tiga data proyek
pengembangan perangkat lunak dengan menggunakan analisis
regresi (Karner, 1993). Dasar analisa dari tiga data yang
diperoleh Karner tersebut masih bisa diperdebatkan lagi,
karena Karner tidak menggunakan analisis korelasi antar data
untuk membentuk persamaan regresi, sedangkan analisis
PENENTUAN NILAI EFFORT RATE (ER) PADA METODE
USE CASE POINT (UCP) UNTUK ESTIMASI EFFORT
PROYEK PENGEMBANGAN PERANGKAT LUNAK DI
BIDANG PENDIDIKAN
Irine Dwi Kenestie, Sholiq
Jurusan Sistem Informasi, Fakultas Tekhnologi Informasi, Institut Teknologi Sepuluh Nopember (ITS)
Jl. Raya ITS Kampus ITS Sukolilo, Surabaya 60111
E-mail: [email protected]
JURNAL TEKNIK POMITS 2
regresi terhadap tiga data diskrit tersebut cenderung tidak
akurat.
Penelitian Tugas Akhir ini akan mengangkat pengkajian
ulang terhadap nilai ER yang dibutuhkan proyek
pengembangan perangkat lunak. Penelitian ini merupakan
bagian dari proyek besar yang meliputi pengembangan
perangkat lunak Pemerintahan, Rumah Sakit, dan proyek
pengembangan Website Pemerintahan. Karena titik critical
pada penelitian ini terdapat dalam hal pengumpulan data,
sehingga perlu untuk di fokuskan terhadap satu domain. Oleh
karena itu, penelitian ini mengangkat pengkajian ulang
terhadap nilai ER terhadap proyek pengembangan perangkat
lunak pendidikan.
II. KAJIAN PUSTAKA
2.1 Penelitian Effort Rate (ER) Sebelumnya
Gambar 2. 1 Penelitian Nilai Effort Rate (ER) Sebelumnya
Dari Gambar 2.1 di atas dapat disimpulkan nilai
Effort Rate (ER) yang digunakan oleh para peneliti memiliki
variasi dengan dasar penentuan yang berbeda-beda. Karner
mengusulkan nilai ER sebesar 20 staff-hours dengan
menggunakan tiga data proyek pengembangan perangkat
lunak (Karner, 1993). Schneider & Winters mengusulkan nilai
ER sebesar 20, 28 dan 36 staff-hours menggunakan dasar
kompleksitas proyek dengan mengacu pada Technical
Complexity Factor (TCF) (Schneider and Winters, 19989).
Clemmons mencontohkan nilai ER sebesar 18 staff-hours
dengan menggunakan dasar kualitas personil tim dan data
historis (Clemmons, 2006). Ochodek mendapatkan nilai ER
berkisar antara 4 sampai 35 staff-hours yang dihitung dari
proyek-peroyek yang telah dilakukan.
Peneliti lainnya dalam penelitiannya ada yang
menggunakan nilai ER yang diusulkan Karner atau Schneider
& Winter, ada juga yang menggabungkan keduanya. Dan
menurut Clemmons dan Ochodek jika tidak ada data historis
(data proyek masa lalu)maka diharuskan menggunakan nilai
default yang diusulkan oleh Karner yaitu 20 staff-hours.
Nilai Effort Rate (ER) yang digunakan oleh sebagaian
besar peneliti yaitu sebesar 20 staff-hours seperti yang
pertama kali diusulkan oleh Karner, namun Karner hanya
menggunakan tiga data proyek pengembangan perangkat
lunak dengan menggunakan analisis regresi. Analisis regresi
dengan menggunakan tiga data diskrit cenderung tidak akurat.
Analisis korelasi antar data untuk membentuk persamaan
regresi juga tidak dilakukan.
2.2 Estimasi Effort Perangkat Lunak Terdapat beberapa aspek penting dalam tahapan
planning pada pelaksanan proyek perangkat lunak, salah
satunya yaitu melakukan estimasi atau perkiraan, baik dari
segi biaya, waktu maupun sumber daya. Definisi dari estimasi
adalah sebuah pengukuran yang didasarkan pada hasil secara
kuantitatif atau dapat diukur dengan angka tingkat akurasinya
(Tockey, 2004). Definisi dari estimasi perangkat lunak adalah
suatu kegiatan melakukan prediksi atau ramalan mengenai
keluaran dari sebuah proyek dengan meninjau jadwal, usaha,
biaya hingga ke resiko yang akan ditanggung dalam proyek
(Tockey, 2004).
2.3 Metode Use Case Point (UCP) Gustav Karner mengembangkan metode Use Case
Point (UCP) yang merupakan turunan atau adaptasi dari
metode Function Point Analysis (FPA) yang tujuannya adalah
untuk menyediakan metode estimasi sederhana yang
disesuaikan dengan orientasi pada objek proyek perangkat
lunak (Karner, 1993).
Langkah-langkah yang dilakukan dalam proses
estimasi effort dengan metode Use Case Point (UCP)
digambarkan dalam Gambar 2.2 berikut ini:
Gambar 2. 2 Langkah-langkah Metode Use Case Point (UCP)
2.3.1 Menghitung Unadjusted Use Case Point (UUCP)
Unadjusted Use Case Point (UUCP) didapatkan dari
penjumlahan Unadjusted Use Case Weights (UUCW) dengan
Unadjusted Actor Weights (UAW).
UUCP = UUCW + UAW
1) Unadjusted Use Case Weights (UUCW)
Langkah pertama adalah menentukan kategori use case
apakah sebagai simple, medium atau complex. Tergantung
dari jumlah transaksi yang dilakukan dalam deskripsi use
case.
Tabel 2. 1 Tipe, Bobot dan Deskripsi Use Case
Tipe
Use Case Bobot Deskripsi Use Case
Simple 5 Menggunakan ≤ 3 transaksi
Medium 10 Menggunakan 4 sampai 7
transaksi
Complex 15 Menggunakan > 7 transaksi
Total Unadjusted Use Case Weights (UUCW)
didapat dari menghitung berapa banyak (total) use case dari
masing-masing tipe (tingkat kompleksitas) dikali dengan
bobot masing-masing tipe sesuai dengan Tabel 1.
2) Unadjusted Actor Weights (UAW)
Langkah pertama adalah menentukan kategori aktor
apakah sebagai simple, medium atau complex.
Tabel 2. 2 Tipe, Bobot dan Deskripsi Actor
Tipe Aktor Bobot Deskripsi Aktor
JURNAL TEKNIK POMITS 3
Simple 1 Berinteraksi melalui API,
seperti Command Prompt
Medium 2 Berinteraksi melalui
Protokol, seperti TCP/IP
Complex 3 Berinteraksi melalui GUI
atau Web Page
Total Unadjusted Actor Weights (UAW) didapat dari
menghitung berapa banyak (total) actor dari masing-masing
tipe (tingkat kompleksitas) dikali dengan bobot masing-
masing tipe sesuai dengan Tabel 2.
2.3.2 Menghitung Technical Complexity Factor (TCF)
Tabel 2. 3 Technical Factor dan Bobot
Technical Factor Bobot
1. Distributed System Required 2
2. Response Time Is Important 1
3. End User Efficiency 1
4. Complex Internal Processing Required 1
5. Reusable Code Must Be A Focus 1
6. Installation Easy 0.5
7. Usability 0.5
8. Cross-Platform Support 2
9. Easy To Change 1
10. Highly Concurrent 1
11. Custom Security 1
12. Dependence On Third-Part Code 1
13. User Training 1
Nilai-nilai pada technical factor tersebut dikalikan
dengan bobot nilai masing-masing, kemudian dijumlah untuk
mendapatkan Total Technical Factor (TF), yang kemudian
digunakan untuk mendapatkan nilai Technical Complexity
Factor (TCF).
TCF = 0.6 + (0.01*TF)
2.3.3 Menghitung Environmental Complexity Factor
(ECF)
Tabel 2. 4 Environmental Factor dan Bobot
Environmental Factor Bobot
1. Familiarity with the Project 1.5
2. Application Experience 0.5
3. OO Programming Experience 1
4. Lead Analyst Capability 0.5
5. Motivation 1
6. Stable Requirements 2
7. Part Time Staff -1
8. Difficult Programming Language -1
Nilai-nilai pada enviromental factor tersebut
dikalikan dengan bobot nilai masing-masing, kemudian
dijumlah untuk mendapatkan Total Enviromental Factor (EF),
yang kemudian digunakan untuk mendapatkan Enviromental
Complexity Factor (ECF).
ECF = 1.4 + (-0.03*EF)
2.3.4 Menghitung Effort Rate (ER) Effort rate adalah rasio jumlah staff-hours per use
case point berdasarkan proyek-proyek di masa lalu. Jika
proyek tersebut merupakan proyek baru dan tidak terdapat
data histori yang telah terkumpul, maka digunakan nilai yang
berkisar antara 15 sampai 30. Namun, nilai yang paling sering
dipakai adalah angka 20 [13]. Rumus perhitungan estimasi
effort menggunakan metode UCP adalah sebagai berikut :
Apabila nilai ER dihitung dari satu proyek saja maka
nilai ER didapatkan dari pembagian antara nilai actual effort
dengan nilai UCP, sebagai berikut :
2.4 Analisis Regresi dan Korelasi
2.4.1 Regresi
Analisis regresi merupakan hubungan ketergantungan
antara satu variabel tak bebas (dependent variabel) dengan
satu atau lebih variabel bebas (independent variabel) dengan
tujuan untuk memperkirakan nilai rata-rata dari variabel tak
bebas, apabila variabel bebasnya sudah diketahui [15].
Variabel bebas dilambangkan dengan X dan variabel tak bebas
dilambangkan Y. Untuk mengetahui hubungan antara variabel
bebas dengan variabel tak bebas dengan mencari bentuk
terdekat dari hubungan tersebut dalam sebuah diagram pencar,
dimana setiap datanya dinyatakan dalam bentuk koordinat
(x,y). Berikut persamaan matematiknya:
2.4.2 Korelasi
Analisis korelasi merupakan analisis terhadap
kekuatan hubungan antara variabel bebas X dengan variabel
tak bebas Y. Umumnya analisis korelasi digunakan, dalam
hubungannya dengan analisis regresi, untuk mengukur
ketepatan garis regresi dalam menjelaskan variasi nilai
variabel dependent. Koefisien korelasi linier adalah ukuran
hubungan linier antara satu variabel x dengan satu variabel y,
dan dilambangkan dengan “r”[15]. Berikut rumus untuk
mengukur koefisien korelasi:
III. METODOLOGI
JURNAL TEKNIK POMITS 4
Penggalian Informasi
Actual Effort UCP
Analisis Korelasi dan
Persamaan Linear
Effort Rate (ER)
Start
End
Gambar 3. 1 Flowchart Metode Penelitian
3.1 Penggalian Informasi Penggalian informasi digunakan untuk mendapatkan
data-data yang digunakan dalam pengerjaan tugas akhir.
Dilakukan dengan dua cara yakni, wawancara dan review
dokumen. a) Wawancara
Output dari hasil wawancara ini nantinya diperoleh
data mengenai jumlah lama waktu pengerjaan proyek, dan
jumlah pegawai yang dibutuhkan untuk pengerjaan proyek,
serta faktor-faktor yang mempengaruhi (faktor teknikal dan
faktor lingkungan).
b) Kuisioner
Output dari hasil kuisioner ini nantinya diperoleh
faktor-faktor yang mempengaruhi (faktor teknikal dan faktor
lingkungan) beserta bobot masing-masing faktor pada
pengerjaan proyek perangkat lunak.
c) Review Dokumen
Output dari review dokumen ini adalah diperoleh hasil
list-list use case yang dibutuhkan. Kemudian hasil dokumen
ini dapat digunakan untuk menghitung Use case point
(UCP).
3.2 Perhitungan Actual Effort Setelah mendapatkan data yang dibutuhkan, maka
langkah selanjutnya dilakukan perhitungan actual effort untuk
mengetahui nilai actual effort dari masing-masing proyek.
Perhitungan actual effort dilakukan dengan rumus
sebagai berikut:
Actual Effort = ∑ Pegawai * ∑ Anggota tim proyek
3.3 Perhitungan Use Case Point (UCP) Dari data yang didapatkan dari kuisioner dan review
dokumen yaitu list use case, actor, techinal factor dan
environmental factor, maka dilakukan perhitungan Use Case
Point (UCP). Berikut merupakan langkah-langkah yang harus
dilakukan dalam menghitung nilai UCP:
a) Menghitung Unadjusted Use Case Point (UUCP)
Untuk mendapatkan hasil Unadjusted Use Case Point
(UUCP), maka dilakukan pembobotan dan skoring terkait
kompleksitas use case dan actor ditinjau dari use case
diagram. Skoring dihitung berdasarkan parameter-parameter
yang telah ditentukan.
b) Menghitung Technical Complexity Factor (TCF) dan
Environmental Complexity Factor (ECF)
Untuk mengetahui Technical dan Environmental
ComplexityFactor, telah ada beberapa parameter pengukuran
dengan disertai bobotnya. Namun untuk pemberian nilai
terhadap masing-masing parameter tersebut membutuhkan
penilaian obyektif yang didapatkan melalui manajer proyek
atau tim proyek.
Output dari pehitungan Use Case Point (UCP) yaitu
nilai UCP dari masing-masing proyek, berikut rumusnya:
UCP = TCF * ECF * UUCP
3.4 Analisis Korelasi dan Persamaan Linier Korelasi merupakan teknik statistik yang digunakan
untuk meguji ada/tidaknya hubungan serta arah hubungan
dari dua variabel atau lebih. Regresi merupakan analisis
lanjutan dari korelasi untuk menguji sejauh mana pengaruh
variabel independen terhadap variabel dependen setelah
diketahui ada hubungan antara variabel tersebut.
Perhitungan Korelasi dan Regresi dengan
menggunakan SPSS dilakukan untuk mengetahui apakah hasil
dari perhitungan sudah valid. Serta untuk mencari variabel-
variabel bebas mana saja yang saling terikat atau berhubungan
dan mengetahui bentuk hubungan tersebut.
Output yang didapatkan dari tahapan ini adalah
mengetahui korelasi dan persamaan linier antara nilai UCP
dengan nilai actual effort. Selanjutnya digunakan untuk
mengetahui nilai tangen atau ER.
3.5 Perhitungan Nilai Effort Rate (ER) Setelah korelasi nilai actual effort dan nilai UCP
diketahui, serta persamaan linier diketahui, maka selanjutnya
nilai ER dari proyek pembuatan perangkat lunak dapat
diketahui dengan melakukan perhitungan:
( )
IV. HASIL DAN PEMBAHASAN
4.1 Hasil
4.1.1 Inisialisasi Proyek Perangkat Lunak Pada penelitian ini, studi kasus yang diteliti yaitu studi
kasus proyek pengembangan perangkat lunak di bidang
Pendidikan, antara lain dapat dilihat pada Tabel 4.1.
Tabel 4. 1 Inisialisasi Proyek Pengembangan Perangkat
Lunak
Kode
Proyek
Nama Proyek
Perangkat Lunak Teknologi
1
Aplikasi Kenaikan
Jabatan Fungsional
Dosen DI Jurusan Sistem
Informasi ITS
JSP,
MySQL
2
Sistem Administrasi
Kesiswaan Madrasah
Aliyah di Pondok
Pesantren Amanatul
PHP,
MySQL
JURNAL TEKNIK POMITS 5
Kode
Proyek
Nama Proyek
Perangkat Lunak Teknologi
Ummah Surabaya
3
Sistem Informasi
Kemahasiswaan Dan
Alumni Untuk
Pengembangan Sistem
Informasi Terintegrasi
Sesuai Kebutuhan
Pengisian Borang
Akreditasi BAN-PT Pada
Jurusan Sistem Informasi
ITS
JSP,
MySQL
4
Sistem Monitoring Tugas
Akhir (TA) Untuk
Pengembangan Sistem
Informasi Terintegrasi
Sesuai Kebutuhan
Pengisian Borang
Akreditasi BAN-PT Pada
Jurusan Sistem Informasi
ITS.
JSP,
MySQL
5
Sistem
Pendokumentasian
Kegiatan Penelitian,
Pelayanan/Pengabdian
Masyarakat, dan Sistem
Kerjasama Untuk
Pengembangan Sistem
Infromasi Terintegrasi
Sesuai Kebutuhan
Pengisian Borang
Akreditasi BAN-PT Pada
Jurusan Sistem Informasi
ITS
JSP,
MySQL
6 Aplikasi Mobile School
Social Network
PHP,
JAVA,
HTML,
CSS
7 School Social Network
PHP,
JAVA,
HTML,
CSS
4.1.2 Nilai Actual Effort Nilai actual effort proyek perangkat lunak didapatkan
dari hasil wawancara yang dilakukan kepada tim pengembang
proyek perangkat lunak. Kemudian hasil wawancara berupa
informasi jumlah pekerja dan jumlah waktu yang dibutuhkan
untuk menyelesaikan proyek perangkat lunak tersebut
dikalikan, maka didapatkan nilai actual effort.
Berikut nilai actual effort dari keseluruhan proyek
perangkat lunak di bidang Pendidikan pada penelitian ini
dapat dilihat pada Tabel 4.2.
Tabel 4. 2 Nilai Actual Effort masing-masing Proyek
Kode
Proyek
Actual Effort
(staff/hours)
1 2355
2 2208
3 3350
4 3344
5 4568
6 2532
7 2340
4.1.3 Use Case Point (UCP) Estimation
4.1.3.1 Nilai Unadjusted Use Case Point (UUCP)
Untuk mendapatkan nilai Unadjusted Use Case Point
(UUCP) perlu dilakukan perhitungan terlebih dahulu terhadap
Unadjusted Use Case Weight (UUCW) dan Unadjusted Actor
Weight (UAW). Rumus untuk menghitung Unadjusted Use
Case Point (UUCP) yaitu :
UUCP = UUCW + UAW
1) Unadjusted Use Case Weight (UUCW) Nilai Unadjusted Use Case Weight (UUCW) didapat
dari menghitung berapa banyak (total) use case dari masing-
masing tipe (tingkat kompleksitas) dikali dengan bobot
masing-masing tipe.
Berikut hasil perhitungan nilai UUCW dari
keseluruhan proyek pengembangan perangkat lunak di bidang
Pendidikan pada penelitian ini dapat dilihat pada Tabel 4.3.
Tabel 4. 3 Nilai UUCW masing-masing Proyek
Kode
Proyek UUCW
1 125
2 160
3 160
4 340
5 345
6 260
7 175
2) Unadjusted Actor Weight (UAW) Nilai Unadjusted Actor Weight (UAW) didapat dari
menghitung berapa banyak (total) actor dari masing-masing
tipe (tingkat kompleksitas) dikali dengan bobot masing-
masing tipe.
Berikut hasil perhitungan nilai UAW dari keseluruhan
proyek pengembangan perangkat lunak di bidang Pendidikan
pada penelitian ini dapat dilihat pada Tabel 4.4.
Tabel 4. 4 Nilai UAW masing-masing Proyek
Kode
Proyek UAW
1 9
2 12
3 18
4 15
5 9
6 15
7 15
Setelah diketahui nilai UUCW dan UAW lalu
dilakukan perhitungan nilai Unadjusted Use Case Point
(UUCP) dengan menjumlahkan nilai UUCW dan UAW.
Berikut hasil perhitungan nilai UUCP dari
keseluruhan proyek pengembangan perangkat lunak di bidang
Pendidikan pada penelitian ini dapat dilihat pada Tabel 4.5.
JURNAL TEKNIK POMITS 6
Tabel 4. 5 Nilai UUCP masing-masing Proyek
Kode
Proyek UUCW UAW
UUCP
(UUCW+UAW)
1 9 125 134
2 12 160 172
3 18 160 178
4 15 340 355
5 9 345 354
6 15 260 275
7 15 175 190
4.1.3.2 Nilai Technical Complexity Factor (TCF) Nilai dari faktor teknis ini didapatkan dari kuisioner
terhadap pihak pengembang proyek perangkat lunak.
Kemudian nilai pada technical factor tersebut dikalikan
dengan bobot masing-masing faktor, selanjutnya dijumlah
untuk mendapatkan Total Technical Factor (TF), yang
kemudian digunakan untuk mendapatkan nilai Technical
Complexity Factor (TCF) dengan rumus perhitungan sebagai
berikut:
( )
Berikut ini hasil perhitungan nilai TCF dari
keseluruhan proyek pengembangan perangkat lunak di bidang
Pendidikan pada penelitian ini dapat dilihat pada Tabel 4.6.
Tabel 4. 6 Nilai TCF masing-masing Proyek
Kode
Proyek TCF
1. 1.085
2. 1.055
3. 1.14
4. 0.99
5. 1.005
6. 1.13
7. 1.14
4.1.3.3 Nilai Technical Complexity Factor (ECF) Nilai dari faktor lingkungan ini didapatkan dari
kuisioner terhadap pihak pengembang proyek perangkat lunak.
Kemudian nilai pada environmental factor tersebut dikalikan
dengan bobot masing-masing faktor, selanjutnya dijumlah
untuk mendapatkan Total Environmental Factor (EF), yang
kemudian digunakan untuk mendapatkan nilai Environmental
Complexity Factor (ECF) dengan rumus perhitungan sebagai
berikut:
ECF = 1,4 + (-0,03 * EF)
Berikut ini hasil perhitungan nilai ECF dari
keseluruhan proyek pengembangan perangkat lunak di bidang
Pendidikan pada penelitian ini dapat dilihat pada Tabel 4.7.
Tabel 4. 7 Nilai ECF masing-masing Proyek
Kode
Proyek ECF
1. 0.995
2. 0.77
3. 0.86
4. 0.875
5. 0.92
6. 0.8
7. 0.62
4.1.3.4 Nilai Use Case Point (UCP) Setelah dilakukan perhitungan nilai UUCP, TCF dan
EFC selanjutnya dilakukan perhitungan nilai Use Case Point
(UCP) yaitu dengan mengalikan nilai UUCP, TCF dan EFC
yang telah diketahui.
Berikut hasil perhitungan nilai UCP dari keseluruhan
proyek pengembangan perangkat lunak di bidang Pendidikan
pada penelitian ini dapat dilihat pada Tabel 4.8.
Tabel 4. 8 Nilai UCP masing-masing Proyek
Kode
Proyek UUCP TCF ECF
UCP (UUCP*TCF*ECF)
1. 134 1.085 0.995 144.7
2. 172 1.055 0.77 139.7
3. 178 1.14 0.86 174.5
4. 355 0.99 0.875 307.5
5. 354 1.005 0.92 327.3
6. 275 1.13 0.8 248.6
7. 190 1.14 0.62 134.3
4.1.4 Effort Rate (ER)
Untuk menghitung Effort Rate (ER) yaitu
menggunakan nilai actual effort dan nilai UCP, kemudian
dilakukan analisis korelasi dan persamaan linier (garis
regresi). Berikut nilai actual effort beserta nilai UCP dari
keseluruhan proyek pengembangan perangkat lunak di bidang
Pendidikan pada penelitian ini dapat dilihat pada Tabel 4.9.
Tabel 4. 9 Nilai Actual Effort dan UCP masing-masing
Proyek
Kode
Proyek Actual Effort UCP
1. 2355 144.7
2. 2208 139.7
3. 3350 174.5
4. 3344 307.5
5. 4568 327.3
6. 2532 248.6
7. 2340 134.3
4.1.4.1 Analisis Korelasi
Berikut hasil analisis korelasi antara nilai actual effort
dengan nilai UCP dari keseluruhan proyek pengembangan
perangkat lunak di bidang Pendidikan pada penelitian ini
dapat dilihat pada Gambar 4.1.
JURNAL TEKNIK POMITS 7
Gambar 4. 1 Hasil Korelasi Nilai Actual Effort dengan Nilai
UCP
Dari hasil output SPSS terlihat bahwa koefisien
korelasi Pearson sebesar 0,791 dimana dapat disimpulkan
bahwa antara nilai actual effort dengan nilai UCP terdapat
hubungan korelasi. Hubungan korelasi antara kedua variabel
tersebut adalah sangat kuat yang ditunjukkan dengan nilai
korelasi mendekati +1. Dengan Sig.(2-tailed) sama dengan
0.00 < 0.05 dapat disimpulkan bahwa terdapat hubungan yang
signifikan antara kedua variabel.
4.1.4.2 Persamaan Linier (Regresi)
Berikut hasil regresi dan persamaan linier antara nilai
actual effort dengan nilai UCP dari keseluruhan proyek
pengembangan perangkat lunak di bidang Pendidikan pada
penelitian ini dapat dilihat pada Gambar 4.2 dibawah ini.
Gambar 4. 2 Tabel Anova dan Tabel Coefficients dalam SPSS
Gambar 4. 3 Kurva Nilai Actual Effort dengan Nilai UCP
Dari hasil output SPSS pada Gambar 4.3 terlihat
bahwa kurva membentuk garis lurus/linier dengan scatterplot
mendekati garis namun menyebar, hal ini dikarenakan
diketahui besar hasil korelasi sebesar 0,791. Berdasarkan tabel
Anova pada Gambar 4.2 diatas dapat dilihat dari nilai F =
8,341 dan dibandingkan dengan Ftabel (df1:1, df2:5) serta
diketahui besarnya signifikan = 0.00 < 0.05 maka artinya
persamaan regresi dapat digunakan untuk prediksi [17].
Pada analisis regresi, terdapat variabel terikat
(dependen) dan variabel bebas (independen). Variabel terikat
pada analisa regresi ini yaitu nilai actual effort (y), sedangkan
variabel bebas yaitu nilai UCP (x).
Berdasarkan tabel Coefficient pada Gambar 4.2 yang
telah dijelaskan diatas dapat dilihat pada kolom B, Constant =
1230.787 dan UCP = 8.182. Sehingga persamaan liniernya
adalah:
4.1.4.3 Nilai Effort Rate (ER) Setelah korelasi antara nilai actual effort dengan nilai
UCP diketahui, serta persamaan linier telah dibentuk, maka
selanjutnya nilai Effort Rate (ER) dari proyek pengembangan
perangkat lunak di bidang Pendidikan dapat diketahui dengan
melakukan perhitungan nilai tangen θ. Langkah pertama yaitu
mengambil garis singgung dari scatterplot pada garis regresi
tersebut. Pada persamaan linier ini akan diambil nilai y1,x1 dan
y2,x2. Perhitungan garis singgung seperti berikut:
Persamaan linier:
Diketahui: x1 = 134.3
Maka: y1 = 1230.787 + 8.182 * 134.3
= 1230.787 + 1098.8426
= 2329.6296
Diketahui: x2 = 327.3
Maka: y2 = 1230.787 + 8.182 * 327.3
= 1230.787 + 2677.9686
= 3908.7556
Setelah mengetahui nilai y1,x1 dan y2,x2 maka langkah
selanjutnya yaitu mencari nilai ER dengan melakukan
perhitungan nilai tangen θ. Perhitungan nilai ER atau nilai
tangen θ seperti berikut:
( )
JURNAL TEKNIK POMITS 8
Diketahui: y1 = 2329.6296
y2 = 3908.7556
x1 = 134.3
x2 = 327.3
Maka:
( )
( )
( )
( )
Dari perhitungan di atas telah diketahui nilai Effort
Rate (ER) proyek pengembangan di bidang Pendidikan
sebesar .
4.2 Pembahasan
4.2.1 Analisis Nilai Effort Rate (ER)
Pada penelitian peninjauan ulang nilai Effort Rate (ER)
proyek perangkat lunak di bidang Pendidikan ini didapatkan
nilai ER sebesar 8.1. Nilai ER tersebut jauh lebih kecil
dibandingkan oleh nilai ER yang dikemukakan oleh Karner
yaitu sebesar 20. Hal ini dimungkinkan karena beberapa
alasan, sebagai berikut:
1) Metode software engineering
Metode software enginering memberikan teknik-teknik
bagaimana mengembangkan perangkat lunak. Terdiri dari
serangkaian tugas seperti perencanaan dan estimasi proyek.
Ada banyak macam model dalam metode pengembangan
perangkat lunak, yaitu waterfall, prototyping, spiral dan lain-
lain.
Dengan adanya metode pengembangan perangkat lunak
atau yang disebut dengan System Development Life Cycle
(SDLC) akan memudahkan pengembang proyek perangkat
lunak dalam mengakomodasi beberapa kebutuhan. Selain itu
pekerjaan dapat dilakukan dalam pola yang tepat, produk
dicapai dalam waktu yang telah ditentukan dan biaya
menjadi efektif.
Misalnya seperti pada Proyek 1 menggunakan
metode Extreme Programming (XP), Proyek 2
menggunakan Waterfall, dan Proyek 3 menggunakan
metode Unifed Process (UP).
2) Teknologi software engineering
Semakin berkembangnya teknologi informasi maka
semakin berkembang pula tool untuk membantu dalam men-
develop perangkat lunak. Jika dahulu programmer mengetik
baris-baris program dalam console atau layar gelap, kini
tinggal memilih software tool pembuatan pemograman
sesuai bahasa pemograman yang dipilih. Selain itu, kini
dapat mengetik baris program, mendesain tampilan
(interface), mengkompilasinya, dan kemudian membuat file
executable (.exe) serta mengkoneksikannya dengan
database.
Telah banyak software tool yang dapat membantu
dalam pengembangan perangkat lunak. Berikut kegiatan-
kegiatan dalam pengembangan perangkat lunak yang dapat
dimudahkan karena kemajuan teknologi software
enginering:
a. Membuat rencana proyek
Salah satu software tool yang dapat digunakan untuk
membuat rencana proyek yaitu Microsoft Project. Pada tool
tersebut telah disediakan fitur-fitur dalam menyusun rencana
kegiatan proyek dari awal sampai akhir (finish), beserta
peran-peran yang terlibat dalam proyek tersebut.
b. Analisa kebutuhan
Pada tahap kegiatan analisa kebutuhan, telah ada
beberapa software tool untuk memudahkan pengembang
dalam kegiatannya. Beberapa tool yang digunakan pada
kegiatan analisa kebutuhan yaitu Ms. Visio, Process analyst
dan lain-lain. Pada proses pembuatan analisa kebutuhan,
pengembang hanya perlu melakukan drag and drop pada
tool tersebut.
c. Desain tampilan dan basis data
Untuk mendesain tampilan maupun basis data telah
ada tool, seperti Netbeans, Dreamweaver, SQL, Xampp,
EnterpriseArchitecture(EA), Power Designer. Sehingga
dapat memudahkan pengembang dalam medefinisikan
kebutuhan ke dalam sistem.
d. Membuat kode program (coding)
Pembuatan kode program lebih dipermudah dengan
adanya bahasa coding seperti PHP, ASP, Java dan lain-lain.
Serta software tool yang dapat mendukung bahasa coding
tersebut, antara lain: Eclipse, Netbeans, JDeveloper, Visual
Studio dan masih banyak lainnya.
e. Membuat database
Dalam membuat database, kini telah banyak jenis
basis data yaitu MySQL, Oracle, PostgreSQL dan lain-lain.
Selain itu ada software tool yang dapat digunakan untuk
menunjang basis data tersebut, seperti SQLyog, SQL
Developer, DbVisualizer dan lain-lain.
3) Software by component
Saat ini para pengembang perangkat lunak dalam men-
develop perangkat lunak dimudahkan juga dengan
menggunakan komponen-komponen yang telah ada.
Komponen tersusun atas kelas-kelas yang re-usable dan
bersifat iteratif.
Sebagai contoh, Microsoft Vsual Basic versi 5.0 telah
menyediakan teknologi komponen Microsoft ActiveX yang
bertujuan untuk digunakan di internet, intranet dan
lingkungan tradisional client.
4) Source dari internet
Berbagai literatur bisa didapatkan dari internet. Selain
itu source code juga dapat dicari di internet, hal tersebut
dapat memudahkan pengembang perangkat lunak dalam hal
melakukan tahapan kegiatan-kegiatan pengembangan
perangkat lunak. Serta adanya referensi dan contoh proyek
perangkat lunak yang serupa atau memiliki jenis yang sama
dengan perangkat lunak yang sedang dikembangkan
sehingga dapat dijadikan rujukan dalam pengembangan
perangkat lunak dan dapat mengefisiensi waktu pengerjaan.
Dengan beberapa alasan yang telah dijabarkan di atas,
dapat terlihat bahwa saat ini effort yang dibutukan
pengembang perangkat lunak tidak sebesar effort yang
dibutuhkan pada jaman dahulu, karena adanya
perkembangan teknologi yang pesat.
JURNAL TEKNIK POMITS 9
4.2.2 Perbandingan Cara Perhitungan Use Case
Pada jurnal Ochodek tahun 2011 dilakukan perhitungan
estimasi effort dengan metode Use Case Point (UCP), dalam
penelitian tersebut juga dilakukan perhitungan nilai ER.
Ochodek melakukan perhitungan dengan dua pendapat, yaitu
transactions (T) dan steps (S) [8]. Transactions dikemukan
oleh Robiolo dimana transaction diidentifikasi menggunakan
pendekatan stimulus dan kata kerja (aktivitas) antara actor dan
sistem [29]. Sedangkan steps, tanpa mengacu pada use case
lainnya (include dan extend relations), jumlah use case
sebelum review spesifikasi ditempatkan dalam satu golongan.
Perhitungan use case dengan dua pendapat tersebut
menghasilkan nilai ER yang berbeda. Nilai ER steps
cenderung lebih kecil dibandingkan dengan nilai ER
transaction. Selain itu dengan menggunakan 14 proyek
perangkat lunak, didapatkan hasil nilai ER yang bervariasi,
antara nilai 3 sampai dengan 35 [8]. Berikut hasil perhitungan
nilai Productivity Factor (PF) yang dilakukan oleh Ochodeck
pada tahun 2011 dapat dilihat pada Gambar 4.9 dibawah ini.
Gambar 4. 4 Nilai ER Penelitian Ochodek
Kemudian diketahui nilai dari Actual Effort dan UCP
yang ditunjukan oleh Ochodeck, nilai Actual Effort dan UCP
dapat dilihat pada Tabel 4.10 berikut.
Tabel 4. 10 Nilai Actual Effort dan UCP dari Perhitungan
yang Dilakukan Oleh Ochodeck
No Kode Proyek Actual Effort UCP
1. A 3037 148
2. B 1917 55
3. C 1173 76
4. D 742 105
5. E 614 63
6. F 492 44
7. G 277 22
8. H 3593 304
9. I 1681 80
10. J 1344 74
11. K 1220 89
12. L 720 50
13. M 514 31
14. N 397 95
Dari data tersebut dilakukan perhitungan pada SPSS
kemudian diketahui nilai korelasi dan regresi dari 14 proyek
yang dikemukakan oleh Ochodeck.
Gambar 4. 5 Hasil Perhitungan Korelasi dari SPSS dari Data
yang Dikemukakan Ochodeck
Dari hasil output SPSS pada Gambar 4.5 diatas terlihat
bahwa koefisien korelasi Pearson sebesar 0,820 dimana dapat
disimpulkan bahwa antara nilai actual effort dengan nilai UCP
terdapat hubungan korelasi. Hubungan korelasi antara kedua
variabel tersebut adalah sangat kuat yang ditunjukkan dengan
nilai korelasi mendekati +1.
Gambar 4. 6 Hasil Perhitungan Regresi dari SPSS dari Data
yang Dikemukakan Ochodeck
Dari hasil output SPSS pada Gambar 4.6 diatas terlihat
bahwa kurva membentuk garis lurus/linier dengan scatterplot
mendekati garis. Berdasarkan tabel Anova pada Gambar 4.5
dapat dilihat dari nilai F = 8,341, maka artinya persamaan
regresi dapat digunakan untuk prediksi. Kemudian diketahui
nilai Effort Rate (ER) yang dihasilkan dari 14 proyek sebesar
24.725 staff-hours.
Nilai ER yang ditemukan dalam Tugas akhir ini
sebesar 8.182 staff-hours. Perbedaan nilai yang cukup besar
ini kemungkinan disebabkan karena adanya perbedaan jumlah
data yang diolah, pada penelitian yang dikemukakan oleh
Ochodeck dilakukan perhitungan terhadap 14 data proyek
perangkat lunak, sedangkan dalam tugas akhir ini perhitungan
hanya dilakukan pada 7 data perangkat lunak dalam bidang
pendidikan. Selain perbedaan jumlah data, kemungkinan dari
perbedaan nilai ER juga disebabkan oleh penelitian yang
dilakukan oleh Ochodeck dilakukan di luar negeri, dimana
pengembangan proyek perangkat lunak disana lebih
menekankan metode pembuatan perangkat lunak, sedangkan
di Indonesia proyek pengembangan perangkat lunak tidak
menekankan metode yang digunakan.
JURNAL TEKNIK POMITS 10
V. KESIMPULAN DAN SARAN
5.1 Kesimpulan Kesimpulan yang dapat diambil dari pengerjaan Tugas
Akhir ini ialah ditemukannya nilai Effort Rate (ER) baru
sebesar 8.182 staff-hours.
Kemudian diketahui nilai actual effort dan UCP dari
proyek pengembangan perangkat lunak diantaranya nilai
actual effort sebesar 1230.787 dan nilai UCP sebesar 8.182.
Nilai actual effort didapatkan dari hasil wawancara dengan
pihak pengembang proyek perangkat lunak di bidang
pendidikan yang diutamakan kepada project manager / project
leader. Sedangkan untuk nilai UCP sendiri didapatkan dari
dokumen use case atau dokumen flow of events proyek
perangkat lunak dibidang pendidikan. Setelah diketahui nilai
actual effort dan UCP maka diketahui nilai persamaan linear y
= 1230.787 + 8.182x.
Dari perhitungan melalui SPSS diketahui pula korelasi
antara nilai actual effort dan UCP pada penelitian ini sebesar
0.791, dan dapat disimpulkan hubungan kedua variabel
tersebut kuat dan berbanding lurus.
Setelah mendapatkan nilai ER dari 7 data proyek
perangkat lunak pendidikan dan kemudian dibandingkan
dengan nilai ER yang ditemukan oleh Karner terdapat
perbedaan nilai yang cukup jauh. Hal ini dimungkinkan karena
beberapa faktor yakni, semakin berkembangnya teknologi
informasi, banyaknya model metode pengembangan perangkat
lunak, adanya komponen pembuatan software, adanya
framework, dan tersedianya source code dari internet yang
memudahkan tim pengembang proyek perangkat lunak,
sehingga membuat nilai effort yang dibutuhkan semakin kecil
pula.
Faktor pengembangan teknologi ini menghasilkan banyaknya
source code repository yang memudahkan tim proyek untuk
melakukan pengembangan perangkat lunak, bahkan hingga
nantinya nilai effort tidak dapat digunakan sebagai acuan lagi
untuk melakukan pengembangan proyek perangkat lunak.
Sehingga nantinya yang akan menjadi acuan dari tim proyek
pengembangan perangkat lunak adalah aspek keindahan
desain dan kemudahan penggunaan aplikasi dari proyek
perangkat lunak yang akan dibangun.
5.2 Saran Beberapa hal yang diharapkan dapat dikembangkan
untuk penelitian berikutnya, yaitu:
1. Perlu dilakukan penelitian kembali dengan data proyek
pengembangan perangkat lunak yang berskala medium
atau large.
2. Jumlah studi kasus proyek pengembangan perangkat
lunak yang digunakan untuk penelitian selanjutnya
diharapkan diperbanyak jumlahnya, yaitu 30 data proyek
pengembangan perangkat lunak.
3. Perlu dianalisis lebih mendalam untuk menentukan
alasan penyebab nilai Effort Rate (ER).
4. Peninjauan ulang distribusi effort masing-masing
aktivitas proyek pengembangan perangkat lunak, karena
prosentase masing-masing aktivitas yang dikemukakan
oleh Kassem Shaleh pada tahun 2011 untuk proyek
pengembangan perangkat lunak berskala besar (large).
JURNAL TEKNIK POMITS 11
DAFTAR PUSTAKA
Barbosa da Silva, C.Monteiro., L. Denis Silva., da Cunha,
Adilson Marques. Applying The Use Case
Points Effort Estimation Technique To Avionics
Systems. IEEE, 2008.
Tockey, Steve. Return of Software: Maximizing the Return on
Your Software Investment. Prentice Hall, 2004.
Galorath, Daniel and Michael W Evans. Software Sizing,
Estimasi and Risk Management, Auerbach, 2006.
Muhardin, Endy. Estimasi Proyek Software. 2011.
Damodaran, Mel. Estimasi Using Use Case Point. 2002.
Anda, Bente. Comparing effort estimates based on use cases
with expert estimates. In Proceedings of Empirical
Assessment in Software Engineering (EASE 2002)
(Keele, UK, April 8-10,2002), 13 p, 2002.
Karner, Gustav. Resource Estimasi for Objectory Projects,
Objective System SF AB, 1993.
Nageswaran, Suresh.. Test Effort Estimasi Using Use Case
Points. June 2001
www.cognizant.com/cogcommunity/presentations/Test
_Effort_Estimasi.pdf, 2001.
Schneider, G. and Winters, J. Applying Use Cases – A
Practical Guide. Addison-Wesley, 1998.
Clemmons, Roy K. Project Estimasi With Use Case Point.
Diversified Technical Services, Inc, 2006.
Ochodek, M; Nawrocki, J; Kwarciak, K. Simplifying Effort
Estimasi Based on Use Case Points, Sciencedirect,
2011.
Carroll, Edward R. Estimating Software Based on Use Case
Points. 2005 Object-Oriented, Programming, Systems,
Languages, and Object Oriented Programming Systems
Languages and Applications (OOPSLA) Conference,
San Diego, CA, pp.257–265, 2005.
Kusumoto, Shinji., Matukawa, Fumikazu., Inoue, Katsuro.
Estimating Effort by Use Case Points: Method, Tool
and Case Study. IEEE, 2006.
Yavari, Yaeghoob., Afsharchi, Mohsen., Karami, Mojtaba.
Software Complexity Level Determination Using
Software Effort Estimasi Use Case Points Metrics.
IEEE, 2011.
Shodiq, Amri. 2007. Perencanaan Proyek Rekayasa Perangkat
Lunak. http://ilmukomputer.org/wp-
content/uploads/2007/09/amri-perencanaan-proyek-
rpl.doc. Diakses pada tanggal 7 Maret 2013.
Khatibi, V., & Jawawi, D. N. Software Cost Estimasi
Methods: A Review. Emerging Trends in Computing
and Information Sciences, 21-29, 2010.
Pressman, Roger S. Software Engineering: A Practioner's
Approach, 6th Edn., McGraw-Hill New York, USA.,
ISBN: 13: 9780073019338,2005.
Albrecht.A.J. and J. E. Gaffney. Software function, source
lines of codes, and development effort prediction: a
software science validation. IEEE Trans Software Eng.
SE,pp.639-648, 1983.
Boehm. Software Engineering Economics. Prentice Hall,1981.
Rizky, Soetam. Konsep Dasar Rekayasa Perangkat Lunak
Software Reengineering. Prestasi Pustaka, 2008.
Ochodek, M; Nawrocki, J; Kwarciak, K. Simplifying Effort
Estimasi Based on Use Case Points, Sciencedirect,
2011.
Usman, Husaini. Pengantar Statistika. Bumi Aksara, 2006.