SlideShare a Scribd company logo
1 of 35
SOFTWARE
TESTING
M. Nor Kholis 1534010006
Irfan Erfolgi H 1534010007
I Putu Mahardika C.H 1534010018
Wahyu Aji P. 1534010034
BLACK BOX TESTING
Black box testing ia teknik testing yang dijalankan tanpa
dibutuhkannya pengetahuan tentang cara kerja interior (kode)
dari aplikasi. Tester menyadari arsitektur system namun tidak
memiliki akses ke kode sumber. Biasanya, ketika melakukan
black box testing, tester akan berinteraksi dengan user
interface system dengan memberikan masukan dan memeriksa
output tanpa mengetahui bagaimana dan dimana input bekerja.
KEUNGGULAN BLACK BOX TESTING
•Tepat dan efisien untuk segment software yang cakupannya luas.
•Tidak membutuhkanakses ke dalam kode.
•Memisahkan perspektif pengguna/tester dengan perspektif
pengembang
•Tester/penguji tidak perlu memahami bahasa pemrograman atau
sistem operasi.
KERUGIAN MENGGUNAKAN BLACK
BOX TESTING
•Terbatasnya area cakupan pengujian karena yang diuji adalah hanya
sebatas skenario yang telah ditentukan.
•Pengujian bisa menjadi tidak efisien apabila penguji tidak memahami
alur kerja software.
•Skenario pengujian sulit untuk dirancang.
MACAM-MACAM BLACK BOX
TESTING
•Equivalence Partitioning
•Boundary Value Analysis/Limit Testing
•Comparison Testing
•Sample Testing
•Robustness Testing
•Behavior Testing
•Requirement Testing
•Performance Testing
•Uji Ketahanan (Endurance Testing)
•Uji Sebab-Akibat (Cause-Effect Relationship Testing)
CONTOH BLACK BOX TESTING
DENGAN EQUIVALENCE
PARTITIONING
Pemeliharaan data untuk aplikasi bank yang telah
diotomasisasikan. Pemakai dapat memutar nomor telepon bank
dengan mikrokomputer yang terhubung dengan password yang telah
ditentukan dan diikuti dengan perintah perintah . Data yang diterima
adalah:
Kode area : kosong atau 3 digit
Prefix : 3 digit atau tidak diawali 0 atau 1.
Suffix : 4 digit.
Password : 6 Digit alphanumeric
Perintah : Check deposit, dll
selanjutnya kondisi input digabungkan dengan masing-masing
data elemen, dapat ditentukan sebagai berikut:
•Kode area : kondisi input, boolean –kode area mungkin ada atau
tidak. Kondisi input, range –nilai ditentukan antara 200 dan 999.
•Prefix : kondisi input range > 200, atau tidak diawali 0 atau 1.
•Suffix : kondisi input nilai 4 digit.
•Password : kondisi input boolean –password mungkin diinputkan
atau tidak, kondisi input dengan nilai 6 karakter string.
•Perintah : kondisi input set berisikan perintah-perintah yang telah
didefinisikan.
WHITE BOX
White box testing adalah penyelidikan rinci logika internal
dan struktur kode. White box testing juga disebut glass testing
atau open box testing. Dalam rangka untuk melakukan white
box testing pada aplikasi, tester perlu memiliki pengetahuan
tentang alur kerja internal kode. Tester perlu melihat dalam
sumber dan mengetahui unit / serangkaian kode yang terdapat
pada software.
KEUNGGULAN WHITE BOX TESTING
•Sebagai tester yang memiliki pengetahuan tentang sumber kode,
akan menjadi sangat mudah untuk mengetahui jenis data. Hal ini
dapat membantu dalam pengujian aplikasi secara efektif.
•Tester berfungsi sebagai penguji ataupun pengoptimasi kode.
•Dapat secara langsung memperbaiki kode dari aplikasi tersebut.
•Karena pengetahuan tester mengenai kode, jangkauan maksimum
dicapai selama pengujian berdasarkan skenario.
KERUGIAN WHITE BOX TESTING
•Dibutuhkan biaya besar untuk melakukan pengujian.
•Kadang-kadang sulit untuk melihat ke setiap sudut untuk
mengetahui kesalahan tersembunyi yang dapat menimbulkan
masalah karena banyaknya proses yang harus diuji.
•Sulit untuk mempertahankan white box testing menggunakan alat
bantu seperti analisis kode dan alat debugging yang diperlukan.
JENIS-JENIS WHITE BOX TESTING
•Basis path : metode identifikasi yang berdasarkan pada jalur
struktur, koneksi, yang ada dari suatu sistem, ini biasa disebut juga
sebagai branch testing. Karena cabang-cabang dari kode atau fungsi
logika diidentifikasi dan di tes atau disebut juga control flow testing.
•Cyclometic complexity : ia pengukuran software yang memberikan
pengukuran kuantitatif dari kompleksitas logika program.
•Graph matrix : ia matrix segi empat sama sisi, dimana jumlah
baris dan kolom sama dengan jumlah node, dan identifikasi baris dan
kolom sama dengan identifikasi node, serta isi data adalah
keberadaan penghubung antar node (edges).
CONTROL STRUCTUR TESTING
Condition testing : Suatu metode disain test case yang
memeriksa kondisi logika yang terdapat pada modul program.
Data flow testing : Metode data flow testing memilih jalur
program berdasarkan pada lokasi dari definisi dan penggunaan
variabel-variabel pada program.
Loop testing : suatu teknik white box testing yang
berfokus pada validitas konstruksi loop secara eksklusif. Ada 4
kelas dari loop, yaitu;
 Simple Loops
 Nested Loops
 Concatenated Loops
 Unstructured Loops
