Dokumen tersebut membahas tentang pengujian perangkat lunak dan kualitas perangkat lunak. Pengujian perangkat lunak meliputi verifikasi dan validasi untuk memastikan perangkat lunak sesuai dengan spesifikasi dan kebutuhan pengguna. Kualitas perangkat lunak penting untuk menjamin operabilitas, kemudahan memahami, dan stabilitas sistem.
2. HAL UTAMA YANG DILAKUKAN DALAM PENGUJIAN
• Verifikasi adalah proses mengevaluasi suatu
system/component untuk menentukan apakan suatu
produk yang diselesaikan setelah fase pengembangan
memenuhi kondisi seperti yang telah ditetapkan pada
awal pengembangan (saat menentukan spesifikasi)
perangkat lunak. (Are we building the product right? )
• Validasi adalah proses mengevaluasi suatu
system/komponen pada akhir atau selama masa
pengembangan untuk menentukan apakah produk yang
dihasilkan telah memenuhi kebutuhankebutuhan dan
persyaratan tertentu yang diminta oleh user (Are we
building the right product?)
3. Pengujian dilakukan untuk memenuhi persyaratan kualitas
perangkat lunak, dengan cara mengeksekusi program untuk
mencari kesalahan sintaks program, melakukan verifikasi
perangkat lunak untuk melihat kesesuaian antara perangkat
lunak dengan keinginan customer.
4. Definisi Kualitas
Menurut Crosby
Kualitas adalah pemenuhan terhadap kebutuhan
Menurut ISO-8402
Kualitas adalah keseluruhan dari fitur yang menjadikan suatu produk
dapat memuaskan atau dipakai sesuai kebutuhan dengan harga yang
terjangkau
Menurut W.E Perry
Kualitas adalah pemenuhan terhadap standar
Menurut R.Glass
Kualitas adalah tingkat kesempurnaan
Menurut J.Juran
Kualitas adalah tepat guna
5. Pengukuran Kualitas Software
1. Kualitas (intrinsic) produk
– Pengukuran dilakukan dengan menggunakan jumlah
defect yang terjadi dalam suatu perangkat lunak atau
dengan memperkirakan berapa lama perangkat lunak
masih dapat berfungsi sebelum terjadi crash
2. Kepuasan customer
– Pengukuran yang dilakukan dengan memperhatikan
permasalahan yang dihadapi customer dan tingkat
kepuasan customer selama menggunakan perangkat
lunak tersebut.
6. Perancangan perangkat lunak harus
mempunyai kualitas
• Operability
• Observability
• Controllability
• Decomposability
• Simplicity
• Stability
• Understandibility
8. • Proses verifikasi dan validasi mempunyai dua
obyektif prinsipal, yaitu :
– Menemukan kekurangan dalam sebuah sistem;
– Memperkirakan apakah sistem berguna dan dapat
digunakan atau tidak dalam situasi operasional
9. Tujuan melakukan Verifikasi dan
Validasi
• Verifikasi dan validasi harus memberikan
kepastian bahwa software sesuai dengan
tujuannya.
10. • kegiatan yang dilakukan dalam melakukan
verifikasi :
– Verifikasi Statik, yaitu berhubungan dengan
analisis representasi sistematik untuk menemukan
masalah, biasa disebut Software inspection
– Verifikasi Dinamis, yaitu berhubungan dengan
dengan pelaksanaan dan memperhatikan perilaku
produk, biasa disebut Software testing
11. Prinsip dalam pengujian
1. Semua pengujian harus dapat ditelusuri sampai ke persyaratan
user, yaitu dengan mengungkapkan kesalahan dari cacat yang
menyebabkan program gagal.
2. Pengujian harus direncanakan sebelum proses pengujian itu
dilakukan, yaitu dengan merencanakan dan merancang semua
pengujian sebelum coding dijalankan.
3. Prinsip Pareto berlaku untuk pengujian perangkat lunak, hal ini
berdasarkan pengamatan yang menyatakan bahwa dari 80%
kesalahan yang ditemukan selama pengujian dapat ditelusuri
sampai 20% dari semua modul program.
4. Pengujian harus mulai dari yang kecil ke pengujian yang lebih
besar dan kompleks.
5. Pengujian tidak dilakukan secara mendalam dan detail.
6. Untuk menjadi paling efektif, pengujian harus dilakukan oleh pihak
ketiga yang independent.
12. Testabilitas
Karakteristik pengujian :
1. Pengujian yang baik memiliki probabilitas yang
tinggi untuk menemukan kesalahan
2. Pengujian yang baik tidak redundan.
3. Pengujian yang baik seharusnya jenis terbaik,
yaitu yang mengungkapkan seluruh kelas
kesalahan.
4. Pengujian yang baik tidak boleh terlalu
sederhana atau terlalu kompleks
13. Hal Penting dalam Pengujian
1. Kualitas dari proses pengetesan menentukan
kesuksesan pengujian
2. Mencegah perambatan cacat dengan menguji
pada seluruh siklus hidup perangkat lunak
3. Menggunakan alat pengujian/Testing tools
4. Harus ada seseorang ahli yang bertanggung
jawab untuk memperbaiki pross pengujian
5. Pengujian adalah disiplin professional yang
membutuhkan orang terlatih dan berkeahlian
6. Menumbuhkan tim yang bersikap positif
14. Seorang penguji adalah destructive
tetapi kreatif
Pengujian memerlukan imajinasi, ketekunan dan perasaan yang kuat untuk
mencari secara sistematik kelemahan dan endemonstrasikan kegagalan
(failure)
15. • Seorang Penguji Mengejar errors bukan
pembuat program :
– Yang dicari adalah kesalahan dalam produk, bukan
orang yang membuat kesalahan
– Developer harus mengerti bahwa penguji bukan
melawan mereka tetapi membantu developer.
16. Cara Mendeteksi Kesalahan
• Dengan memeriksa struktur dan desain
internal
• Dengan memeriksa fungsi dari antarmuka
pengguna (user interface)
• Dengan memeriksa sasaran design (design
objective)
• Dengan memriksa permintaan user (user
requirement)
• Dengan mengeksekusi progam
17. Klasifikasi Kesalahan Program
1. Kesalahan bahasa (language error)
– Kesalahan cara penulisan program (syntax error)
dan/atau kesalahan tata bahasa (grammatical error)
2. Kesalahan sewaktu proses (run-time error)
– Kesalahan kondisi yang belum terpenuhi atau yang
akan menyebabkan program hang dan/crash.
3. Kesalahan logika (logical error)
– Kesalahan mengartikan keinginan analis. Tidak terjadi
kesalahan program secara sintaksis, tetapi akan
menghasilkan sesuatu yang tidak diharapkan.
Editor's Notes
Di dalam melakukan pengujian terdapat beberapa karakteristik yang harus diperhatikan.
Karakteristik pengujian tersebut adalah :