STRATEGI SISTEM TESTING DAN DEBUGGING.pd

A. PENGUJIAN /TESTING
Pengujian dilakukan untuk menjamin kualitas dan juga mengetahui
kelemahan dari perangkat lunak. Tujuan dari pengujian ini adalah untuk menjamin
bahwa perangkat lunak yang dibangun memiliki kualitas yang handal, yaitu
mampu merepresentasikan kajian pokok dari spesifikasi, analisis, perancangan
dan pengkodean dari perangkat lunak itu sendiri.
Ada dua komponen yang harus diperhatikan dalam strategi pengujian,yaitu :
1. Faktor Pengujian yang merupakan hal-hal yang harus diperhatikan selama
melakukan pengujian. Faktor pengujian ini dipilih sesuai dengan system
yang akan diuji.
2. Tahapan pengujian yang merupakan langkah-langkah dalam melakukan
pengujian.
Beberapa sasaran pengujian diantaranya :
1. Pengujian adalah proses eksekusi suatu program dengan maksud
menemukan kesalahan
2. Test case yang baik adalah test case yang memiliki probabilitas tinggi
untuk menemukan kesalahan yang belum pernah ditemukan sebelumnya
3. Pengujian yang sukses adalah pengujian yang mengungkap semua
kesalahan yang belum pernah ditemukan sebelumnya.
Prinsip Pengujian meliputi :
Semua pengujian harus dapat ditelusuri sampai ke persyaratan pelanggan.

Sebagaimana telah kita ketahui, sasaran pengujian perangkat lunak adalah untuk
mengungkapkan kesalahan. Hal ini memenuhi kriteria bahwa cacat yang paling
fatal (dari titik pandang pelanggan) adalah cacat yang menyebabkan program
gagal memenuhi persyaratannya.
Pengujian harus direncanakan lama sebelum pengujian itu mulai.
Perencanaan pengujian dapat dimulai segera setelah model pernyaratan
dilengkapi. Definisi detail mengeani test case dapat dimulai segera setelah model
desain diteguhkan. Dengan demikian, semua pengujian dapat direncanakan dan
dirancang sebelum semua kode dibangkitkan.

1

Prinsip Pareto berlaku untuk pengujian perangkat lunak. Secara singkat
prinsip Paretomengimplikasikan bahwa 80 persen dari semua kesalahan yang
ditemukan selama pengujian sepertinya akan dapat ditelusuri sampai 20 persen
dari semua modul program. Masalahnya,bagaimana mengisolasi modul yang
dicurigai dan mengujinya dengan teliti.
Pengujian harus mulai “dari yang kecil” dan berkembang ke pengujian
“yang besar”. Pengujian pertama yang direncanakan dan dieksekusi biasanya
berfokus pada modul program individual. Selagi pengujian berlangsung maju,

pengujian mengubah fokus dalam usaha menemukan kesalahan pada cluster
modul yang terintegrasi dan akhirnya pada system secara keseluruhan.
Pengujian yang mendalam tidak mungkin. Jumlah jalur permutasi untuk
program yang berukuran menengah-pun sangat besar. Karean itulah tidak
mungkin untuk mengeksekusi setiap kombinasi jalus skema pengujian. Tetapi
dimungkinkan untuk secara tepat mencakup logika program dan memastikan
bahwa semua kondisi dalam desai prosedural telah diuji.
Untuk menjadi paling efektif, pengujian harus dilakukan oleh pihak ketiga
yang independent. Yang dimaksud dengan kata “yang paling efektif” adalah
pengujian yang memiliki probabilitas tertinggi di dalam menemukan kesalahan
(sasaran utama pengujian). Karena perekayasa perangkat lunak yang membuat
sistem tersebut bukanlah orang yang paling tepat untuk melakukan semua
pengujian bagi perangkat lunak.

B. PENGUJIAN SYSTEM
Definisi Pengujian Sistem

 Suatu proses yang dilakukan untuk menilai apakah yang dirancang telah
sesuai dengan apa yang diharapkan


 Suatu kegian untuk mengevaluasi keunggulan dan kelermahan terhadap