GREY BOX TESTING
Grey box testing adalah teknik untuk menguji aplikasi dengan
pengkombinasian antara white box testing dan black box testing.
Dalam
pengujian software. Menguasai sistem selalu memberikan tester
keunggulan atas seseorang dengan pengetahuan sistem yang
terbatas, baik
dari sisi kode maupun alur kerja software. Tidak seperti black box
testing,
di mana tester hanya menguji aplikasi user interface, dalam grey box
testing, tester memiliki akses ke dokumen desain dan database.
Dengan
memiliki pengetahuan ini, tester dapat lebih mempersiapkan data uji
KEUNGGULAN METODE GREY BOX
TESTING
Memiliki keunggulan dari white box testing dan black box testing.
Grey box tester tidak hanya bergantung pada kode sumber, namun
dapat juga bergantung pada interface aplikasi dan spesifikasi
fungsional.
Skenario tes yang sangat baik terutama di sekitar protokol
komunikasi dan penanganan tipe data.
Tes ini dilakukan dari sudut pandang pengguna dan bukan desainer.
KELEMAHAN MENGGUNAKAN GREY
BOX TESTING
Karena akses ke dalam kode dan database terbatas, maka cakupan
tes terbatas.
Tes dapat berlebihan jika desainer perangkat lunak telah
menjalankan uji kasus.
Pengujian setiap aliran masukan yang mungkin tidak realistis akan
mamakan banyak waktu.
TEKNIK YANG ADA PADA GREY BOX
TESTING
Matrix Testing, yaitu menyatakan laporan atau status proyek.
Regression Testing, yaitu menyatakan status apakah terjadi
perubahan pada kasus uji yang baru dibuat.
Pattern Testing, yaitu memverifikasi aplikasi yang baik untuk desain
atau arsitektur dan pola.
Orthogonal array testing, yaitu sebagai bagian dari semua
kemungkinan kombinasi.
APLIKASI DARI GREY BOX TESTING
Grey box testing biasa digunakan pada software OOP , dimana object-
object tersebut adalah unit terpisah yang memiliki kode eksekusi atau
data. Contoh aplikasi yang membutuhkan grey box testing yaitu:
Architectural Model
Unified Modeling Language
Finite
PERBEDAAN DAN PERSAMAAN
WHITE BOX, BLACK BOX DAN GREY
BOX TESTING
Pada white box testing, penguji mengetahui tentang QA. Penguji
melakukan pengujian pada software yang menyangkut security dan
performance program tersebut (meliputi tes code, desain
implementasi, security, data flow serta software failure). Pengujian ini
dilakukan seiring dengan tahapan pengembangan software atau pada
tahap testing. Kemudian pengecekan dilakukan terhadap detail
perancangan.
Pada metode black box testing, pengujian dilakukan oleh penguji
independen. Pengujian dilakukan berdasarkan apa yang dilihat serta
hanya fokus terhadap fungsionalitas dan output. Pengujian lebih
ditujukan pada desain software sesuai standar dan reaksi apabila
terdapat celah-celah bug/vulnerabilitas pada program aplikasi
tersebut setelah dilakukan white box testing. Black box testing
dilakukan hanya dengan mengamati hasil eksekusi melalui data uji.
Sedangkan pada metode grey box testing, pengujian lebih menangani
skenario uji coba, misalnya tipe data, protokol, komunikasi, dan
penanganan eksepsi. Dasarnya adalah spesifikasi fungsional,
tampilan arsitektur. Grey box testing menggunakan teknik pengujian
sistem dengan pengetahuan yang terbatas dari internal sistem yang
memiliki akses ke dokumen desain rinci. Pengujian dengan
menggunakan metode ini juga berdasarkan desain dokumen dan
spesifikasi fungsional dari suatu sistem.
Persamaan antara white box testing dan black box testing yaitu dapat
menemukan cacat dan dapat mendeteksi kondisi-kondisi yang tidak
sesuai. Selain itu, metode uji coba black box memungkinkan
pengembang sofware untuk membuat himpunan kondisi input yang
akan melatih seluruh syarat-syarat fungsional suatu program. Uji
coba black box bukan merupakan alternatif dari uji coba white boc
tetapi merupakan pendekatan yang melengkapi untuk menemukan
kesalahan lainnya, selain menggunakan metode whitebox.
Selain itu, keduanya melakukan pendeteksian terhadap software yang
tidak sesuai dengan menggunakan beberapa metode yang sama.
SOFTWARE QUALITY ASSURANCE
(SQA)
Software quality assurance merupakan orang yang bertanggung
jawab terhadap terhadap perencanaan jaminan kualitas, kesalahan,
penyimpanan rekaman, analisis dan pelaporan. Jaminan perangkat
lunak adalah aktivitas pelindung yang diaplikasikan pada seluruh
proses perangkat lunak.
SYARAT KUALITAS SOFTWARE
Produk dikatakan berkualitas apabila:
Kebutuhan perangkat lunak merupakan fondasi yang melaluinya
kualitas diukur.
Standar yang telah ditentukan menetapkan serangkaian kriteria
pengembangan yang menuntun cara perangkat lunak direkayasa.
Ada serangkaian kebutuhan implisit yang sering dicantumkan
(misalnya kebutuhan akan kemampuan pemeliharaan yang baik).
CAKUPAN SOFTWARE QUALITY
ASSURANCE
Pendekatan manajemen kuaitas.
Teknologi rekayasa perangkat lunak yang efektif (metode dan
piranti).
Kajian teknik formal yang diaplikasikan pada keseluruhan proses
perangkat lunak.
Strategi pengujian multitiered (deret bertingkat).
Kontrol dokumentasi perangkat lunak dan perubahan.
Prosedur untuk menjamin kesesuaian dengan standar pengembangan
perangkat lunak.
Mekanisme pengukuran dan pelaporan.
SISTEM KOMPONEN SQA
Sistem komponen sqa diklasifikasikan sebagai berikut:
Komponen kualitas pre-proyek
Komponen kualitas siklus hidup proyek
Komponen infrastruktur kesalahan pencegahan dan perbaikan
Komponen kualitas mutu manajemen
Komponen standarisasi, sertifikasi, dan penilaian SQA
Komponen manusia-organisasi SQA
PERTIMBANGAN YANG
MEMPENGARUHI PENGGUNAAN
KOMPONEN SQA
Organisasi pertimbangan
Pertimbangan proyek dan jasa pemeliharaan
Pertimbangan staf professional
METODE MCCALL (PRODUCT
REVISION)
Bagian ini mengacu pada kemampuan untuk mengalami perubahan.
Terdapat 3 metode yaitu:
Maintainability, yaitu usaha yang dibutuhkan untuk menempatkan
dan menyelesaikan kesalahan program dalam lingkungan.
Flexibility, yaitu kemudahan membuat perubahan yang disebabkan
oleh perubahan dalam lingkungan pengoperasian
Testability, yaitu kemudahan dalam pengujian program, untuk
meyakinkan bahwa program bebas error dan memenuhi
spesifikasinya.
METODE MCCALL (PRODUCT
TRANSITION)
Bagian ini lebih mengacu pada adaptasi pada lingkungan baru.
Terdapat tiga metode yaitu:
Portability, yaitu usaha yang dibutuhkan untuk memindahkan
program dari satu lingkungan ke lingkungan lain.
Reusability, yaitu kemudahan penggunaan kembali software dalam
konteks yang berbeda.
Iteroperability, yaitu usaha untuk memasangkan sistem dengan
sistem yang lain.
METODE MCCALL (PRODUCT
OPERATION)
Bagian ini mengacu pada karakteristik pengoperasian. Terdapat 5
metode pada bagian ini, yaitu:
Correctness, yaitu tingkatan dimana software mencapai
spesifikasinya.
Reliability, yaitu kemampuan sistem untuk tidak gagal.
Efficiency, yaitu efisien dalam eksekusi dan penyimpanan. Umumnya
diartikan penggunaan resource, seperti: waktu, processor,
memori, dsb.
Integrity, yaitu perlindungan program dari akses yang tidak
berkepentingan.
Usability, yaitu kemudahan penggunaan software.
BARRY BOEHM
Barry Boehm lahir pada tahun 1935. beliau merupakan seorang
insinyur perangkat lunak dari Amerika, seorang professor terkemuka
mengenai ilmu komputer, teknik industri dan sistem. Barry Boehm
dikenal karena banyaknya kontribusi ke bidang rekayasa perangkat
lunak, salah satuya mengenai spiral model.
SPIRAL MODEL BARRY BOEHM
Spiral model merupakan salah satu bentuk evolusi yang menggunakan
metode iterasi natural yang dimiliki oleh model prototyping dan
digabungkan dengan aspek sistematis yang dikembangkan dengan
model waterfall.
AKTIVITAS-AKTIVITAS SPIRAL
MODEL
Customer communication
Planning
Analysis risk
Engineering
Cunstruction and release
Customer evaluation
KELEBIHAN SPIRAL MODEL
Dapat disesuaikan supaya perangkat lunak bisa dipakai selama
software komputer menyala.
Lebih cocok untuk pengembangan sistem dan perangkat lunak skala
besar.
Pengembang dan pemakai dapat lebih mudah memahami dan
bereaksi terhadap resiko setiap tingkat evolusi karena perangkat
lunak terus bekerja selama proses.
Menggunakan prototipe sebagai mekanisme pengurangan resiko dan
pada setiap keadaan di dalam evolusi produk.
Tetap mengikuti langkah-langkah dalam siklus kehidupan klasik dan
memasukkannya ke dalam kerangka kerja iteratif.
KELEMAHAN SPIRAL MODEL
Sulit untuk meyakinkan pelanggan bahwa pendekatan evolusioner ini
bisa dikontrol.
Memerlukan penaksiran resiko yang masuk akal dan akan menjadi
masalah yang serius jika resiko meyor tidak ditemukan dan diatur.
Butuh waktu lama untuk menerapkan paradigma ini menuju kepastian
yang absolut.

