SlideShare a Scribd company logo
Software Testing
Management
Fahri Firdausillah, M.CS
Profil
Fahri Firdausillah, S.Kom, M.Cs
( Python, Java, PHP )
[ Android, Django, Odoo ]
Jenjang Pendidikan:
● Madrasah Qudsiyyah Kudus
● Teknik Informatika UDINUS
● Master of Database Technology
UTeM
Jabatan saat ini:
● Dosen TI (S1) UDINUS
● Ka. Pengelola Data & Informasi
Ekstra kegiatan:
● Pembina DOSCOM (Dinus Open
Source Community)
● SCRUM Master tim
pengembang SMK-Polri
Konten Materi
1. Kenapa harus pengujian?
2. Apa yang harus diuji?
a. Proses Bisnis & User Story
b. Acceptance Criteria & Test Case
3. Talk (list) is cheap
a. Application Testing
b. Unit Testing
4. Pengujian Lain
a. Server load testing
b. Security Testing
c. Finally, User Acceptance Testing
“Testers don’t like to break things; they like
to dispel the illusion that things work.”—
Kaner, Bach, Pettichord
Pengujian Perangkat Lunak itu Penting.
● 80% error dan crash yang terjadi di Windows dan Office
disebabkan oleh 20% dari keseluruhan bug yang terdeteksi.
● “A system is never finished being developed until it ceases to
be used.” — Jerry Weinberg
● Debugging itu 2 kali lebih susah dilakukan dibandingkan
menulis kode pertama kali.
● Tanpa testing yang benar hanya ada 2 kemungkinan:
○ User akan meninggalkan aplikasi kita
○ atau User akan menghantui kita dengan laporan error
(N)Ever doing Testing?
The good news is,
● Kita semua pastinya sudah melakukan testing pada semua program
yang pernah kita buat.
● Did you check the features and experiment using them? That’s
known as exploratory testing and is a form of manual testing.
But the bad news is,
● “No amount of testing can prove a software right, a single test can
prove a software wrong.”— Amir Ghahrai
“We only see what we know.”—
Goethe
Yang harus Diingat
● Kita tidak bisa menguji apa yang tidak kita ketahui .
● Sebelum pengujian kita harus memahami proses bisnis
dan kebutuhan pengguna terlebih dahulu.
● In some degree, kita juga perlu punya akses ke koding
dan basis data aplikasi.
● (salah satu) cara paling mudah memetakan kebutuhan
pengguna dalam pengujian adalah User Story.
User Story
● Deskripsi singkat dan sederhana
tentang fitur yang diceritakan
dari perspektif pengguna yang
meminta fitur tersebut.
● Dari user story, developer bisa
membuat checklist kebutuhan
teknis untuk menyelesaikan user
story tersebut.
● User story menjaga agar
kebutuhan perangkat lunak
tidak bias dengan keinginan
developer.
Pengguna tidak tahu apa yang diinginkan
● Don’t listen what they say, pay attention to what they do.
● Jika kita bertanya seperti apa software yang ingin dibuat,
hanya ada 2 kemungkinan jawaban:
○ No Spec: tidak tahu apa yang sebenarnya diinginkan
○ Over spec: terlalu banyak permintaan bahkan yang tidak penting
Petakan proses bisnis pada User Story
Acceptance Criteria
● Acceptance Criteria adalah definisi teknis tentang apa saja yang
harus dipenuhi pada suatu User Story.
● Misalkan untuk user story
“Sebagai peserta seminar, saya ingin bisa registrasi online,
sehingga saya bisa mendaftar seminar dengan cepat”
contoh acceptance criteria-nya adalah:
● Pengguna tidak dapat submit form sebelum mengisi field penting.
● Pengguna dapat mentransfer pembayaran melalui virtual account
● Form terjaga dari SPAM agar tidak ada bot yang memenuhi pendaftaran
● Setelah mendaftar pengguna mendapatkan email konfirmasi
Test Case
● Langkah terakhir adalah mendefinisikan Test Case sebagai panduan.
● Yang perlu diingat, Test Case bersifat organik. Artinya jika suatu saat
terdapat bukti test case yang dibuat tidak relevan, maka harus diubah.
● Contoh dokumen test case adalah sebagai berikut:
“Talk is Cheap, Show me
the Code” — Linus Torvald
What, Testing kok koding?
● Ship fast, fail fast
● Testing yang baik berulang sepanjang pengembangan software ,
bukan cuman sekedar di akhir proses.
● Penambahan / perubahan fitur harus dipastikan tidak membuat
modul yang lain jadi Error.
● Manusia memiliki kelebihan di aktivitas kreatif, komputer memiliki
kelebihan di aktivitas berulang.
● Kita yang mendesain puluhan / ratusan test case , komputer yang
menjalankannya berulang-kali.
(Web) Application Testing dengan Selenium
● Selenium dapat membuka browser secara otomatis serta
melakukan click & input pada beberapa elemen tampilan sesuai
dengan skenario uji.
● Skenario test yang akan kita lakukan di sini adalah:
1
Buka
urladm
in
pada
brow
ser
2
Inputkan
usernam
e
&
passw
d
3
Click
login
dan
m
asuk
adm
in
4
M
asuk
ke
halam
an
Transaksi
5
Tam
bahkan
transaksibaru
6
Pastikan
transaksitam
bah
Uji Tiap Bagian dengan Unit Testing
● Integration Test relatif lebih memakan waktu karena harus
melibatkan beberapa komponen sekaligus.
● Selain itu, pengujian bersifat superfisial, dan cenderung susah
untuk menyentuh hal teknis sehingga susah untuk di-debug.
● Sebagai pelengkap perlu dilakukan Unit Test untuk menguji kode
sumber dengan lebih komprehensif.
● Sebagai contoh, di sini kita akan menguji dua unit secara khusus
yaitu model transaksi dan view / tampilan transaksi:
Testcase untuk UnitTest Model
Description Procedure Expected Output
Uji input data melalui model secara langsung
Uji minimal input create object Transaction dengan parameter
[user, jumlah, judul]
Object transaction sesuai
parameter serta:
● default status: valid
● default jenis:
pengeluaran
Uji input semua field create object Transaction dengan semua field
sebagai parameter
Object transaction sesuai
dengan inputan parameter
Uji perhitungan saldo pemasukan dikurangi pengeluaran
Uji hitung saldo create 3 object Transaction dengan 1
pemasukan dan 2 pengeluaran, kemudian
gunakan TransactionRepo.get_saldo() untuk
menghitung saldo transaksi user tertentu
Nilai saldo adalah
pemasukan dikurangi
pengeluaran
Testcase untuk Unit Test View
Description Procedure Expected Output
Uji tampilan dasbor tanpa login tidak menampilkan transaksi apapun
Uji tampilan tanpa
login
Buka URL default (localhost/) tanpa
melakukan login terlebih dahulu
● Halaman mengandung teks “tidak
ada transaksi”
● Halaman tidak megandung teks
“Tampilkan semua list keuangan”
Uji tampilan dasbor dengan login hanya menampilkan transaksi user tersebut
Uji tampilan dengan
login
1. Create 1 object User2
2. Create 1 object transaksi baru
dengan User2.
3. Login dengan User1
4. Buka URL default
● Halaman mengandung transaksi
oleh User1
● Halaman tidak mengandung
transaksi oleh User1
Prasyarat:
● Create object User1 terlebih dahulu
● Create 3 object transaction milik User1 terlebih dahulu
Developers work with mindset of
"how to make this work?".
A good tester is thinking about
"how to break this?"
Ukur Batas Kemampuan Aplikasi
● Kita juga harus memastikan
performa aplikasi sesuai dengan
kebutuhan jumlah calon pengguna.
● Pengujian performa, juga digunakan
untuk mendapatkan spesifikasi
hardware yang tepat.
● Atau memastikan optimasi
konfigurasi / algoritma yang
digunakan sesuai yang diinginkan.
● Tool yang sering digunakan adalah
Apache JMeter atau Python Locust .
Serang Sendiri Aplikasimu (PenTest)
● Keamanan juga merupakan hal yang sangat penting, karena
seringkali motif serangan hacker adalah Vulnerability.
● Beberapa serangan keamanan aplikasi web & mobile yang sering
dilakukan adalah:
○ Brute force login.
○ SQL injection.
○ Man in The middle.
● Sebaiknya penetration testing dilakukan oleh orang yang ahli di
bidang keamanan jaringan dan aplikasi.
UAT: Pastikan Bisa Digunakan User
● Kita boleh menggunakan teknologi terbaru, arsitektur paling keren,
tampilan termodis, bahkan test coverage 100%.
● Tapi jika pengguna akhir tidak dapat menggunakan aplikasi kita,
semua itu jadi sia-sia.
● Setelah semua pengujian teknis yang kita lakukan, kita tetap
memerlukan Beta Tester.
● Bahkan aspek terkecil, berpotensi menjadi masalah jika tidak sesuai
dengan kebiasaan pengguna.
● Contoh, pengguna yang terbiasa klik tombol untuk Save, akan
bingung ketika menggunakan Auto Save.
“Don’t worry if it doesn’t work right. If
everything did, you’d be out of a job.”
(Mosher’s Law of Software Engineering)
Questions & Answers