sesuatu yang diuji (kwalitas produk

 Mengevaluasi terhadap urutan kegiatan yang sistematis dalam mencapai
tujuan system

2

 Mengevaluasi keseimbangan jumlah pelaksanaan kegiatan dengan beban kerja
dalam sesuatu prosedur kegiatan.
Pengujian Sistem

 Melakukan proses evaluasi terhadap system yang sudah ada apakah system
sudah sesuai yang dharapkan user

 Menilai dan mengevaluasi terhadap output atau ahasil system

 Menguji terhadpa input, pengelolaan (proses)dan output system

 Melakukan penilaian dan evaluasi terhadpat komponen system prosedur

pelaksanaan kegiatan dan mutu atau kwalitas hasil system.
Sistem pengujian untuk memastikan kualitas dan keandalan sistem
langkah kunci dalam proses pengembangan sistem adalah analisis sistematis pada
desain sistem dan pelaksanaan review akhir.Berdasarkan uji konsep dan tujuan
sistem informasi selama tes harus mengikuti prinsip-prinsip dasar.
Sesegera mungkin dan terus diuji.Pengujian tidak dalam pengembangan
aplikasi dilakukan setelah selesai.Karena kompleksitas asli masalah, keragaman
tahap perkembangan serta koordinasi antara peserta dan faktor lainnya, membuat
rambut di semua tahapan pembangunan mungkin mengalami kesalahan.Oleh
karena itu, tes yang harus dijalankan melalui berbagai tahap perkembangan
secepat mungkin untuk memperbaiki kesalahan, menghilangkan bahaya yang
tersembunyi.
Harus dihindari oleh orang-orang asli yang bekerja atau komitmen
kelompok, di satu sisi, pengembang sering enggan untuk memanggil pekerjaan
mereka diakui, dan percaya bahwa perangkat lunak mereka sendiri dikembangkan
tidak ada kesalahan; sisi lain, pengembang kesalahan adalah pada sayamenguji,
mudah untuk program sesuai dengan ide mereka sendiri untuk mengembangkan
ide-ide pengujian, memiliki keterbatasan.Pengujian harus dilakukan oleh personel
khusus untuk melaksanakan, akan lebih obyektif dan lebih efektif
Melakukan sesuai dengan rencana uji ketat, untuk menghindari uji

sewenang-wenang.Rencana pengujian harus mencakup konten pengujian,
penjadwalan, staf, lingkungan pengujian, alat-alat tes dan informasi tes.Ketat

3

sesuai dengan rencana pengujian dapat; kemajuan sertifikasi, sehingga semua
pihak dapat dikoordinasikan.
Jauhkan rencana uji, uji kasus, sebagai bagian dari dokumentasi perangkat
lunak, untuk pemeliharaan kenyamanan.
Uji kasus secara hati-hati dirancang, dapat kembali pengujian atau
pengujian tambahan dengan mudah.Ketika Zi benar sebelum uji kasus, atau
memodifikasi dasar, dan kemudian menguji.
Sebuah proses pengujian standar biasanya meliputi kegiatan uji berikut
dasar. Dalam rencana uji, kita sepenuhnya harus mempertimbangkan waktu
keseluruhan proyek pembangunan dan pengembangan ke anak serta beberapa
faktor manusia dan kondisi obyektif, membuat rencana uji layak.Utama isi isi
rencana uji, penjadwalan lingkungan pengujian, uji dan persyaratan yang
dibutuhkan untuk menguji pengaturan pelatihan.
Uji garis didasarkan pada ujian.Ini jelas menetapkan secara rinci sistem
dalam tes untuk fitur atau fitur dari masing-masing harus menyelesaikan item tes

dasar dan kriteria uji penyelesaian.
Menurut garis besar rancangan dan pengujian untuk menghasilkan uji
kasus.Bila dalam desain uji kasus, kasus uji dapat disajikan di depan teknik
pemanfaatan dan desain, sehingga dalam dokumentasi pengujian desain dan isinya
diukur item, data input, proses pengujian, output yang diharapkan dan sebagainya.
untuk melaksanakan ujian.Tahap implementasi dari tes ini adalah terdiri dari
serangkaian siklus uji.Dalam setiap siklus uji, penguji dan pengembang akan
didasarkan pada program persiapan pra-tes dan menyiapkan ujian yang baik,
perangkat lunak uji, atau peralatan untuk tes lengkap.
Test selesai, untuk membentuk laporan pengujian yang sesuai, utama
garis-garis besar tes yang ditetapkan kesimpulan tes yang cacat dan kesalahan,
juga memberikan beberapa saran, seperti metode modifikasi dapat digunakan,
perubahan beban kerja yang diproyeksikandan memodifikasi petugas yang
bertanggung jawab.

4

Pengujian terhadap system

 Personil ditempakan sudah sesuai dengan skill atau kemampuan yang

dimilikinya

 Beban kerja yang optimum untuk masing masing personil

 Loyalitas atau kemamuan bekerja sama untuk menyelesaikan suatu
kegiatan

 Kemampuan personil dalam menyelesaikan masalah
Pengujian kegiatan

 Prosedur dan system kerja yang sistematis

 Perencanaan yang terkontrol dan terjadwal

 Arah tujuan atau target ang dapat dilaksanakan sesuai dengan perencanaan
 Hasil kegiatan yang terukur

 Kesemimbangan kegiatan dengan bersarnya biaya yang digunakan
Pengujian misi atau tujuan


 Adanya integrasi antara personil yang terlibat dengan kegiatan yang
dilaksanakn dalam mencapai target system

 Kwalitas dari kegiatan yang mewujudkan tujuan system
C. PENGUJIAN PERANGKAT LUNAK
Pengujian perangkat lunak adalah elemen kritis dari jaminan kualitas
perangkat lunak dan merepresentasikan spesifikasi, desain dan pengkodean.
Meningkatnya visibilitas (kemampuan) perangkat lunak sebagai suatu elemen
sistem dan “biaya” yang muncul akibat kegagalan perangkat lunak, memotivasi
dilakukannya perencanaan yang baik melalui pengujian yang teliti. Pada dasarnya,
pengujian merupakan satu langkah dalam proses rekayasa perangkat lunak yang
dapat dianggap sebagai hal yang merusak daripada membangun.
Dalam melakukan uji coba ada masalah penting yang akan dibahas, yaitu :

 Teknik Uji Coba Perangkat Lunak

Pada dasarnya, pengujian merupakan suatu proses rekayasa perangkat
lunak yg dapat dianggap (secara psikologis) sebagai hal yg destruktif daripada
konstruktif.


5

SASARAN PENGUJIAN (Glen Myers) :

 Pengujian adalah proses eksekusi suatu program dengan maksud
menemukan kesalahan.

 Test case yang baik adalah test case yg memiliki probabilitas tinggi untuk
menemukan kesalahan yang belum pernah ditemukan sebalumnya.

 Pengujian yang sukses adalah pengujian yg mengungkap semua kesalahan
yang belum pernah ditemukan sebelumnya.

PRINSIP PENGUJIAN (diusulkan Davis) :

 Semua pengujian harus dapat ditelusuri sampai ke persyaratan pelanggan.
 Pengujian harus direncanakan lama sebelum pengujian itu dimulai.

 Prinsip Pareto berlaku untuk pengujian perangkat lunak. Prinsip Pareto
mengimplikasikan 80% dari semua kesalahan yg ditemukan selama

pengujian sepertinya akan dapat ditelusuri sampai 20% dari semua modul
program.

 Pengujian harus mulai "dari yg kecil" dan berkembang ke pengujian "yang
besar".

 Pengujian yg mendalam tidak mungkin.

 Paling efektif, pengujian dilakukan oleh pihak ketiga yg independen.
TESTABILITAS
Testabilitas perangkat lunak adalah seberapa mudah sebuah program
komputer dapat diuji.Karena pengujian sangat sulit, perlu diketahui apa yang
dapat dilakukan untuk membuatnya menjadi mudah. Kadang-kadang pemrogram
beresedia melakukan hal-hal yang akan membantuproses pengujian dan checklist
mengenai masalah-masalah desai yang mudah, fitur dan lain sebagainya yang
berguna dalam bernegosiasi dengan mereka.
Checklist berikut memberikan serangkaian karakteristik yang membawa
kepada perangkat lunak yang dapat diuji :
Operabilitas. “Semakin baik dia bekerja, semakin efisien dia dapat diuji”


6

 Sistem memiliki beberapa bug (bug menambah analisis dan biaya
pelaporan keproses pengujian).Tidak ada bug yang memblok eksekusi
pengujian

 Produk berkembang di dalam tahapan fungsional (memungkinkan
pengemabngandan pengujian secara simultan).
Observabilitas. “Apa yang Anda lihat adalah apa yang Anda uji”

 Output yang berbeda dikeluarkan oleh masing-masing input.

 Tahap dan variabel sistem dapat dilihat atau diantrikan selama eksekusi.

 Sistem dan variabel yang lalu dapat dilihat atau diantrikan (misal : log
transaksi)

 Semua faktor yang mempengaruhi output dapat dilihat.

 Kesalahan itnernal dideteksi secara otomatis melalui mekanisme
selftesting.

 Kesalahan internal dilaporkan secara otomatis.
 Kode sumber dapat diakses

Kontrolabilitas. “Semakin baik kita dapat mengontrol perangkat luank, semakin
banyak pengujian yang dapat diotomatisasi dan dioptimalkan”

 Semua output yang mungkin dapat dimnculkan melalui beberapa
kombinasi input.

 Semua kode dapat dieksekusi melalui berbagai kombinasi input.

 Keadaan dan varibale perangkat lunak dan perangkat keras dapat dikontrol
secara langsung oleh perekayasa pengujian.

 Format input dan output konsistem dan terstruktur.

 Pengujian dapat dispesifikasi, dioptimasi dan direproduksi dengan baik.
Dekomposabilitas. “Dengan mengontrol ruang lingkup pengujian, kita dapat
dengan lebih cepat mengisolasi masalah dan melakuakn pengujian kembali secara
lebih halus”

 Sistem perangkat luank dibangun dari modul-modul independen.
 Modul-modul perangkat lunak dapat diuji secara independen.

7

Kesederhanaan. “Semakin sedikit yang diuji, semakin cepat kita dapat
mengujinya”

 Kesederhanaan fungsional (seperti, kumpulan fitur adalah kebutuhan
minimum untuk memenuhi persyaratan).

 Kesederhanaan struktural (seperti, arsitektur dimodularisasi untuk
membatasi penyebaran kesalahan)

 Kesederhanaan kode (seperti, standar pengkodean diadopsi demi
kemduahan inspeksi dan pemeliharaan).
Stabilitas. “Semakin sedikti perubahan, semakin sedikit ganggunan dalam
pengujian”

 Pengujian ke perangkat lunak tidak sering.
 Perubahan ke perangkat lunak terkontrol.

 Perubahan ke perangkat lunak memvalidasi pengujian yang sudah ada.
 Kegagalan perangkat lunak dapat diperbaiki dengan baik

Kemampuan untuk dapat dipahami. “Semakin banyak informasi yang kita miliki,
semakin halus pengujian yang akan dilakukan”
 Desain dipahami dengan baik.

 Ketergantungan di antara komponen internal, eksternal dan yang dipakai
bersama,dipahami dengan baik.

 Perubahan ke desai dikomunikasikan.

 Dokumentasi teknik dapat diakses dengan cepat.

 Dokumentasi teknis diorganisasikan dengan baik.
 Dokumentasi teknis spesifik dan detail.
 Dokumentasi teknis akurat

D. ATRIBUT PENGUJIAN YG BAIK :
Berikut adalah atribut-atribut pengujian yang baik:

 Memiliki probabilitas yg tinggi menemukan kesalahan.
 Tidak redundan.

 Harusnya ‘jenis terbaik’.

 Tidak boleh terlalu sederhana atau terlalu kompleks.
8

1. Pengujian yang baik memiliki probabilitas yang tinggi untuk menemukan
kesalahan. Untuk mencapai hal ini, penguji harus memahami perangkat lunak
dan berusaha mengembangkan gambaran mental mengenai bagaimana
perangkat lunak dapat gagal. Idealnya kelas-kelas kegagalan itu diselidiki.
Sebagai contoh, kelas kegagalan potensial pada GUI adalah kegagalan untuk
mengenali posisi mouse yang sesuai. Serangkaian pengujian akan dirancang
untuk menguji mouse untuk memperlihatkan kesalahan didalam pengenalan
posisi mouse.
2. Pengujian yang baik tidak redudan. Waktu pengujian dan sumber daya
terbatas. Tidak ada manfaatnya melakukan pengujian dengan tujuan yang
sama dengan pengujian lainnya. Setiap pengujian harus memiliki tujuan yang
berbeda.
3. Pengujian yang baik seharusnya “jenis terbaik”. Dalam suatu kelompok
pengujian yang memiliki tujuan yang serupa, batasan waktu dan sumber daya
dapat menghalagi eksekusi hanya kelompok kecil dari pengujian tersebut.
pada kasus semacam ini maka pengujian yang memiliki kemungkinan paling
besar untuk mengungkap seluruh kelas kesalahan yang tinggi harus
digunakan.
4. Pengujian yang baik tidak boleh terlalu sederhana atau terlalu kompleks.
Secara umum masing-masing test case harus dieksekusi secara terpisah.

E. DESAIN TEST CASE:
1. Pengujian white-box
2. pengujian black-box
3. Pengujian graph-based.
4. Integrasi Bottom-Up
5. Integrasi Top-Down.
6. Uji Sistem.

9

1. Pengujian white-box
Berfokus pada struktur control program. Test case dilakukan untuk
memastikan bahwa semua statemen pada program telah dieksekusi paling tidak
satu kali selama pengujian dan bahwa semua kondisi logis telah diuji. Pengujian
basic path, tehnik pengujian white-box, menggunakan grafik (matriks grafiks)
untuk melakukan serangkaian pengujian yang independent secara linear yang akan
memastikan cakupan.
Pengujian aliran data dan kondisi lebih lanjut menggunakan logika
program dan pengujian loop menyempurnakan tehnik white-box yang lain dengan
memberikan sebuah prosedur untuk menguji loop dari tingkat kompleksitas yang
bervariasi. Pengujian black-box didesain untuk mengungkap kesalahan pada
persyaratan fungsional tanpa mengabaikan kerja internal dari suatu program.
2. Pengujian black-box.
Berfokus pada domain informasi dari perangkat lunak, dengan melakukan
test case dengan menpartisi domain input dari suatu program dengan cara yang
memberikan cakupan pengujian yang mendalam.

3. Pengujian graph-based.
Mengeksplorasi hubungan antara dan tingkah laku objek-objek program.
Partisi ekivalensi membagi domain input ke dalam kelas data yang mungkin untuk
melakukan fungsi perangkat lunak tertentu. Analisis nilai batas memeriksaa
kemampuan

program

diterima.Metode

untuk

pengujian

menangani
yang

data

terspesialisasi

pada

batas

meliputi

yang

sejumlah

dapat
luas

kemampuan perangkat lunak dan area aplikasi. GUI, arsitektur client/ server,
dokumentasi dan fasilitas help dan sistem real time masing-masing membutuhkan
pedoman dan tehnik khusus untuk pengujian perangkat lunak.

4. Pengujian Integrasi Top-Down
Adalah pendekatan incremental dengan menggerakkan ke bawah melalui
hirarki control, dimulai dengan control utama. Strategi intergrasi top-down

10

memeriksa control mayor atau keputusan pada saat awal di dalam proses
pengujian. Pada struktur program yang difaktorkan dengan baik, penarikan
keputusan terjadi pada tingkat hirarki yang lebih tinggi sehingga terjadi lebih
dulu.
Strategi top-down kelihatannya tidak sangat rumit, tetapi di dalam
praktenya banyak menimbulkan masalah logistic. Biasanya masalah ini terjadi
jika dibutuhkan pemrosesan di dalam hirarki pada tingkat rendah untuk menguji
secara memadai tingkat yang lebih tinggi.

5. Pengujian Integrasi Bottom-up.
Memulai konstruksi dan pengujian dengan modul atomic (modul pada
tingkat paling rendah pada struktur program). Karena modul diintegrasikan dari
bawah ke atas, maka pemrosesan yang diperlukan untuk modul subordinate ke
suatu tuingkat yang diberikan akan selalu tersedia dan kebutuhan akan stub dapat
dieliminasi. Strategi integrasi bottom-up dapat diimplementasi dengan langkahlangkah:

 Modul tingkat rendah digabung ke dalam cluster (build) yang melakukan
subfungsi perangkat lunak spesifik.

 Driver (program control untuk pengujian) ditulis untuk mengkoordinasi
input dan output test case
6. Uji Sistem.
Uji sistem: Sistem software diuji keseluruhan. Ini memverifikasi semua
elemen secara langsung untuk memastikan bahwa semua fungsi dan performance
sistem diterima dalam lingkungan target.
Terbagi menjadi 4 bagian yaitu:
1. Recovery Testing : sistem tes yang menekan software untuk gagal dengan
cara yang bervariasi dan memverifikasi perbaikan sendiri dengan baik
2. Security Testing : usaha untuk memverifikasi mekanisme perlindungan
yang dibuat dalam sistem apakah akan melindunginya dengan semestinya.

11

3. Stress Testing : didesain untuk menghadapi program dengan situasi
abnormal.
4. Pengujian instalasi : didesain untuk menguji prosedur instalasi dan
software pendukungnya
Area fokus adalah:

 Fungsi dan performance system

 Reliability (ketersediaan) dan recoverability (kemampuan menutup/
recovery test) system

 Instalasi (uji instalasi) system

 Perilaku pada kondisi tertentu (uji tekanan dan load) system
 Operasi user (acceptance test/alpha test/) system
 Integrasi dan kolaborasi hardware dan software
 Integrasi software eksternal dan sistem

F. STRATEGI UJI COBA PERANGKAT LUNAK
Strategi uji coba perangkat lunak memudahkan para perancang untuk
menentukan keberhasilan system yg telah dikerjakan. Hal yang harus diperhatikan
adalah langkah-langkah perencanaan dan pelaksanaan harus direncanakan dengan
baik dan berapa lama waktu, upaya dan sumber daya yg diperlukan.
Strategi uji coba mempunyai karakteristik sbb :

 Pengujian mulai pada tingkat modul yg paling bawah, dilanjutkan dgn
modul di atasnya kemudian hasilnya dipadukan.

 Teknik pengujian yang berbeda mungkin menghasilakn sedikit perbedaan
(dalam hal waktu)

 Pengujian dilakukan oleh pengembang perangkat lunak dan (untuk proyek
yang besar) suatu kelompok pengujian yang independen.

 Pengujian dan debugging merupakan aktivitas yang berbeda, tetapi
debugging termasuk dalam strategi pengujian.
Pengujian perangkat lunak adalah satu elemen dari topik yang lebih luas
yang sering diacu sebagai verifikasi dan validasi (V& V).

12

Verifikasi : Kumpulan aktifitas yg menjamin penerapan perangkat lunak
benar-benar sesuai dgn fungsinya.
Validasi : Kumpulan aktivitas yang berbeda yang memastikan bahwa
perangkat lunak yang dibangun dapat memenuhi keperluan pelanggan.
1. PENGUJIAN UNIT
Unit testing (uji coba unit) fokusnya pada usaha verifikasi pada unit
terkecil dari desain perangkat lunak, yakni modul. Uji coba unit selalu berorientasi
pada white box testing dan dapat dikerjakan paralel atau beruntun dengan modul
lainnya.
2. PENGUJIAN INTEGRASI
Pengujian terintegrasi adl teknik yg sistematis untuk penyusunan struktur
program, pada saat bersamaan dikerjakan uji coba untuk memeriksa kesalahan yg
nantinya digabungkan dengan interface.
Metode pengujian
a. top down integration
b. buttom up integration
a. Pengujian integrasi top down (top down integration)
Top

down

integration

adalah

pendekatan

incremental

dengan

menggerakkan ke bawah melalui hirarki control, dimulai dengan control utama.
Strategi intergrasi top-down memeriksa control mayor atau keputusan pada saat
awal di dalam proses pengujian. Pada struktur program yang difaktorkan dengan
baik, penarikan keputusan terjadi pada tingkat hirarki yang lebih tinggi sehingga
terjadi lebih dulu.
Strategi top-down kelihatannya tidak sangat rumit, tetapi di dalam
praktenya banyak menimbulkan masalah logistic. Biasanya masalah ini terjadi
jika dibutuhkan pemrosesan di dalam hirarki pada tingkat rendah untuk menguji
secara memadai tingkat yang lebih tinggi.
b. Pengujian Integrasi Bottom-up (buttom up integration)
Bottom up integration memulai konstruksi dan pengujian dengan modul
atomic (modul pada tingkat paling rendah pada struktur program). Karena modul
diintegrasikan dari bawah ke atas, maka pemrosesan yang diperlukan untuk modul

13

subordinate ke suatu tuingkat yang diberikan akan selalu tersedia dan kebutuhan
akan stub dapat dieliminasi. Strategi integrasi bottom-up dapat diimplementasi
dengan langkah-langkah:
1. Modul tingkat rendah digabung ke dalam cluster (build) yang melakukan
subfungsi perangkat lunak spesifik.
2. Driver (program control untuk pengujian) ditulis untuk mengkoordinasi
input dan output test case
3. Cluster diuji
4. Driver diganti dan cluster digabungkan dengan menggerakkannya ke atas
di dalam struktur program.
Karakteristik utama dari pengujian perangkat lunak :


Formal-Rencana uji perangkat lunak merupakan bagian dari pengembangan
proyek dan rencana mutu, dijadwalkan di muka dan item sentral muncul
dalam perjanjian pembuatan perangkat lunak yang ditandatangani antara
pelanggan dan pengembang. Dengan kata lain, pengujian perangkat lunak
secara ad hoc oleh rekan atau pemeriksaan berkala oleh pemimpin tim



pemrograman tidak dapat dianggap sebagai tes perangkat lunak.
Tim penguji khusus – Sebuah tim independen atau eksternal konsultan yang
mengkhususkan diri dalam pengujian ditugaskan untuk melaksanakan tugas
ini terutama dalam rangka untuk menghilangkan bias dan untuk menjamin
pengujian yang efektif oleh para profesional terlatih. Selain itu, secara umum
diterima bahwa tes yang dilakukan oleh pengembang sendiri akan
menghasilkan hasil yang buruk, sebagai individu yang mengembangkan
produk asli akan menemukan kesulitan untuk mengungkapkan kesalahan yang
mereka tidak diidentifikasikan lebih awal. Namun, unit test terus dilakukan



oleh pengembang di banyak organisasi.
Menjalankan program – Segala bentuk kegiatan jaminan kualitas yang tidak
melibatkan menjalankan perangkat lunak, untuk pemeriksaan contoh kode,
tidak dapat dianggap sebagai kegiatan ujian

14



Prosedur pengujian disetujui – Proses pengujian yang dilakukan berdasarkan
suatu rencana uji dan prosedur pengujian yang telah disetujui sebagai sesuai



dengan prosedur SQA diadopsi oleh organisasi yang berkembang.
Uji kasus disetujui – kasus uji yang akan diperiksa didefinisikan secara penuh
oleh rencana uji. Tidak ada kelalaian atau penambahan diharapkan terjadi
selama pengujian. Dengan kata lain, sekali proses telah dimulai, Penguji tidak
diperkenankan untuk menerapkan kebijaksanaan dengan menghilangkan batu
ujian jika dianggap berlebihan atau dengan menambahkan ujian baru,
meskipun mungkin menjanjikan.

G. LANGKAH-LANGKAH PENGUJIAN
Langkah-langkah yang seharusnya dilakukan ketika melakukan pengujian,
adalah :
1. Menentukan apa yang akan diukur melalui pengujian
2. Menentukan bagaimana pengujian akan dilaksanakan
3. Membangun suatu kasus uji (test case), yaitu sekumpulan data atau situasi
yang akan digunakan dalam pengujian.
4. Menentukan hasil yang diharapkan atau hasil sebenarnya
5. Menjalankan kasus pengujian
6. Membandingkan hasil pengujian dan hasil yang diharapkan.
Ketika akan melakukan pengujian terdapat beberapa hal yang harus
diperhatikan, yaitu:
1. Menspesifikasikan kebutuhan (requirement) produk dalam bentuk yang
dapat diukur (quantifiable) jauh sebelum pengujian dimulai.
2. Menyatakan tujuan pengujian secara eksplisit.
3. Memahami pengguna perangkat lunak dan membuat profil dari tiap
kategori pengguna.
4. Membuat rencana pengujian yang menekankan pada rapid cycle testing.
5. Membuat perangkat lunak robust yang dapat menguji dirinya sendiri.

15

6. Menggunakan formal technical review sebagai penyaring sebelum
pengujian dilakukan.
7. Menggunakan formal technical review untuk menilai strategi pengujian
dan kasus uji.
8. Mengembangkan ancangan peningkatan berlanjut untuk proses pengujian.

Di awal melakukan pengujian, hal pertama yang harus dilakukan adalah
membuat rencana pengujian, yang mencakup hal-hal berikut :
1. Proses testing : Mendeskripsi fase-fase utama dalam pengujian
2. Pelacakan Kebutuhan : Menentukan semua kebutuhan user yang akan
diujikan secara individu
3. Item yg diuji : Menspesifikasi komponen sistem yang diuji
4. Jadwal testing
5. Prosedur Pencatatan Hasil dan Prosedur
6. Kebutuhan akan Hardware dan Software
7. Kendala-kendala

H. TUJUAN PENGUJIAN
Testing dilakukan untuk memastikan mutu dari suatu produk yaitu
menguji apakah produk (dalam hal ini system informasi) yang dihasilkan telah
sesuai dengan mutu yang dipersyaratkan. Testing dilakukan untuk memastikan
atau menjaga mutu suatu produk
Testing merupakan proses analisa dan entitas software, pada testing ini
bertujuan untuk mendeteksi adanya perbedaan antrar kondisi software yang ada
dengan kondisi yang diinginkan, untuk melihat kerusakan suatu produk
melakukan evaluasi fitur fitur dari software.
Tujuan Langsung :


Untuk mengidentifikasi dan mengungkapkan sebagai kesalahan sebanyak
mungkin dalam perangkat lunak yang diuji.

16



Untuk membawa perangkat lunak diuji, setelah memperbaiki kesalahan
yang diidentifikasi dan melakukan pengujian ulang, pada tingkat kualitas



yang memadai.
Untuk melakukan tes yang diperlukan secara efisien dan efektif, dalam
keterbatasan anggaran dan penjadwalan.

Tujuan Tidak Langsung :


Untuk menyusun catatan kesalahan perangkat lunak untuk digunakan
dalam

pencegahan

kesalahan

(dengan

tindakan

perbaikan

dan

pencegahan).

I. DEBUGGING
Bug itu bahasa Indonesianya adalah serangga pengganggu. Kalau dalam
dunia script, bug juga bisa diartikan "lubang-lubang error yang disebabkan karena
ketidaksempurnaan desain pada program yang menyebabkan program itu tidak
berfungsi semestinya". Tapi kesalahan ini sangat kecil sehingga dinamakan bug
atau si kecil yang mengganggu.

Untuk lebih jelasnya pengertian bug adalah :
Bug dengan terjemahan langsung ke bahasa Indonesia adalah serangga
atau kutu. Bug merupakan suatu kesalahan desain pada suatu perangkat keras
komputer atau perangkat lunak komputer yang menyebabkan peralatan atau
program itu tidak berfungsi semestinya. Bug umumnya lebih umum dalam dunia
perangkat lunak dibandingkan dengan perangkat keras.

Kenapa Dinamakan Bug?
Tahun 1945 sewaktu ukuran komputer masih sebesar kamar, pihak militer
Amerika Serikat menggunakan komputer yang bernama "Mark 1". Suatu hari
komputer ini tidak berfungsi dengan semestinya, setelah komputer itu diperiksa
ternyata ada suatu bagian perangkat keras di mana terdapat serangga yang
tersangkut. Setelah serangga itu diangkat dari perangkat keras, komputer dapat

17

berfungsi dengan baik. Maka sejak saat itu kata bug lekat dengan masalahmasalah pada komputer.

Sekarang ada bug maka ada juga istilah debugging.
Debugging adalah sebuah metode yang dilakukan oleh para pemrogram
dan pengembang perangkat lunak untuk meng-analisa alur kerja program, mencari
dan mengurangi bug, atau kerusakan di dalam sebuah program komputer atau
perangkat keras sehingga perangkat tersebut bekerja sesuai dengan harapan.
Debugging cenderung lebih rumit ketika beberapa subsistem lainnya terikat
dengan ketat dengannya, mengingat sebuah perubahan di satu sisi, mungkin dapat
menyebabkan munculnya bug lain di dalam subsistem lainnya.

18

DAFTAR PUSTAKA

B. Beizer,1990,Software Testing techniques,2nd Edition, Van Nostrand Reinhold.
Glen Myers,1979,The Art of Software Testing,Wiley
Langkah

Pengujian,
https://rifq221091.wordpress.com/2014/01/03/langkahpengujian/, 25/05/2016

Software

Testing : Proses
18/10/2014

Tahapan

Pengujian,
https://rifq221091.wordpress.com/2014/01/03/tahapanpengujian/, 25/05/2016

Pengujian,

http://ujisoftware.wordpress.com/,

Testing (Pengujian Perangkat Lunak),
http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=3&cad=rja
&uact=8&ved=0CCoQFjAC&url=http%3A%2F%2Fdosen.amikom.a
c.id%2Fdownloads%2Fmateri%2FTESTING%2520PERANGKAT%
2520LUNAK.doc&ei=Nm5PVKjVNqXImwXTtICABA&usg=AFQj
CNHAFqsDq1s1C2xMWkNT5uZhYBDog&sig2=SkCv8CaESjkgCzTdlQR1DQ&b
vm=bv.77880786,d.dGY , 25/05/2016
Testing dan implementasi - SlideShare,
http://www.slideshare.net/fatonitkj/testing-dan-implementasi, 25/05/2016
Testing Dan Implementasi Perangkat Lunak,
http://rekayasaperangkat.blogspot.com/2008/12/pengujian-dan-implementasiperangkat.html, 25/05/2016

19

STRATEGI
SISTEM TESTING DAN DEBUGGING

MAKALAH

Diajukan untuk melengkapi Mata Kuliah dan memenuhi syarat-syarat
Guna memperoleh gelar Sarjana Komputer
Universitas Ubudiyah Indonesia

Oleh;
KELOMPOK I

Reza Al Fajri
Khalilullah
Ida Marliani
Ella Noviyanti

PROGRAM STUDI S-1 SISTEM INFORMASI
FAKULTAS ILMU KOMPUTER
UNIVERSITAS UBUDIYAH INDONESIA
BANDA ACEH
2016

20

KATA PENGANTAR

Puja dan syukur sepatutnya penulis haturkan ke hadirat Allah

, Zat

pencipta dan Maha Kuasa atas segala hidayah dan karunia-Nya. Shalawat dan salam
semoga

senantiasa

tercurah

ke

haribaan

Alhamdulillahirabbil’alamin, dengan izin Allah

Nabi

Muhammad

.

penulis dapat menyelesaikan

Makalah yang berjudul “STRATEGI SISTEM TESTING DAN DEBUGGING”
sebagai salah satu persyaratan untuk memperoleh gelar Sarjana (S.Kom) pada
Program Studi Sistem Informasi Universitas Ubudiyah Indonesia, Banda Aceh.
Kami Penyusun menyadari bahwa Makalah ini masih memiliki
kekurangan. Karenanya Penyusun mengharapkan kritik dan saran yang
membangun dari pembaca terutama kepada dosen pembimbing untuk perbaikan
pada jenjang pendidikan yang lebih tinggi di masa yang akan datang.
Akhirnya kepada Allah

jugalah penulis berserah diri, semoga selalu

dalam lindungan dan hidayahnya-Nya. Aamiin

Banda Aceh, 23 Mei 2016
Penyusun,

Kelompok I

ii

21

DAFTAR ISI
KATA PENGANTAR ........................................................................................... ii
DAFTAR ISI ......................................................................................................... iii
A. PENGUJIAN /TESTING ................................................................................. 1
B. PENGUJIAN SYSTEM .................................................................................. 2
C. PENGUJIAN PERANGKAT LUNAK ........................................................... 5
D. ATRIBUT PENGUJIAN YG BAIK : ............................................................. 8
E. DESAIN TEST CASE: .................................................................................... 9
F.

STRATEGI UJI COBA PERANGKAT LUNAK ......................................... 12

G. LANGKAH-LANGKAH PENGUJIAN........................................................ 15
H. TUJUAN PENGUJIAN ................................................................................. 16
I.

DEBUGGING ................................................................................................ 17

iii

22