BAB I
PENDAHULUAN
1.1 Latar Belakang Masalah
Pengukuran merupakan salah satu dasar dari semua disiplin ilmu teknik.
Rekayasa perangkat lunak dalam IEEE Standard 610.12 didefinisikan sebagai
berikut: “The application of a systematic, disciplined, quantifiable approach to
the development, operation, and maintenance of software; that is, the application
of engineering to software”. Seperti profesi di bidang teknik pada umumnya,
proses rekasaya perangkat lunak juga memiliki metrik.
Metrik digunakan oleh industri perangkat lunak untuk mengukur proses
pembuatan, operasi, dan perawatan perangkat lunak. Melalui metrik, dapat
diperoleh informasi-informasi berharga dan parameter-parameter sebagai bahan
evaluasi yang obyektif mengenai atribut-atribut dan status dari suatu
pengembangan perangkat lunak. Implementasi metrik perangkat lunak pada suatu
proses pengembangan perangkat lunak dan pada suatu produk perangkat lunak
melibatkan tahapan-tahapan kompleks yang memerlukan pembelajaran yang
berkelanjutan, yang pada akhirnya dapat memberikan pengetahuan mengenai
status dari suatu proses pembuatan perangkat lunak dan atau suatu produk dari
perangkat lunak.
Dengan melakukan evaluasi pada atribut-atribut yang ada dalam perangkat
lunak, dapat diperoleh status dari suatu perangkat lunak. Dari hal ini, situasi yang
ada dapat diidentifikasi dan diklasifikasikan, yang dapat digunakan untuk
membantu dalam mencari peluang-peluang baru yang bisa digunakan untuk
2
pengembangan dan perbaikan perangkat lunak. Evaluasi seperti ini pada akhirnya
dapat digunakan untuk membuat perencanaan dalam perubahan-perubahan yang
mungkin perlu diimplementasikan di masa yang akan datang. Atribut-atribut
yang diidentifikasi ini juga dapat digunakan sebagai referensi dan bahan
pertimbangan bagi proses pengembangan perangkat lunak lainnya.
Metrik perangkat lunak memiliki batasan-batasan yang luas. Metrik
perangkat lunak tergantung pada atribut-atribut perangkat lunak yang ingin dinilai
kuantitas dan kualitasnya. Secara umum, metrik perangkat lunak dibagi dalam dua
kelas yang berbeda, yaitu metrik yang digunakan pada proyek pengembangan
perangkat lunak dan metrik yang digunakan pada produk perangkat lunak.
Metrik pada proyek pengembangan perangkat lunak berhubungan dengan
tenaga dan pikiran yang diperlukan untuk menyelesaikan proyek, sumber daya
yang digunakan untuk menyelesaikannya, dan metodologi yang diterapkan,
misalnya: waktu yang diperlukan untuk menyelesaikan, tenaga ahli yang
diperlukan, biaya-biaya yang dikeluarkan, dan metodologi yang digunakan dalam
pembuatan perangkat lunak.
Banyak tipe dari atribut-atribut dari perangkat lunak yang dapat diukur.
Metrik yang diaplikasikan sangat bergantung pada sifat alamiah dari produk
perangkat lunak yang dibuat. Misalnya, ingin diketahui seberapa banyak
kebutuhan yang dimiliki oleh suatu proyek, spesifikasi perangkat lunak (untuk
memperkecil ambiguitas) dan kelengkapan yang digunakan untuk memenuhi
seluruh fungsi yang diperlukan. Pada produk dari suatu aplikasi, mungkin ingin
diketahui jumlah baris kode, kerumitan, fungsionalitas yang dipenuhi, jumlah
3
kesalahan yang mungkin dapat terjadi, dan jumlah ujicoba yang dilakukan untuk
memastikan bahwa semua keperluan sudah diimplementasikan. Di sisi lain,
reliabilitas dari suatu perangkat lunak dapat diukur ketika produk tersebut telah
didistribusikan kepada konsumen.
Para ahli di bidang rekayasa perangkat lunak sebenarnya belum berhasil
memutuskan metrik yang tepat yang dapat diterima secara universal. Selain itu
tiap orang biasanya menggunakan berbagai macam metode spesifik untuk
mengukur atribut-atribut yang berbeda dari perangkat lunak yang mereka buat.
Hal itu mengakibatkan banyak kontroversi yang timbul karena metrik-metrik yang
telah diterapkan sangat beragam. Para ahli di bidang rakayasa perangkat lunak
masih harus melalui jalan panjang untuk mencapai suatu rumusan metrik yang
tepat untuk melakukan evaluasi terhadap proses pengembangan dan produk dari
perangkat lunak.
1.2 Rumusan Masalah
Berdasarkan latar belakang permasalahan di atas, maka dalam tugas akhir
ini masalah yang dirumuskan adalah implementasi teori metrik perangkat lunak
dalam suatu proyek pengembangan perangkat lunak yang nyata.
1.3 Batasan Masalah
Sesuai dengan rumusan yang telah dipaparkan, maka batasan yang
diberlakukan dalam tugas akhir ini adalah implementasi teori mengenai metrik
perangkat lunak pada salah satu proyek pengembangan perangkat lunak yang
sedang dikerjakan. Metrik digunakan untuk melakukan estimasi tenaga kerja yang
4
diperlukan untuk mengembangkan perangkat lunak berdasarkan desain yang
diajukan. Metrik diterapkan pada fungsionalitas perangkat lunak. Bahasan tidak
mencakup estimasi elemen-elemen fisik seperti spesifikasi perangkat keras.
1.4 Tujuan Penulisan Tugas Akhir
Tujuan dari tugas akhir ini adalah mengimplementasikan teori mengenai
metrik perangkat lunak pada suatu proyek pembuatan perangkat lunak. Hasil yang
diharapkan adalah petunjuk yang digunakan untuk menghitung besar sumber daya
manusia yang diperlukan dalam suatu pengembangan perangkat lunak, yang
dihitung dengan satuan orang-jam.
1.5 Metodologi Penyusunan Tugas Akhir
Metode yang digunakan dalam penyusunan tugas akhir ini adalah
PENDAHULUAN
1.1 Latar Belakang Masalah
Pengukuran merupakan salah satu dasar dari semua disiplin ilmu teknik.
Rekayasa perangkat lunak dalam IEEE Standard 610.12 didefinisikan sebagai
berikut: “The application of a systematic, disciplined, quantifiable approach to
the development, operation, and maintenance of software; that is, the application
of engineering to software”. Seperti profesi di bidang teknik pada umumnya,
proses rekasaya perangkat lunak juga memiliki metrik.
Metrik digunakan oleh industri perangkat lunak untuk mengukur proses
pembuatan, operasi, dan perawatan perangkat lunak. Melalui metrik, dapat
diperoleh informasi-informasi berharga dan parameter-parameter sebagai bahan
evaluasi yang obyektif mengenai atribut-atribut dan status dari suatu
pengembangan perangkat lunak. Implementasi metrik perangkat lunak pada suatu
proses pengembangan perangkat lunak dan pada suatu produk perangkat lunak
melibatkan tahapan-tahapan kompleks yang memerlukan pembelajaran yang
berkelanjutan, yang pada akhirnya dapat memberikan pengetahuan mengenai
status dari suatu proses pembuatan perangkat lunak dan atau suatu produk dari
perangkat lunak.
Dengan melakukan evaluasi pada atribut-atribut yang ada dalam perangkat
lunak, dapat diperoleh status dari suatu perangkat lunak. Dari hal ini, situasi yang
ada dapat diidentifikasi dan diklasifikasikan, yang dapat digunakan untuk
membantu dalam mencari peluang-peluang baru yang bisa digunakan untuk
2
pengembangan dan perbaikan perangkat lunak. Evaluasi seperti ini pada akhirnya
dapat digunakan untuk membuat perencanaan dalam perubahan-perubahan yang
mungkin perlu diimplementasikan di masa yang akan datang. Atribut-atribut
yang diidentifikasi ini juga dapat digunakan sebagai referensi dan bahan
pertimbangan bagi proses pengembangan perangkat lunak lainnya.
Metrik perangkat lunak memiliki batasan-batasan yang luas. Metrik
perangkat lunak tergantung pada atribut-atribut perangkat lunak yang ingin dinilai
kuantitas dan kualitasnya. Secara umum, metrik perangkat lunak dibagi dalam dua
kelas yang berbeda, yaitu metrik yang digunakan pada proyek pengembangan
perangkat lunak dan metrik yang digunakan pada produk perangkat lunak.
Metrik pada proyek pengembangan perangkat lunak berhubungan dengan
tenaga dan pikiran yang diperlukan untuk menyelesaikan proyek, sumber daya
yang digunakan untuk menyelesaikannya, dan metodologi yang diterapkan,
misalnya: waktu yang diperlukan untuk menyelesaikan, tenaga ahli yang
diperlukan, biaya-biaya yang dikeluarkan, dan metodologi yang digunakan dalam
pembuatan perangkat lunak.
Banyak tipe dari atribut-atribut dari perangkat lunak yang dapat diukur.
Metrik yang diaplikasikan sangat bergantung pada sifat alamiah dari produk
perangkat lunak yang dibuat. Misalnya, ingin diketahui seberapa banyak
kebutuhan yang dimiliki oleh suatu proyek, spesifikasi perangkat lunak (untuk
memperkecil ambiguitas) dan kelengkapan yang digunakan untuk memenuhi
seluruh fungsi yang diperlukan. Pada produk dari suatu aplikasi, mungkin ingin
diketahui jumlah baris kode, kerumitan, fungsionalitas yang dipenuhi, jumlah
3
kesalahan yang mungkin dapat terjadi, dan jumlah ujicoba yang dilakukan untuk
memastikan bahwa semua keperluan sudah diimplementasikan. Di sisi lain,
reliabilitas dari suatu perangkat lunak dapat diukur ketika produk tersebut telah
didistribusikan kepada konsumen.
Para ahli di bidang rekayasa perangkat lunak sebenarnya belum berhasil
memutuskan metrik yang tepat yang dapat diterima secara universal. Selain itu
tiap orang biasanya menggunakan berbagai macam metode spesifik untuk
mengukur atribut-atribut yang berbeda dari perangkat lunak yang mereka buat.
Hal itu mengakibatkan banyak kontroversi yang timbul karena metrik-metrik yang
telah diterapkan sangat beragam. Para ahli di bidang rakayasa perangkat lunak
masih harus melalui jalan panjang untuk mencapai suatu rumusan metrik yang
tepat untuk melakukan evaluasi terhadap proses pengembangan dan produk dari
perangkat lunak.
1.2 Rumusan Masalah
Berdasarkan latar belakang permasalahan di atas, maka dalam tugas akhir
ini masalah yang dirumuskan adalah implementasi teori metrik perangkat lunak
dalam suatu proyek pengembangan perangkat lunak yang nyata.
1.3 Batasan Masalah
Sesuai dengan rumusan yang telah dipaparkan, maka batasan yang
diberlakukan dalam tugas akhir ini adalah implementasi teori mengenai metrik
perangkat lunak pada salah satu proyek pengembangan perangkat lunak yang
sedang dikerjakan. Metrik digunakan untuk melakukan estimasi tenaga kerja yang
4
diperlukan untuk mengembangkan perangkat lunak berdasarkan desain yang
diajukan. Metrik diterapkan pada fungsionalitas perangkat lunak. Bahasan tidak
mencakup estimasi elemen-elemen fisik seperti spesifikasi perangkat keras.
1.4 Tujuan Penulisan Tugas Akhir
Tujuan dari tugas akhir ini adalah mengimplementasikan teori mengenai
metrik perangkat lunak pada suatu proyek pembuatan perangkat lunak. Hasil yang
diharapkan adalah petunjuk yang digunakan untuk menghitung besar sumber daya
manusia yang diperlukan dalam suatu pengembangan perangkat lunak, yang
dihitung dengan satuan orang-jam.
1.5 Metodologi Penyusunan Tugas Akhir
Metode yang digunakan dalam penyusunan tugas akhir ini adalah