More Related Content

What's hot

Kebutuhan perangkat lunak
Kebutuhan perangkat lunakKebutuhan perangkat lunak
Kebutuhan perangkat lunakAinul Yaqin
 
Testing&implementasi 3
Testing&implementasi 3Testing&implementasi 3
Testing&implementasi 3aiiniR
 
Soal essay basis data xi
Soal essay basis data xiSoal essay basis data xi
Soal essay basis data xitia irma
 
Resume software measurement
Resume software measurementResume software measurement
Resume software measurementErwan Nur Arief
 
Rpl 5-perencanaan proyek perangkat lunak
Rpl 5-perencanaan proyek perangkat lunakRpl 5-perencanaan proyek perangkat lunak
Rpl 5-perencanaan proyek perangkat lunakf' yagami
 
Testing dan implementasi_sistem_-_romeo
Testing dan implementasi_sistem_-_romeoTesting dan implementasi_sistem_-_romeo
Testing dan implementasi_sistem_-_romeoAbrianto Nugraha
 
membuat function dalam mysql
membuat function dalam mysqlmembuat function dalam mysql
membuat function dalam mysqlsukangimpi
 
04 Testing Perangkat Lunak
04 Testing Perangkat Lunak04 Testing Perangkat Lunak
04 Testing Perangkat LunakMrirfan
 
SE - Chapter 8 Strategi Pengujian Perangkat Lunak
SE - Chapter 8 Strategi Pengujian Perangkat LunakSE - Chapter 8 Strategi Pengujian Perangkat Lunak
SE - Chapter 8 Strategi Pengujian Perangkat LunakRiza Nurman
 
Lembar penilaian rekayasa perangkat lunak baru
Lembar penilaian rekayasa perangkat lunak baruLembar penilaian rekayasa perangkat lunak baru
Lembar penilaian rekayasa perangkat lunak baruPuguh Rismadi
 
Model data relasional (3)
Model data relasional (3)Model data relasional (3)
Model data relasional (3)Fariszal Nova
 
RPL 1 (Lama) - Pengujian Perangkat Lunak
RPL 1 (Lama) - Pengujian Perangkat LunakRPL 1 (Lama) - Pengujian Perangkat Lunak
RPL 1 (Lama) - Pengujian Perangkat LunakAdam Mukharil Bachtiar
 
Software Measurement : Function Point
Software Measurement : Function PointSoftware Measurement : Function Point
Software Measurement : Function PointDendie Sanjaya
 

