Disusun Oleh:
Segala puji dan syukur penyusun panjatkan atas kehadirat Tuhan Yang
Maha Esa, yang telah mencurahkan segala nikmat, rahmat, hidayah, kepada
penyusun sehingga tugas makalah mata kuliah “ Testing dan Implementasi Sistem”
dapat kami selesaikan.
Syukur serta salam semoga tercurahkan kepada pembaca dan kita jadi
teladan atau contoh dalam pembuatan Makalah.
Tidak lupa penyusun ucapkan terima kasih kepada dosen mata kuliah
“ Testing dan Implementasi Sistem” atas bimbingannya, dan kepada semua orang
yang terlibat baik langsung maupun tidak langsung sehingga makalah ini dapat
terselesaikan.
Adapun jika isi makalah ini memiliki banyak kekurangan, oleh karena itu,
kritik serta saran yang membangun khususnya dari dosen sangat penyusun
harapkan
ii
DAFTAR ISI
iii
iv
BAB I
PENDAHULUAN
1
yang menggunakan representasi struktur kotak. “Kotak” mengenkapsulasi sistem
(atau beberapa aspek sistem) pada suatu tingkat abstraksi spesifik.
I.3 Tujuan
1. Memahami lebih dalam pencegahan terhadap cleanroom testing.
2. Mengetahui lebih dalam model proses cleanroom.
3. Memberikan cara untuk melakukan cleanroom testing.
2
BAB II
PEMBAHASAN
3
kemudian semua increment tersebut digabungkan. Urutan kerja cleanroom untuk
setiap increment diilustrasikan dalam gambar 1. Semua requirement sistem
dikembangkan dengan metode perekayasaan sistem (system engineering methods).
Ketika fungsionalitas telah diberikan, pipeline increment cleanroom dimulai.
4
Code generation, inspection, and verification. Spesifikasi struktur boks
diterjemahkan ke dalam bahasa pemrograman. Teknik inspeksi digunakan untuk
memastikan kesesuaian kode dan struktur boks dan kebenaran sintaks kode.
Kemudian verifikasi kebenaran dilakukan pada source code.
5
boks memiliki transparansi referensial. Dengan begitu spesifikasi dari masing-
masing boks sudah cukup untuk mendefinisikan refinement, tanpa bergantung pada
implementasi boks yang lain.
a. Black box
Black box menspesifikasikan perilaku sistem atau bagian dari sistem. Sistem
(atau bagian dari sistem) merespon stimuli (event) dengan mengaplikasikan
aturan transisi yang memetakan stimuli ke respon (seperti dalam relasi
himpunan, setiap stimuli berkorespondensi dengan respon yang sesuai). Itulah
mengapa, boks teratas ini disebut black box. Karena pada level ini untuk
sebuah even yang terjadi, kita hanya tahu sebatas respon yang akan diberikan
oleh sistem, atau bagian dari sistem, tanpa tahu proses apa sebenarnya yang
terjadi di dalam box.
6
boks pada level bawah bisa mewarisi property dari boks yang lebih atas
menurut struktur tree.
b. State box
State box mengenkapsulasi data state dan operasinya. Di state box ini, input
pada state-box (stimuli) dan output (respon) direpresentasikan. State box juga
merepresentasikan “stimulus history” dari black box; data yang dienkapsulasi
dalam state box yang harus dijaga selama terjadi transisi diimplikasikan. State
box merespon stimuli dengan membuat transisi dari current state ke beberapa
state baru. State box menggunakan data abstraksi untuk menentukan transisi
ke state selanjutnya dan aksi (respon) yang akan terjadi sebagai konsekuensi
transisi.
c. Clear box
Clear box merupakan level terendah dalam box structure. Fungsi transisi yang
dipanggil oleh state box didefinisikan di clear box (clear box berisi desain
prosedural dari state box). Clear box berhubungan erat dengan pemrograman
terstruktur. Spesifikasi prosedural yang terdapat pada struktur hirarki clear box
dapat dibuktikan kebenarannya (akan dijelaskan pada bagian selanjutnya).
7
II.5 Desain Cleanroom
Pendekatan desain yang digunakan pada perekayasaan software cleanroom
banyak sekali menerapkan filosofi pemrograman terstruktur (terutama pada
pendefinisian fungsi). Konsep enkapsulasi data, information hiding, dan pemilihan
tipe data yang tepat digunakan untuk membuat desain data. Pada setiap level
refinement, tim cleanroom melakukan verifikasi kebenaran formal. Keuntungan
dilakukannya verifikasi desain:
1. Mengurangi verifikasi pada finite process
2. Memungkinkan tim cleanroom memverifikasi setiap baris desain dan kode
3. Menghasilkan level defek mendekati nol. Ini merupakan hal yang terpenting
karena proses debugging (penghilangan defek) merupakan aktivitas yang
sangat membuang waktu dan mahal
4. Menghasilkan kode yang lebih baik dibandingkan dengan kode yang
dihasilkan unit testing.
8
II.6 Pengetesan Cleanroom
Tujuan pengetesan cleanroom adalah untuk memvalidasi kebutuhan
software dengan mendemonstrasikan bahwa sampel statistik use-case dapat
dilakukan dengan sukses, yang akan menghasilkan sertifikasi pada komponen
software. Komponen software reusable dapat disimpan bersama dengan skenario
penggunaan, stimuli program, dan distribusi probabilitas. Pendekatan sertifikasi
meliputi lima langkah:
1. Skenario penggunaan harus dibuat
2. Profil penggunaan harus dispesifikasikan
3. Test case dibangkitkan dari profil tersebut
4. Tes dijalankan dan data kesalahan dicatat dan dianalisa
5. Reliabilitas dikomputasikan dan disertifikasikan
9
BAB III
PENUTUP
III.1 Kesimpulan
Cleanroom adalah pendekatan formal ke pengembangan software yang
dapat membawa ke software yang memiliki kualitas yang sangat tinggi. Rekayasa
software dengan metode cleanroom menggunakan spesifikasi struktur kotak (atau
metode formal) untuk pemodelan analisis dan desain, serta lebih menekankan
verifikasi kebenaran daripada testing, sebagai mekanisme utama untuk menemukan
dan menghilangkan kesalahan.
III.2 Saran
Dalam Cleanroom testing sebaiknya bergantung pada testing statistikal
untuk menemukan error yang mungkin berakibat fatal dan dapat merusak sistem.
10
REFERENSI
11
12