More Related Content

What's hot

Analisis sistem-informasi
Analisis sistem-informasiAnalisis sistem-informasi
Analisis sistem-informasi
ryanprasetya
 
Manajemen ruang-lingkup-proyek
Manajemen ruang-lingkup-proyekManajemen ruang-lingkup-proyek
Manajemen ruang-lingkup-proyek
Fajar Baskoro
 
Contoh skpl-software-manajemen-sekolah
Contoh skpl-software-manajemen-sekolahContoh skpl-software-manajemen-sekolah
Contoh skpl-software-manajemen-sekolah
DinilOctav
 

What's hot (20)

Software Engineering 1 (Software Development Process Model)
Software Engineering 1 (Software Development Process Model)Software Engineering 1 (Software Development Process Model)
Software Engineering 1 (Software Development Process Model)
 
Software Development : Template Dokumen Uji Terima Aplikasi (User Acceptance ...
Software Development : Template Dokumen Uji Terima Aplikasi (User Acceptance ...Software Development : Template Dokumen Uji Terima Aplikasi (User Acceptance ...
Software Development : Template Dokumen Uji Terima Aplikasi (User Acceptance ...
 
Proposal Project Management Plan
Proposal Project Management PlanProposal Project Management Plan
Proposal Project Management Plan
 
Analisis sistem-informasi
Analisis sistem-informasiAnalisis sistem-informasi
Analisis sistem-informasi
 
ERD Sistem Informasi Pemesanan Tiket Bioskop Online
ERD Sistem Informasi Pemesanan Tiket Bioskop OnlineERD Sistem Informasi Pemesanan Tiket Bioskop Online
ERD Sistem Informasi Pemesanan Tiket Bioskop Online
 
Project Charter Aplikasi Tracking Barang
Project Charter Aplikasi Tracking BarangProject Charter Aplikasi Tracking Barang
Project Charter Aplikasi Tracking Barang
 
Manajemen ruang-lingkup-proyek
Manajemen ruang-lingkup-proyekManajemen ruang-lingkup-proyek
Manajemen ruang-lingkup-proyek
 
metode-pengujian-blackbox
 metode-pengujian-blackbox metode-pengujian-blackbox
metode-pengujian-blackbox
 
Spesifikasi kebutuhan pengembangan sistem aplikasi pemesanan tiket pesawat on...
Spesifikasi kebutuhan pengembangan sistem aplikasi pemesanan tiket pesawat on...Spesifikasi kebutuhan pengembangan sistem aplikasi pemesanan tiket pesawat on...
Spesifikasi kebutuhan pengembangan sistem aplikasi pemesanan tiket pesawat on...
 
Testing dan implemetasi sistem 2
Testing dan implemetasi sistem 2Testing dan implemetasi sistem 2
Testing dan implemetasi sistem 2
 
Modul 4 representasi pengetahuan
Modul 4   representasi pengetahuanModul 4   representasi pengetahuan
Modul 4 representasi pengetahuan
 
Software Requirement Specification SRS
Software Requirement Specification SRSSoftware Requirement Specification SRS
Software Requirement Specification SRS
 
Ragam Dialog :: Interaksi Manusia dan Komputer
Ragam Dialog :: Interaksi Manusia dan KomputerRagam Dialog :: Interaksi Manusia dan Komputer
Ragam Dialog :: Interaksi Manusia dan Komputer
 
Togaf
TogafTogaf
Togaf
 
Business Model Canvas: Cara Pengisian
Business Model Canvas: Cara PengisianBusiness Model Canvas: Cara Pengisian
Business Model Canvas: Cara Pengisian
 
Pertemuan 5 Perencanaan Testing
Pertemuan 5 Perencanaan TestingPertemuan 5 Perencanaan Testing
Pertemuan 5 Perencanaan Testing
 
Business Process Modelling Notation - overview
Business Process Modelling Notation - overviewBusiness Process Modelling Notation - overview
Business Process Modelling Notation - overview
 
Privasi dan Keamanan Internet
Privasi dan Keamanan InternetPrivasi dan Keamanan Internet
Privasi dan Keamanan Internet
 
3 rekayasa kebutuhan
3 rekayasa kebutuhan3 rekayasa kebutuhan
3 rekayasa kebutuhan
 
Contoh skpl-software-manajemen-sekolah
Contoh skpl-software-manajemen-sekolahContoh skpl-software-manajemen-sekolah
Contoh skpl-software-manajemen-sekolah
 

Similar to Software testing management

2_7 Fase Proyek Software dan Fase Pendefinisian.pptx
2_7 Fase Proyek Software dan Fase Pendefinisian.pptx2_7 Fase Proyek Software dan Fase Pendefinisian.pptx
2_7 Fase Proyek Software dan Fase Pendefinisian.pptx
anantaproductiontv
 

Similar to Software testing management (20)

UTS MPPL
UTS MPPLUTS MPPL
UTS MPPL
 
RPL
RPLRPL
RPL
 
Sistem penyelesaian masalah IT
Sistem penyelesaian masalah ITSistem penyelesaian masalah IT
Sistem penyelesaian masalah IT
 
Kerangka acuan kerja aplikasi my indi home pt. telkom banjarmasin (1)
Kerangka acuan kerja  aplikasi my indi home pt. telkom banjarmasin (1)Kerangka acuan kerja  aplikasi my indi home pt. telkom banjarmasin (1)
Kerangka acuan kerja aplikasi my indi home pt. telkom banjarmasin (1)
 
Meetup #2 Create a good test case
Meetup #2 Create a good test caseMeetup #2 Create a good test case
Meetup #2 Create a good test case
 
Kerangka Acuan Kerja
Kerangka Acuan KerjaKerangka Acuan Kerja
Kerangka Acuan Kerja
 
septria sendy.pptx
septria sendy.pptxseptria sendy.pptx
septria sendy.pptx
 
Perancangan perangkat lunak
Perancangan perangkat lunakPerancangan perangkat lunak
Perancangan perangkat lunak
 
Pemodelan perangkat lunak
Pemodelan perangkat lunakPemodelan perangkat lunak
Pemodelan perangkat lunak
 
2_7 Fase Proyek Software dan Fase Pendefinisian.pptx
2_7 Fase Proyek Software dan Fase Pendefinisian.pptx2_7 Fase Proyek Software dan Fase Pendefinisian.pptx
2_7 Fase Proyek Software dan Fase Pendefinisian.pptx
 
folder toni dan gieo.pptx
folder toni dan gieo.pptxfolder toni dan gieo.pptx
folder toni dan gieo.pptx
 
folder toni dan gieo.pptx
folder toni dan gieo.pptxfolder toni dan gieo.pptx
folder toni dan gieo.pptx
 
KAK - Sistem Perekaman Keluhan dan Kendala pada Lembaga Inspektorat
KAK - Sistem Perekaman Keluhan dan Kendala pada Lembaga InspektoratKAK - Sistem Perekaman Keluhan dan Kendala pada Lembaga Inspektorat
KAK - Sistem Perekaman Keluhan dan Kendala pada Lembaga Inspektorat
 
Testing dan implementasi
Testing dan implementasiTesting dan implementasi
Testing dan implementasi
 
ETS - KAK
ETS - KAKETS - KAK
ETS - KAK
 
Kak web keluhan kemenkeu
Kak web keluhan kemenkeuKak web keluhan kemenkeu
Kak web keluhan kemenkeu
 
Kerangkaacuankerja 16-133-mppl-converted
Kerangkaacuankerja 16-133-mppl-convertedKerangkaacuankerja 16-133-mppl-converted
Kerangkaacuankerja 16-133-mppl-converted
 
Analisa dan Perancangan Sistem Informasi Pert 15
Analisa dan Perancangan Sistem Informasi Pert 15Analisa dan Perancangan Sistem Informasi Pert 15
Analisa dan Perancangan Sistem Informasi Pert 15
 
kualitas source code dan pengujian program
kualitas source code dan pengujian programkualitas source code dan pengujian program
kualitas source code dan pengujian program
 
Test plan Document Example
Test plan Document ExampleTest plan Document Example
Test plan Document Example
 

Software testing management

  • 2. Profil Fahri Firdausillah, S.Kom, M.Cs ( Python, Java, PHP ) [ Android, Django, Odoo ] Jenjang Pendidikan: ● Madrasah Qudsiyyah Kudus ● Teknik Informatika UDINUS ● Master of Database Technology UTeM Jabatan saat ini: ● Dosen TI (S1) UDINUS ● Ka. Pengelola Data & Informasi Ekstra kegiatan: ● Pembina DOSCOM (Dinus Open Source Community) ● SCRUM Master tim pengembang SMK-Polri
  • 3. Konten Materi 1. Kenapa harus pengujian? 2. Apa yang harus diuji? a. Proses Bisnis & User Story b. Acceptance Criteria & Test Case 3. Talk (list) is cheap a. Application Testing b. Unit Testing 4. Pengujian Lain a. Server load testing b. Security Testing c. Finally, User Acceptance Testing
  • 4. “Testers don’t like to break things; they like to dispel the illusion that things work.”— Kaner, Bach, Pettichord
  • 5. Pengujian Perangkat Lunak itu Penting. ● 80% error dan crash yang terjadi di Windows dan Office disebabkan oleh 20% dari keseluruhan bug yang terdeteksi. ● “A system is never finished being developed until it ceases to be used.” — Jerry Weinberg ● Debugging itu 2 kali lebih susah dilakukan dibandingkan menulis kode pertama kali. ● Tanpa testing yang benar hanya ada 2 kemungkinan: ○ User akan meninggalkan aplikasi kita ○ atau User akan menghantui kita dengan laporan error
  • 6. (N)Ever doing Testing? The good news is, ● Kita semua pastinya sudah melakukan testing pada semua program yang pernah kita buat. ● Did you check the features and experiment using them? That’s known as exploratory testing and is a form of manual testing. But the bad news is, ● “No amount of testing can prove a software right, a single test can prove a software wrong.”— Amir Ghahrai
  • 7. “We only see what we know.”— Goethe
  • 8. Yang harus Diingat ● Kita tidak bisa menguji apa yang tidak kita ketahui . ● Sebelum pengujian kita harus memahami proses bisnis dan kebutuhan pengguna terlebih dahulu. ● In some degree, kita juga perlu punya akses ke koding dan basis data aplikasi. ● (salah satu) cara paling mudah memetakan kebutuhan pengguna dalam pengujian adalah User Story.
  • 9. User Story ● Deskripsi singkat dan sederhana tentang fitur yang diceritakan dari perspektif pengguna yang meminta fitur tersebut. ● Dari user story, developer bisa membuat checklist kebutuhan teknis untuk menyelesaikan user story tersebut. ● User story menjaga agar kebutuhan perangkat lunak tidak bias dengan keinginan developer.
  • 10. Pengguna tidak tahu apa yang diinginkan ● Don’t listen what they say, pay attention to what they do. ● Jika kita bertanya seperti apa software yang ingin dibuat, hanya ada 2 kemungkinan jawaban: ○ No Spec: tidak tahu apa yang sebenarnya diinginkan ○ Over spec: terlalu banyak permintaan bahkan yang tidak penting
  • 11. Petakan proses bisnis pada User Story
  • 12. Acceptance Criteria ● Acceptance Criteria adalah definisi teknis tentang apa saja yang harus dipenuhi pada suatu User Story. ● Misalkan untuk user story “Sebagai peserta seminar, saya ingin bisa registrasi online, sehingga saya bisa mendaftar seminar dengan cepat” contoh acceptance criteria-nya adalah: ● Pengguna tidak dapat submit form sebelum mengisi field penting. ● Pengguna dapat mentransfer pembayaran melalui virtual account ● Form terjaga dari SPAM agar tidak ada bot yang memenuhi pendaftaran ● Setelah mendaftar pengguna mendapatkan email konfirmasi
  • 13. Test Case ● Langkah terakhir adalah mendefinisikan Test Case sebagai panduan. ● Yang perlu diingat, Test Case bersifat organik. Artinya jika suatu saat terdapat bukti test case yang dibuat tidak relevan, maka harus diubah. ● Contoh dokumen test case adalah sebagai berikut:
  • 14. “Talk is Cheap, Show me the Code” — Linus Torvald
  • 15. What, Testing kok koding? ● Ship fast, fail fast ● Testing yang baik berulang sepanjang pengembangan software , bukan cuman sekedar di akhir proses. ● Penambahan / perubahan fitur harus dipastikan tidak membuat modul yang lain jadi Error. ● Manusia memiliki kelebihan di aktivitas kreatif, komputer memiliki kelebihan di aktivitas berulang. ● Kita yang mendesain puluhan / ratusan test case , komputer yang menjalankannya berulang-kali.
  • 16. (Web) Application Testing dengan Selenium ● Selenium dapat membuka browser secara otomatis serta melakukan click & input pada beberapa elemen tampilan sesuai dengan skenario uji. ● Skenario test yang akan kita lakukan di sini adalah: 1 Buka urladm in pada brow ser 2 Inputkan usernam e & passw d 3 Click login dan m asuk adm in 4 M asuk ke halam an Transaksi 5 Tam bahkan transaksibaru 6 Pastikan transaksitam bah
  • 17. Uji Tiap Bagian dengan Unit Testing ● Integration Test relatif lebih memakan waktu karena harus melibatkan beberapa komponen sekaligus. ● Selain itu, pengujian bersifat superfisial, dan cenderung susah untuk menyentuh hal teknis sehingga susah untuk di-debug. ● Sebagai pelengkap perlu dilakukan Unit Test untuk menguji kode sumber dengan lebih komprehensif. ● Sebagai contoh, di sini kita akan menguji dua unit secara khusus yaitu model transaksi dan view / tampilan transaksi:
  • 18. Testcase untuk UnitTest Model Description Procedure Expected Output Uji input data melalui model secara langsung Uji minimal input create object Transaction dengan parameter [user, jumlah, judul] Object transaction sesuai parameter serta: ● default status: valid ● default jenis: pengeluaran Uji input semua field create object Transaction dengan semua field sebagai parameter Object transaction sesuai dengan inputan parameter Uji perhitungan saldo pemasukan dikurangi pengeluaran Uji hitung saldo create 3 object Transaction dengan 1 pemasukan dan 2 pengeluaran, kemudian gunakan TransactionRepo.get_saldo() untuk menghitung saldo transaksi user tertentu Nilai saldo adalah pemasukan dikurangi pengeluaran
  • 19. Testcase untuk Unit Test View Description Procedure Expected Output Uji tampilan dasbor tanpa login tidak menampilkan transaksi apapun Uji tampilan tanpa login Buka URL default (localhost/) tanpa melakukan login terlebih dahulu ● Halaman mengandung teks “tidak ada transaksi” ● Halaman tidak megandung teks “Tampilkan semua list keuangan” Uji tampilan dasbor dengan login hanya menampilkan transaksi user tersebut Uji tampilan dengan login 1. Create 1 object User2 2. Create 1 object transaksi baru dengan User2. 3. Login dengan User1 4. Buka URL default ● Halaman mengandung transaksi oleh User1 ● Halaman tidak mengandung transaksi oleh User1 Prasyarat: ● Create object User1 terlebih dahulu ● Create 3 object transaction milik User1 terlebih dahulu
  • 20. Developers work with mindset of "how to make this work?". A good tester is thinking about "how to break this?"
  • 21. Ukur Batas Kemampuan Aplikasi ● Kita juga harus memastikan performa aplikasi sesuai dengan kebutuhan jumlah calon pengguna. ● Pengujian performa, juga digunakan untuk mendapatkan spesifikasi hardware yang tepat. ● Atau memastikan optimasi konfigurasi / algoritma yang digunakan sesuai yang diinginkan. ● Tool yang sering digunakan adalah Apache JMeter atau Python Locust .
  • 22. Serang Sendiri Aplikasimu (PenTest) ● Keamanan juga merupakan hal yang sangat penting, karena seringkali motif serangan hacker adalah Vulnerability. ● Beberapa serangan keamanan aplikasi web & mobile yang sering dilakukan adalah: ○ Brute force login. ○ SQL injection. ○ Man in The middle. ● Sebaiknya penetration testing dilakukan oleh orang yang ahli di bidang keamanan jaringan dan aplikasi.
  • 23. UAT: Pastikan Bisa Digunakan User ● Kita boleh menggunakan teknologi terbaru, arsitektur paling keren, tampilan termodis, bahkan test coverage 100%. ● Tapi jika pengguna akhir tidak dapat menggunakan aplikasi kita, semua itu jadi sia-sia. ● Setelah semua pengujian teknis yang kita lakukan, kita tetap memerlukan Beta Tester. ● Bahkan aspek terkecil, berpotensi menjadi masalah jika tidak sesuai dengan kebiasaan pengguna. ● Contoh, pengguna yang terbiasa klik tombol untuk Save, akan bingung ketika menggunakan Auto Save.
  • 24. “Don’t worry if it doesn’t work right. If everything did, you’d be out of a job.” (Mosher’s Law of Software Engineering)