What's hot (20)

Bab III Class Diagram
Bab III Class DiagramBab III Class Diagram
Bab III Class Diagram
 
[PBO] Pertemuan 5 - Polymorphism
[PBO] Pertemuan 5 - Polymorphism[PBO] Pertemuan 5 - Polymorphism
[PBO] Pertemuan 5 - Polymorphism
 
Kebutuhan perangkat lunak
Kebutuhan perangkat lunakKebutuhan perangkat lunak
Kebutuhan perangkat lunak
 
[RPL2] Pengujian Perangkat Lunak
[RPL2] Pengujian Perangkat Lunak[RPL2] Pengujian Perangkat Lunak
[RPL2] Pengujian Perangkat Lunak
 
Testing&implementasi 3
Testing&implementasi 3Testing&implementasi 3
Testing&implementasi 3
 
Soal essay basis data xi
Soal essay basis data xiSoal essay basis data xi
Soal essay basis data xi
 
Pertemuan 4 Strategi Testing
Pertemuan 4  Strategi TestingPertemuan 4  Strategi Testing
Pertemuan 4 Strategi Testing
 
Resume software measurement
Resume software measurementResume software measurement
Resume software measurement
 
Rpl 5-perencanaan proyek perangkat lunak
Rpl 5-perencanaan proyek perangkat lunakRpl 5-perencanaan proyek perangkat lunak
Rpl 5-perencanaan proyek perangkat lunak
 
Testing dan implementasi_sistem_-_romeo
Testing dan implementasi_sistem_-_romeoTesting dan implementasi_sistem_-_romeo
Testing dan implementasi_sistem_-_romeo
 
membuat function dalam mysql
membuat function dalam mysqlmembuat function dalam mysql
membuat function dalam mysql
 
04 Testing Perangkat Lunak
04 Testing Perangkat Lunak04 Testing Perangkat Lunak
04 Testing Perangkat Lunak
 
SLIDE KE:5 NFA
SLIDE KE:5 NFASLIDE KE:5 NFA
SLIDE KE:5 NFA
 
SE - Chapter 8 Strategi Pengujian Perangkat Lunak
SE - Chapter 8 Strategi Pengujian Perangkat LunakSE - Chapter 8 Strategi Pengujian Perangkat Lunak
SE - Chapter 8 Strategi Pengujian Perangkat Lunak
 
Pertemuan 6 Estmasi Usaha Tes
Pertemuan 6 Estmasi Usaha TesPertemuan 6 Estmasi Usaha Tes
Pertemuan 6 Estmasi Usaha Tes
 
Lembar penilaian rekayasa perangkat lunak baru
Lembar penilaian rekayasa perangkat lunak baruLembar penilaian rekayasa perangkat lunak baru
Lembar penilaian rekayasa perangkat lunak baru
 
Model data relasional (3)
Model data relasional (3)Model data relasional (3)
Model data relasional (3)
 
4. pengamanan sistem operasi
4. pengamanan sistem operasi4. pengamanan sistem operasi
4. pengamanan sistem operasi
 
RPL 1 (Lama) - Pengujian Perangkat Lunak
RPL 1 (Lama) - Pengujian Perangkat LunakRPL 1 (Lama) - Pengujian Perangkat Lunak
RPL 1 (Lama) - Pengujian Perangkat Lunak
 
Software Measurement : Function Point
Software Measurement : Function PointSoftware Measurement : Function Point
Software Measurement : Function Point
 

Similar to OPTIMASI BLACK BOX, WHITE BOX, DAN GREY BOX TESTING

Paper Review - Metodologi Testing
Paper Review - Metodologi TestingPaper Review - Metodologi Testing
Paper Review - Metodologi TestingAgung Sulistyanto
 
White Box dan Black Box Testing
White Box dan Black Box TestingWhite Box dan Black Box Testing
White Box dan Black Box Testingrifqi62802
 
Slide-INF205-Pertemuan-12-Pengujian-Perangkat-Lunak.pptx
Slide-INF205-Pertemuan-12-Pengujian-Perangkat-Lunak.pptxSlide-INF205-Pertemuan-12-Pengujian-Perangkat-Lunak.pptx
Slide-INF205-Pertemuan-12-Pengujian-Perangkat-Lunak.pptxYessiSofia1
 
Blackbox And Whitebox Testing
Blackbox And Whitebox TestingBlackbox And Whitebox Testing
Blackbox And Whitebox TestingAnsviaLab
 
BLACK BOX DAN WHITE BOX.pptx
BLACK BOX DAN WHITE BOX.pptxBLACK BOX DAN WHITE BOX.pptx
BLACK BOX DAN WHITE BOX.pptxTaufikHidayat8361
 
Coding
CodingCoding
CodingDWC
 
Softwate testing strategis
Softwate testing strategisSoftwate testing strategis
Softwate testing strategisirna_300791
 
SE - Chapter 7 Teknik Pengujian Perangkat Lunak
SE - Chapter 7 Teknik Pengujian Perangkat LunakSE - Chapter 7 Teknik Pengujian Perangkat Lunak
SE - Chapter 7 Teknik Pengujian Perangkat LunakRiza Nurman
 
Bab 5 pengujian_perangkat_lunak
Bab 5 pengujian_perangkat_lunakBab 5 pengujian_perangkat_lunak
Bab 5 pengujian_perangkat_lunakAdie Suryadi
 
08 Software Testing
08 Software Testing08 Software Testing
08 Software TestingAinul Yaqin
 
5 a walk through of software testing techniques
5 a walk through of software testing techniques5 a walk through of software testing techniques
5 a walk through of software testing techniquesdede abdulah
 
Software testing strategies
Software testing  strategiesSoftware testing  strategies
Software testing strategiesJulia Carolina
 
Testing dan implemetasi sistem 1
Testing dan implemetasi sistem 1Testing dan implemetasi sistem 1
Testing dan implemetasi sistem 1Fendi Hidayat
 
