Anda di halaman 1dari 5

PERTEMUAN KE-12

STRATEGI SYSTEM TESTING & DEBUGGING

12.1 TUJUAN PEMBELAJARAN :


Adapun tujuan pembelajaran yang akan dicapai sebagai berikut:
12.1. Pengantar System Testing
12.2. Recovery Testing
12.3. Security Testing
12.4. Performance Testings
12.5. Pendekatan Debugging

12.2 URAIAN MATERI


Tujuan Pembelajaran 12.1:
Pengantar System Testing

Pada kenyataannya software hanyalah satu elemen dari suatu sistem


berbasis komputer yang lebih besar. Dan software berkaitan dengan elemen-
elemen sistem yang lain tersebut (seperti: hardware, manusia dan informasi),
serta serangkaian tes integrasi dan validasi sistem dilakukan. Tes ini berada di
luar batasan dari proses software dan tidak dilakukan sendirian oleh teknisi
software. Bagaimanapun, langkah-langkah yang diambil selama disain dan testing
software dapat sangat meningkatkan kemungkinan sukses integrasi software
dalam sistem yang lebih besar.
Masalah klasik system testing terjadi saat kesalahan tidak dicakup dan tiap
elemen sistem pengembang saling menyalahkan. Untuk mengatasi hal tidak
masuk akal ini, perancang software harus mengatisipasi masalah – masalah
potensial yang akan dihadapi:
1. Mendisain jalur penanganan error untuk menangani semua informasi
yang datang dari elemen lain pada sistem,
2. Melakukan serangkaian tes yang me-simulasikan data tidak benar
atau kesalahan potensial lain pada antar-muka software,
3. Menyimpan hasil tes sebagai bukti, dan menggunakannya sebagai bukti
bilamana terjadi saling tuding siapa yang bersalah.
4. Ikut serta dalam perencanaan dan disain sistem untuk memastikan bahwa
software telah dites dengan baik.

System testing sebenarnya adalah serangkaian tes yang berbeda dari tujuan
utama untuk memeriksa sistem berbasis komputer secara penuh. Walaupun tiap
tes mempunyai tujuan yang berbeda, semuanya bekerja untuk melakukan
verifikasi bahwa elemen-elemen sistem telah diintegrasikan dengan benar dan
melakukan fungsi-fungsi yang telah ditentukan. Pada seksi berikut ini, akan
dijabarkan tipe-tipe system tests yang umum untuk sistem berbasis komputer.

Tujuan Pembelajaran 12.2:


Recovery Testing

Kebanyakan sistem berbasis komputer memperbaiki faults dan memulai


kembali proses pada satu waktu tertentu. Pada kasus tertentu sistem harus
mempunyai toleransi kesalahan yaitu pemrosesan kesalahan yang tidak
menyebabkan keseluruhan fungsi sistem berhenti. Pada kasus lain kesalahan
sistem harus dibenahi dalam kurun waktu tertentu atau kerugian ekonomis
akan terjadi.
Recovery testing adalah system test yang memaksa software gagal dalam
berbagai cara dan verifikasi bahwa recovery sistem berjalan dengan baik. Bila
recovery otomatis dilakukan oleh sistem itu sendiri, maka perlu dievaluasi
kebenaran dari re-inisialisasi, mekanisme checkpointing, data recovery, dan
restart. Bila recovery membutuhkan intervensi manusia, mean-time-to-repair
(MTTR), waktu rata-rata perbaikan, dievaluasi untuk menentukan apakah masih
dalam batasan yang dapat diterima.

Tujuan Pembelajaran 12.3:


Security Testing
Tiap sistem berbasis komputer yang memanajemeni informasi bersifat
sensitif atau menyebabkan aksi-aksi yang dapat merugikan individu sebagai
target dari penetrasi yang tidak sehat atau tidak legal, membutuhkan sistem
manajemen keamanan dari sistem tersebut.
Security testing digunakan untuk melakukan verifikasi mekanisme proteksi,
yang dibangun ke dalam sistem akan melindungi sistem tersebut dari
penetrasi yang tidak diinginkan. Keamanan sistem harus dites terhadap serangan
langsung (frontal) maupun tak langsung (jalan belakang). Selama security testing,
tester memerankan tugas sebagai orang yang ingin melakukan penetrasi pada
sistem.
Dengan waktu dan sumber daya yang cukup memadai, security testing yang
baik akan melakukan penetrasi terhadap suatu sistem dengan sangat hebat. Tugas
perancang sistem adalah untuk membuat biaya penetrasi lebih dari nilai informasi
yang diobservasi.

Tujuan Pembelajaran 12.4:


Performance Testings

Untuk sistem yang real-time dan embedded, walaupun software telah


menyediakan fungsi- fungsi yang dibutuhkan, namun tidak memiliki kinerja yang
sesuai dengan apa yang diminta, maka software tersebut tetap tidak dapat
diterima.
Perfomance testing dilakukan untuk tes kinerja software secara runtime
dalam kontek sistem yang terintegrasi. Performance testing terjadi di semua tahap
pada proses testing. Bahkan pada tingkat unit, kinerja dari modul individual akan
dinilai secara bersamaan pada saat tes white-box yang dilakukan. Bagaimanapun
juga, tidak semua elemen dapat sepenuhnya diintegrasikan, sehingga kinerja
sistem yang sebenarnya dapat di pastikan.
Performance testing biasa digabung dengan stress testing dan biasanya
membutuhkan instrumentasi software dan hardware. Oleh karena itu, seringkali
membutuhkan pengukuran utilitas dari sumber daya (seperti siklus prosesor)
secara eksak. Instrumentasi eksternal dapat memonitor interval eksekusi, log
kejadian (seperti interupts) saat terjadi, dan status mesin pada basis reguler.
Dengan menginstrumentasikan sistem, tester dapat melingkupi situasi-situasi yang
mungkin mempunyai kecenderungan untuk mengarah ke degradasi dan kegagalan
sistem.

Tujuan Pembelajaran 12.5:


Pendekatan Debugging

Setelah terjadi kegagalan, programmer mengidentifikasi kesalahan yang


sesuai, dan memperbaikinya. Proses penentuan penyebab kegagalan dikenal
sebagai debugging. Debugging memakan waktu, dan prosesnya rawan kesalahan,
karena debugging melibatkan kombinasi dari evaluasi sistematis, intuisi dan
sedikit keberuntungan.
Tujuan debugging adalah untuk mengisolasi, dan menentukan penyebab
spesifik, mengingat gejala dari masalah.
Ada tiga pendekatan untuk debugging:
1. Brute force
2. Cause elimination
• Induction
• Deduction
3. Backtracking

12.3 LATIHAN SOAL/TUGAS

1. Bagaimana cara melakukan pengujian keamanan sistem informasi


akademik?

12.4 DAFTAR PUSTAKA


1. Chemuturi, M. (2011). Mastering Software Quality Assurance. Best
Practices, Tools And Techniques For Software Developers. J. Ross
Publishing
2. Lewis, E. W. (2009). Software Testing and Continuous Quality
Improvement. CRC Press
3. Naik, K. & Tripathy, P. (2008). Software Testing and Quality Assurance.
Theory and Practice. John Wiley & Sons

Anda mungkin juga menyukai