Pengukuran Perangkat Lunak Rekayasa Perangkat Lunak STMIK-AUB SURAKARTA
Pengantar Pengukuran adalah suatu hal pokok pada perekayasaan perangkat lunak atau software. Jangkauan luas pengukuran pada perangkat lunak komputer disebut metrik perangkat lunak. Tujuan diterapkannya pengukuran pada proses perangkat lunak adalah untuk pengembangan perangkat lunak itu sendiri dengan dasar yang kontinu.
1
PENGUKURAN PERANGKAT LUNAK PENGUKURAN DAN METRIKS - Measure (mengukur) ; mengindikasikan kuantitatif dari luasan, jumlah, dimensi, kapasitas - Measurement (pengukuran) ; kegiatan menentukan sebuah measure - Metrics ; Ukuran kuantitatif dari tingkat dimana sebuah sistem, komponen atau proses memiliki atribut tertentu.
Kenapa kita melakukan pengukuran ? -
Untuk melihat karakteristik sesuatu objek Untuk mengevaluasi dari objek Untuk memprediksi objek Untuk mengimprovisasi objek tersebut terhadap perkembangan dan pengembangannya.
2
Pengukuran dilakukan melalui 2 tahapan Pengaruh internal terhadap pengukuran : a. Proses b. Produk
Pengaruh eksternal terhadap pengukuran : a. Proses Metrik b. Proyek Metrik c. Produk Metrik
Proses Metrik Memungkinkan sebuah organisasi rekayasa perangkat lunak memperoleh pengetahuan tentang reliabilitas sebuah proses yang sedang berlangsung . Proses ini dikumpulkan di seluruh proyek dan pada perkembangan proses perangkat lunak jangka panjang
3
Proyek Metrik Memperkirakan status sebuah proyek yang sedang berlangsung Menelusuri resiko-resiko potensial Menemukan masalah sebelum masalah menjadi semakin kritis Menyesuaikan aliran kerja dan tugas Mengevaluasi kemampuan tim proyek (mengontrol kualitas kerja)
Produk Metrik Memperhatikan kualitas yang akan diberikan Mengukur dari hasil analisa model Kompleksitas Design (Internal Algoritma, Arsitektur, Aliran Data) Mengukur Kode Mengukur efektifitas proses
4
Metriks proses PL dapat memberikan sumbangan yang berarti, namun bisa juga menimbulkan permasalahan yang lebih banyak
Etika Metrik Perangkat Lunak 1. 2. 3. 4. 5. 6. 7.
Gunakan istilah umum dan kepekaan organisasi ketika menginterpretasi data metrik Berikan umpan balik reguler kepada individu dan tim yang telah bekerja untuk mengumpulkan pengukuran dan metrik Jangan menggunakan metrik untuk mengukur individu Jangan menggunakan metrik untuk mengancam individu dan tim Bekerja dengan pelaksana dan tim untuk menentukan tujuan dan metrik yang jelas yang akan digunakan Data-data yang didapat hanya sebagai indikator bagi peningkatan proses Tetap memperhatikan metrik yang lain dalam melakukan pengukuran.
5
Pengukuran PL Pengukuran : Langsung : deretan kode (LOC) yg diproduksi, kecepatan eksekusi, ukuran memori, & cacat yg dilaporkan pd sejumlah periode waktu Tidak langsung : fungsionalitas, kualitas, kompleksitas, efisiensi, reliabilitas, kemampuan pemeliharaan,dll
NORMALISASI UNTUK METRIK Normalisasi data digunakan untuk mengevaluasi proses dan produk Ada 2 Teknik : 1.Size Oriented Normalization : Pendekatan pada Baris kode 2.Function Oriented Normalization : Pendekatan pada Fungsi Point
6
PENGUKURAN PERANGKAT LUNAK 1. Metrics Size Oriented Diukur dengan normalisasi kualitas dan atau pengukuran produktifitas mempertimbangkan ukuran perangkat lunak yang dihasilkan. Pengembangan Metrics Size Oriented : a. b. c. d.
Kesalahan per KLOC (Kilo Line Of Code) Biaya per LOC Cacat per LOC Halaman Dokumentasi per LOC
Metrik lain yang dapat dihitung a. Kesalahan perorang perbulan b. LOC perorang perbulan c. Biaya perhalaman dokumentasi
7
2. Metrik Function Oriented Diukur dengan menggunakan sebuah pengukuran fungsionalitas yang disampaikan oleh aplikasi sebagai suatu nilai normalisasi. Typical Function-Oiented Metrics a. b. c. d. e.
Kesalahan per FP (Function Point) Cacat per FP Biaya per FP Halaman Dokumentasi per FP FP perorang perbulan.
Function Point ditentukan berdasarkan bagian-bagian software yang sedang dihitung seperti : 1. 2. 3. 4. 5.
Jumlah input dari pengguna Jumlah output untuk pengguna Jumlah user inquiry Jumlah file Jumlah external interface
8
Function Point Jumlah input pemakai -> input pemakai yg memberikan data yg berorientasi pd aplikasi yg jelas pd PL dihitung Jumlah output pemakai -> output pemakai yg memberikan informasi yg berorientasi pd aplikasi kepada pemakai dihitung; laporan, layar, tampilan kesalahan, dll Jumlah penyelidikan pemakai -> input on-line yg mengakibatkan munculnya beberapa respon PL yg cepat dlm bentuk output on-line Jumlah file -> file master logika dihitung Jumlah interface eksternal -> interface yg dibaca oleh mesin yg digunakan utk memindahkan informasi ke sistem yg lain dihitung
9
3. Metrik Function Point yang Diperluas Secara Orisinil dirancang untuk diterapkan pada aplikasi informasi bisnis yang ditekankan pada pengeluaran dimensi tingkah laku dan fungsional. Feature Points Teknik pengukuran function point yang diterapkan Fp Mengakomodasi aplikasi yang kompleksitas algoritmanya tinggi (Real Time, Kontrol Proses, Karakteristik perangkat lunak yang baru/Algoritma, dll)
10
Pengukuran untuk organisasi kecil (Defect Removal efficiency DRE) Waktu (hari/jam) mulai dari permintaan/request sama evaluasi lengkap t queue Usaha (personel-waktu) untuk melakukan evaluasi Weval Waktu (jam/hari) dari selesainya evaluasi sampai penugasan lain ke personel t eval Usaha (personel jam) yang dibutuhkan untuk membuat perubahan Wchange Waktu (jam/hari) untuk melakukan perubahan t change Kesalahan yang terjadi selama pengerjaan untuk melakukan perubahan -- Echange Cacat yang terjadi setelah perubahan diserahkan ke klien Dchange
Setelah keseluruhan ukuran dikumpulkan bisa dihitung total waktu dari permintaan perubahan sampai implementasi dari perubahan. Persentase usaha yang dibutuhkan untuk evaluasi dan implementasi bisa ditetapkan. DRE = EChange / (Echange + Dchange)
11
MENGUKUR KUALITAS 1. Correctness. Program harus beroperasi dengan benar, dimana perangkat lunak melakukan fungsi yang ditentukan. 2. Maintainability. Pemeliharaan memberikan kemudahan pada aktifitas dan perbaikan terhadap kesalahan sistem. 3. Integrity. Mengukur kemampuan sistem untuk menahan serangan terhadap keamanannya. 4. Usability User Friendly
12