BAB_1_PENGUJIAN_PERANGKAT_LUNAK.ppt
BAB_1_PENGUJIAN_PERANGKAT_LUNAK.pptBAB_1_PENGUJIAN_PERANGKAT_LUNAK.ppt
BAB_1_PENGUJIAN_PERANGKAT_LUNAK.pptMunawirBahnget
 

Similar to OPTIMASI BLACK BOX, WHITE BOX, DAN GREY BOX TESTING (20)

Paper Review - Metodologi Testing
Paper Review - Metodologi TestingPaper Review - Metodologi Testing
Paper Review - Metodologi Testing
 
White Box dan Black Box Testing
White Box dan Black Box TestingWhite Box dan Black Box Testing
White Box dan Black Box Testing
 
Software testing
Software testingSoftware testing
Software testing
 
Slide-INF205-Pertemuan-12-Pengujian-Perangkat-Lunak.pptx
Slide-INF205-Pertemuan-12-Pengujian-Perangkat-Lunak.pptxSlide-INF205-Pertemuan-12-Pengujian-Perangkat-Lunak.pptx
Slide-INF205-Pertemuan-12-Pengujian-Perangkat-Lunak.pptx
 
Blackbox And Whitebox Testing
Blackbox And Whitebox TestingBlackbox And Whitebox Testing
Blackbox And Whitebox Testing
 
BLACK BOX DAN WHITE BOX.pptx
BLACK BOX DAN WHITE BOX.pptxBLACK BOX DAN WHITE BOX.pptx
BLACK BOX DAN WHITE BOX.pptx
 
Coding
CodingCoding
Coding
 
Dede Rpl Kuis
Dede Rpl KuisDede Rpl Kuis
Dede Rpl Kuis
 
Softwate testing strategis
Softwate testing strategisSoftwate testing strategis
Softwate testing strategis
 
SE - Chapter 7 Teknik Pengujian Perangkat Lunak
SE - Chapter 7 Teknik Pengujian Perangkat LunakSE - Chapter 7 Teknik Pengujian Perangkat Lunak
SE - Chapter 7 Teknik Pengujian Perangkat Lunak
 
Bab 5 pengujian_perangkat_lunak
Bab 5 pengujian_perangkat_lunakBab 5 pengujian_perangkat_lunak
Bab 5 pengujian_perangkat_lunak
 
08 Software Testing
08 Software Testing08 Software Testing
08 Software Testing
 
5 a walk through of software testing techniques
5 a walk through of software testing techniques5 a walk through of software testing techniques
5 a walk through of software testing techniques
 
Software testing strategies
Software testing  strategiesSoftware testing  strategies
Software testing strategies
 
Pertemuan 3 Desain Test Case
Pertemuan 3 Desain Test CasePertemuan 3 Desain Test Case
Pertemuan 3 Desain Test Case
 
2731788.ppt
2731788.ppt2731788.ppt
2731788.ppt
 
RPL_15.pptx
RPL_15.pptxRPL_15.pptx
RPL_15.pptx
 
Testing dan implemetasi sistem 1
Testing dan implemetasi sistem 1Testing dan implemetasi sistem 1
Testing dan implemetasi sistem 1
 
C9 software testing
C9 software testingC9 software testing
C9 software testing
 
BAB_1_PENGUJIAN_PERANGKAT_LUNAK.ppt
BAB_1_PENGUJIAN_PERANGKAT_LUNAK.pptBAB_1_PENGUJIAN_PERANGKAT_LUNAK.ppt
BAB_1_PENGUJIAN_PERANGKAT_LUNAK.ppt
 

More from Moch. Nor Kholis

Function point web kelompok 10
Function point web kelompok 10Function point web kelompok 10
Function point web kelompok 10Moch. Nor Kholis
 
Laporan Aplikasi Service Printer
Laporan Aplikasi Service PrinterLaporan Aplikasi Service Printer
Laporan Aplikasi Service PrinterMoch. Nor Kholis
 
Mata kuliah rekayasa perangkat lunak
Mata kuliah rekayasa perangkat lunakMata kuliah rekayasa perangkat lunak
Mata kuliah rekayasa perangkat lunakMoch. Nor Kholis
 
Laporan Penilaian Software dengan Cyclomatic Complexity
Laporan Penilaian Software dengan Cyclomatic ComplexityLaporan Penilaian Software dengan Cyclomatic Complexity
Laporan Penilaian Software dengan Cyclomatic ComplexityMoch. Nor Kholis
 
Laporan Pengukuran Nilai Software dengan Kappa Coehen
Laporan Pengukuran Nilai Software dengan Kappa CoehenLaporan Pengukuran Nilai Software dengan Kappa Coehen
Laporan Pengukuran Nilai Software dengan Kappa CoehenMoch. Nor Kholis
 
Slideshow PowerPoint Manajemen Proyek
Slideshow PowerPoint Manajemen ProyekSlideshow PowerPoint Manajemen Proyek
Slideshow PowerPoint Manajemen ProyekMoch. Nor Kholis
 
Laporan Revisi Function Point (Website Teknik Kimia)
Laporan Revisi Function Point (Website Teknik Kimia)Laporan Revisi Function Point (Website Teknik Kimia)
Laporan Revisi Function Point (Website Teknik Kimia)Moch. Nor Kholis
 
Metode proses pengembangan perangkat lunak
Metode proses pengembangan perangkat lunakMetode proses pengembangan perangkat lunak
Metode proses pengembangan perangkat lunakMoch. Nor Kholis
 

More from Moch. Nor Kholis (20)

PowerPoint RPL Materi 7
PowerPoint RPL Materi 7PowerPoint RPL Materi 7
PowerPoint RPL Materi 7
 
PowerPoint RPL Materi 6
PowerPoint RPL Materi 6PowerPoint RPL Materi 6
PowerPoint RPL Materi 6
 
Function point web kelompok 10
Function point web kelompok 10Function point web kelompok 10
Function point web kelompok 10
 
Laporan Aplikasi Service Printer
Laporan Aplikasi Service PrinterLaporan Aplikasi Service Printer
Laporan Aplikasi Service Printer
 
Ppt rpl materi 7
Ppt rpl materi 7Ppt rpl materi 7
Ppt rpl materi 7
 
Ppt rpl materi 6
Ppt rpl materi 6Ppt rpl materi 6
Ppt rpl materi 6
 
Ppt rpl materi 5
Ppt rpl materi 5Ppt rpl materi 5
Ppt rpl materi 5
 
Ppt rpl materi 4
Ppt rpl materi 4Ppt rpl materi 4
Ppt rpl materi 4
 
Mata kuliah rekayasa perangkat lunak
Mata kuliah rekayasa perangkat lunakMata kuliah rekayasa perangkat lunak
Mata kuliah rekayasa perangkat lunak
 
Skpl reformat (1)
Skpl reformat (1)Skpl reformat (1)
Skpl reformat (1)
 
Ppt rpl materi 3
Ppt rpl materi 3Ppt rpl materi 3
Ppt rpl materi 3
 
Ppt rpl materi 2
Ppt rpl materi 2Ppt rpl materi 2
Ppt rpl materi 2
 
Laporan Penilaian Software dengan Cyclomatic Complexity
Laporan Penilaian Software dengan Cyclomatic ComplexityLaporan Penilaian Software dengan Cyclomatic Complexity
Laporan Penilaian Software dengan Cyclomatic Complexity
 
Ppt rpl materi 1
Ppt rpl materi 1Ppt rpl materi 1
Ppt rpl materi 1
 
Laporan Pengukuran Nilai Software dengan Kappa Coehen
Laporan Pengukuran Nilai Software dengan Kappa CoehenLaporan Pengukuran Nilai Software dengan Kappa Coehen
Laporan Pengukuran Nilai Software dengan Kappa Coehen
 
Slideshow PowerPoint Manajemen Proyek
Slideshow PowerPoint Manajemen ProyekSlideshow PowerPoint Manajemen Proyek
Slideshow PowerPoint Manajemen Proyek
 
Ppt rpl materi 1
Ppt rpl materi 1Ppt rpl materi 1
Ppt rpl materi 1
 
Laporan Revisi Function Point (Website Teknik Kimia)
Laporan Revisi Function Point (Website Teknik Kimia)Laporan Revisi Function Point (Website Teknik Kimia)
Laporan Revisi Function Point (Website Teknik Kimia)
 
Metode proses pengembangan perangkat lunak
Metode proses pengembangan perangkat lunakMetode proses pengembangan perangkat lunak
Metode proses pengembangan perangkat lunak
 
Proposal web
Proposal webProposal web
Proposal web
 

OPTIMASI BLACK BOX, WHITE BOX, DAN GREY BOX TESTING

  • 1. SOFTWARE TESTING M. Nor Kholis 1534010006 Irfan Erfolgi H 1534010007 I Putu Mahardika C.H 1534010018 Wahyu Aji P. 1534010034
  • 2. BLACK BOX TESTING Black box testing ia teknik testing yang dijalankan tanpa dibutuhkannya pengetahuan tentang cara kerja interior (kode) dari aplikasi. Tester menyadari arsitektur system namun tidak memiliki akses ke kode sumber. Biasanya, ketika melakukan black box testing, tester akan berinteraksi dengan user interface system dengan memberikan masukan dan memeriksa output tanpa mengetahui bagaimana dan dimana input bekerja.
  • 3. KEUNGGULAN BLACK BOX TESTING •Tepat dan efisien untuk segment software yang cakupannya luas. •Tidak membutuhkanakses ke dalam kode. •Memisahkan perspektif pengguna/tester dengan perspektif pengembang •Tester/penguji tidak perlu memahami bahasa pemrograman atau sistem operasi.
  • 4. KERUGIAN MENGGUNAKAN BLACK BOX TESTING •Terbatasnya area cakupan pengujian karena yang diuji adalah hanya sebatas skenario yang telah ditentukan. •Pengujian bisa menjadi tidak efisien apabila penguji tidak memahami alur kerja software. •Skenario pengujian sulit untuk dirancang.
  • 5. MACAM-MACAM BLACK BOX TESTING •Equivalence Partitioning •Boundary Value Analysis/Limit Testing •Comparison Testing •Sample Testing •Robustness Testing •Behavior Testing •Requirement Testing •Performance Testing •Uji Ketahanan (Endurance Testing) •Uji Sebab-Akibat (Cause-Effect Relationship Testing)
  • 6. CONTOH BLACK BOX TESTING DENGAN EQUIVALENCE PARTITIONING Pemeliharaan data untuk aplikasi bank yang telah diotomasisasikan. Pemakai dapat memutar nomor telepon bank dengan mikrokomputer yang terhubung dengan password yang telah ditentukan dan diikuti dengan perintah perintah . Data yang diterima adalah: Kode area : kosong atau 3 digit Prefix : 3 digit atau tidak diawali 0 atau 1. Suffix : 4 digit. Password : 6 Digit alphanumeric Perintah : Check deposit, dll
  • 7. selanjutnya kondisi input digabungkan dengan masing-masing data elemen, dapat ditentukan sebagai berikut: •Kode area : kondisi input, boolean –kode area mungkin ada atau tidak. Kondisi input, range –nilai ditentukan antara 200 dan 999. •Prefix : kondisi input range > 200, atau tidak diawali 0 atau 1. •Suffix : kondisi input nilai 4 digit. •Password : kondisi input boolean –password mungkin diinputkan atau tidak, kondisi input dengan nilai 6 karakter string. •Perintah : kondisi input set berisikan perintah-perintah yang telah didefinisikan.
  • 8. WHITE BOX White box testing adalah penyelidikan rinci logika internal dan struktur kode. White box testing juga disebut glass testing atau open box testing. Dalam rangka untuk melakukan white box testing pada aplikasi, tester perlu memiliki pengetahuan tentang alur kerja internal kode. Tester perlu melihat dalam sumber dan mengetahui unit / serangkaian kode yang terdapat pada software.
  • 9. KEUNGGULAN WHITE BOX TESTING •Sebagai tester yang memiliki pengetahuan tentang sumber kode, akan menjadi sangat mudah untuk mengetahui jenis data. Hal ini dapat membantu dalam pengujian aplikasi secara efektif. •Tester berfungsi sebagai penguji ataupun pengoptimasi kode. •Dapat secara langsung memperbaiki kode dari aplikasi tersebut. •Karena pengetahuan tester mengenai kode, jangkauan maksimum dicapai selama pengujian berdasarkan skenario.
  • 10. KERUGIAN WHITE BOX TESTING •Dibutuhkan biaya besar untuk melakukan pengujian. •Kadang-kadang sulit untuk melihat ke setiap sudut untuk mengetahui kesalahan tersembunyi yang dapat menimbulkan masalah karena banyaknya proses yang harus diuji. •Sulit untuk mempertahankan white box testing menggunakan alat bantu seperti analisis kode dan alat debugging yang diperlukan.
  • 11. JENIS-JENIS WHITE BOX TESTING •Basis path : metode identifikasi yang berdasarkan pada jalur struktur, koneksi, yang ada dari suatu sistem, ini biasa disebut juga sebagai branch testing. Karena cabang-cabang dari kode atau fungsi logika diidentifikasi dan di tes atau disebut juga control flow testing. •Cyclometic complexity : ia pengukuran software yang memberikan pengukuran kuantitatif dari kompleksitas logika program. •Graph matrix : ia matrix segi empat sama sisi, dimana jumlah baris dan kolom sama dengan jumlah node, dan identifikasi baris dan kolom sama dengan identifikasi node, serta isi data adalah keberadaan penghubung antar node (edges).
  • 12. CONTROL STRUCTUR TESTING Condition testing : Suatu metode disain test case yang memeriksa kondisi logika yang terdapat pada modul program. Data flow testing : Metode data flow testing memilih jalur program berdasarkan pada lokasi dari definisi dan penggunaan variabel-variabel pada program. Loop testing : suatu teknik white box testing yang berfokus pada validitas konstruksi loop secara eksklusif. Ada 4 kelas dari loop, yaitu;  Simple Loops  Nested Loops  Concatenated Loops  Unstructured Loops
  • 13. GREY BOX TESTING Grey box testing adalah teknik untuk menguji aplikasi dengan pengkombinasian antara white box testing dan black box testing. Dalam pengujian software. Menguasai sistem selalu memberikan tester keunggulan atas seseorang dengan pengetahuan sistem yang terbatas, baik dari sisi kode maupun alur kerja software. Tidak seperti black box testing, di mana tester hanya menguji aplikasi user interface, dalam grey box testing, tester memiliki akses ke dokumen desain dan database. Dengan memiliki pengetahuan ini, tester dapat lebih mempersiapkan data uji
  • 14. KEUNGGULAN METODE GREY BOX TESTING Memiliki keunggulan dari white box testing dan black box testing. Grey box tester tidak hanya bergantung pada kode sumber, namun dapat juga bergantung pada interface aplikasi dan spesifikasi fungsional. Skenario tes yang sangat baik terutama di sekitar protokol komunikasi dan penanganan tipe data. Tes ini dilakukan dari sudut pandang pengguna dan bukan desainer.
  • 15. KELEMAHAN MENGGUNAKAN GREY BOX TESTING Karena akses ke dalam kode dan database terbatas, maka cakupan tes terbatas. Tes dapat berlebihan jika desainer perangkat lunak telah menjalankan uji kasus. Pengujian setiap aliran masukan yang mungkin tidak realistis akan mamakan banyak waktu.
  • 16. TEKNIK YANG ADA PADA GREY BOX TESTING Matrix Testing, yaitu menyatakan laporan atau status proyek. Regression Testing, yaitu menyatakan status apakah terjadi perubahan pada kasus uji yang baru dibuat. Pattern Testing, yaitu memverifikasi aplikasi yang baik untuk desain atau arsitektur dan pola. Orthogonal array testing, yaitu sebagai bagian dari semua kemungkinan kombinasi.
  • 17. APLIKASI DARI GREY BOX TESTING Grey box testing biasa digunakan pada software OOP , dimana object- object tersebut adalah unit terpisah yang memiliki kode eksekusi atau data. Contoh aplikasi yang membutuhkan grey box testing yaitu: Architectural Model Unified Modeling Language Finite
  • 18. PERBEDAAN DAN PERSAMAAN WHITE BOX, BLACK BOX DAN GREY BOX TESTING Pada white box testing, penguji mengetahui tentang QA. Penguji melakukan pengujian pada software yang menyangkut security dan performance program tersebut (meliputi tes code, desain implementasi, security, data flow serta software failure). Pengujian ini dilakukan seiring dengan tahapan pengembangan software atau pada tahap testing. Kemudian pengecekan dilakukan terhadap detail perancangan.
  • 19. Pada metode black box testing, pengujian dilakukan oleh penguji independen. Pengujian dilakukan berdasarkan apa yang dilihat serta hanya fokus terhadap fungsionalitas dan output. Pengujian lebih ditujukan pada desain software sesuai standar dan reaksi apabila terdapat celah-celah bug/vulnerabilitas pada program aplikasi tersebut setelah dilakukan white box testing. Black box testing dilakukan hanya dengan mengamati hasil eksekusi melalui data uji.
  • 20. Sedangkan pada metode grey box testing, pengujian lebih menangani skenario uji coba, misalnya tipe data, protokol, komunikasi, dan penanganan eksepsi. Dasarnya adalah spesifikasi fungsional, tampilan arsitektur. Grey box testing menggunakan teknik pengujian sistem dengan pengetahuan yang terbatas dari internal sistem yang memiliki akses ke dokumen desain rinci. Pengujian dengan menggunakan metode ini juga berdasarkan desain dokumen dan spesifikasi fungsional dari suatu sistem.
  • 21. Persamaan antara white box testing dan black box testing yaitu dapat menemukan cacat dan dapat mendeteksi kondisi-kondisi yang tidak sesuai. Selain itu, metode uji coba black box memungkinkan pengembang sofware untuk membuat himpunan kondisi input yang akan melatih seluruh syarat-syarat fungsional suatu program. Uji coba black box bukan merupakan alternatif dari uji coba white boc tetapi merupakan pendekatan yang melengkapi untuk menemukan kesalahan lainnya, selain menggunakan metode whitebox.
  • 22. Selain itu, keduanya melakukan pendeteksian terhadap software yang tidak sesuai dengan menggunakan beberapa metode yang sama.
  • 23. SOFTWARE QUALITY ASSURANCE (SQA) Software quality assurance merupakan orang yang bertanggung jawab terhadap terhadap perencanaan jaminan kualitas, kesalahan, penyimpanan rekaman, analisis dan pelaporan. Jaminan perangkat lunak adalah aktivitas pelindung yang diaplikasikan pada seluruh proses perangkat lunak.
  • 24. SYARAT KUALITAS SOFTWARE Produk dikatakan berkualitas apabila: Kebutuhan perangkat lunak merupakan fondasi yang melaluinya kualitas diukur. Standar yang telah ditentukan menetapkan serangkaian kriteria pengembangan yang menuntun cara perangkat lunak direkayasa. Ada serangkaian kebutuhan implisit yang sering dicantumkan (misalnya kebutuhan akan kemampuan pemeliharaan yang baik).
  • 25. CAKUPAN SOFTWARE QUALITY ASSURANCE Pendekatan manajemen kuaitas. Teknologi rekayasa perangkat lunak yang efektif (metode dan piranti). Kajian teknik formal yang diaplikasikan pada keseluruhan proses perangkat lunak. Strategi pengujian multitiered (deret bertingkat). Kontrol dokumentasi perangkat lunak dan perubahan. Prosedur untuk menjamin kesesuaian dengan standar pengembangan perangkat lunak. Mekanisme pengukuran dan pelaporan.
  • 26. SISTEM KOMPONEN SQA Sistem komponen sqa diklasifikasikan sebagai berikut: Komponen kualitas pre-proyek Komponen kualitas siklus hidup proyek Komponen infrastruktur kesalahan pencegahan dan perbaikan Komponen kualitas mutu manajemen Komponen standarisasi, sertifikasi, dan penilaian SQA Komponen manusia-organisasi SQA
  • 27. PERTIMBANGAN YANG MEMPENGARUHI PENGGUNAAN KOMPONEN SQA Organisasi pertimbangan Pertimbangan proyek dan jasa pemeliharaan Pertimbangan staf professional
  • 28. METODE MCCALL (PRODUCT REVISION) Bagian ini mengacu pada kemampuan untuk mengalami perubahan. Terdapat 3 metode yaitu: Maintainability, yaitu usaha yang dibutuhkan untuk menempatkan dan menyelesaikan kesalahan program dalam lingkungan. Flexibility, yaitu kemudahan membuat perubahan yang disebabkan oleh perubahan dalam lingkungan pengoperasian Testability, yaitu kemudahan dalam pengujian program, untuk meyakinkan bahwa program bebas error dan memenuhi spesifikasinya.
  • 29. METODE MCCALL (PRODUCT TRANSITION) Bagian ini lebih mengacu pada adaptasi pada lingkungan baru. Terdapat tiga metode yaitu: Portability, yaitu usaha yang dibutuhkan untuk memindahkan program dari satu lingkungan ke lingkungan lain. Reusability, yaitu kemudahan penggunaan kembali software dalam konteks yang berbeda. Iteroperability, yaitu usaha untuk memasangkan sistem dengan sistem yang lain.
  • 30. METODE MCCALL (PRODUCT OPERATION) Bagian ini mengacu pada karakteristik pengoperasian. Terdapat 5 metode pada bagian ini, yaitu: Correctness, yaitu tingkatan dimana software mencapai spesifikasinya. Reliability, yaitu kemampuan sistem untuk tidak gagal. Efficiency, yaitu efisien dalam eksekusi dan penyimpanan. Umumnya diartikan penggunaan resource, seperti: waktu, processor, memori, dsb. Integrity, yaitu perlindungan program dari akses yang tidak berkepentingan. Usability, yaitu kemudahan penggunaan software.
  • 31. BARRY BOEHM Barry Boehm lahir pada tahun 1935. beliau merupakan seorang insinyur perangkat lunak dari Amerika, seorang professor terkemuka mengenai ilmu komputer, teknik industri dan sistem. Barry Boehm dikenal karena banyaknya kontribusi ke bidang rekayasa perangkat lunak, salah satuya mengenai spiral model.
  • 32. SPIRAL MODEL BARRY BOEHM Spiral model merupakan salah satu bentuk evolusi yang menggunakan metode iterasi natural yang dimiliki oleh model prototyping dan digabungkan dengan aspek sistematis yang dikembangkan dengan model waterfall.
  • 33. AKTIVITAS-AKTIVITAS SPIRAL MODEL Customer communication Planning Analysis risk Engineering Cunstruction and release Customer evaluation
  • 34. KELEBIHAN SPIRAL MODEL Dapat disesuaikan supaya perangkat lunak bisa dipakai selama software komputer menyala. Lebih cocok untuk pengembangan sistem dan perangkat lunak skala besar. Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko setiap tingkat evolusi karena perangkat lunak terus bekerja selama proses. Menggunakan prototipe sebagai mekanisme pengurangan resiko dan pada setiap keadaan di dalam evolusi produk. Tetap mengikuti langkah-langkah dalam siklus kehidupan klasik dan memasukkannya ke dalam kerangka kerja iteratif.
  • 35. KELEMAHAN SPIRAL MODEL Sulit untuk meyakinkan pelanggan bahwa pendekatan evolusioner ini bisa dikontrol. Memerlukan penaksiran resiko yang masuk akal dan akan menjadi masalah yang serius jika resiko meyor tidak ditemukan dan diatur. Butuh waktu lama untuk menerapkan paradigma ini menuju kepastian yang absolut.

Editor's Notes

  1. Source : thesis.binus.ac.id/doc/Bab2/Thesis%20bab2.pdf