TESTING SW SE6161 Perancangan dan Analisis Perangkat Lunak 1

dokumen-dokumen yang mirip
1. Dr. I Ketut Eddy Purnama, ST.,MT. 2. Ahmad Zaini, ST.,M.Sc. Asti Nurhayati

BAB 4 PELAKSANAAN PENGUJIAN

Rekayasa Perangkat Lunak

Teknik Informatika S1

Strategi Pengujian Perangkat Lunak. Fakultas Ilmu Komputer dan Teknologi Informasi Jurusan Sistem Informasi Univesitas Gunadarma

DESAIN TEST CASE. Tugas ke 11 Rekayasa Perangkat Lunak

SOFTWARE TESTING. Ratna Wardani

Dasar-Dasar Pengujian Perangkat Lunak. Fakultas Ilmu Komputer dan Teknologi Informasi Jurusan Sistem Informasi Univesitas Gunadarma

TEKNIK PENGUJIAN PERANGKAT LUNAK. Ign.F.Bayu Andoro.S, M.Kom

Testing dan Implementasi Sistem Informasi

TESTING PROGRAM. Pertemuan Nurul Adhayanti

Teknik Pengujian (2) Whitebox Testing

Pengujian Software. Teknik Pengujian Software. Apa yang Ditunjukan Pengujian. Tujuan Pengujian. Prinsip Pengujian. Testability : Kemudahan Diuji

Nama : Rendi Setiawan Nim :

Hubungan antara rencana pengujian dan proses pengembangan system. Tim RPL 1 3

Teknik Informatika S1

TESTING DAN IMPLEMENTASI SISTEM. WAHYU PRATAMA, S.Kom., MMSI.

Teknik-Teknik Pengujian Perangkat Lunak. Fakultas Ilmu Komputer dan Teknologi Informasi Jurusan Sistem Informasi Univesitas Gunadarma

14. PENGUJIAN PERANGKAT LUNAK Dasar-dasar Pengujian 14.2 Teknik Pengujian 14.3 Strategi Pengujian dan V&V

PEMELIHARAAN PERANGKAT LUNAK. Ign.F.Bayu Andoro.S, M.Kom

Materi. Definisi Test Case White Box Testing Blackbox Testing Teknik Testing yang Lain Penggunaan Metode Tes

Rekayasa Perangkat Lunak

3/17/16 Testing dan Audit Perangkat Lunak - Universitas Mercu Buana Yogyakarta

White Box Testing dan Black Box Testing, Perbedaannya Serta Contohnya.

STRATEGI PENGUJIAN PERANGKAT LUNAK

TEKNIK PENGUJIAN PERANGKAT LUNAK (Software Testing Techniques)

BAB 6 METODE PENGUJIAN

Silabus dan Satuan Acara Perkuliahan

TEKNIK PENGUJIAN PERANGKAT LUNAK PERTEMUAN 14

MAKALAH DESAIN TEST CASE. NAMA : RANI JUITA NIM : DOSEN : WACHYU HARI HAJI. S.Kom.MM

Rekayasa Perangkat Lunak Pengujian Perangkat Lunak. Teknik Informatika UNIKOM

PENERAPAN METODA WHITE-BOX TESTING UNTUK MENGETAHUI KESESUAIAN KEBUTUHAN NON-FUNGSIONAL PRODUK PADA PERANGKAT A B S T R A K

TEKNIK PENGUJIAN PERANGKAT LUNAK PERTEMUAN 14

Tujuan (Objektives) Testing adalah proses eksekusi program yang bertujuan untuk menemukan error Sebuah test yang baik adalah yang mempunyai kemungkina

3/17/16 Testing dan Audit Perangkat Lunak - Universitas Mercu Buana Yogyakarta

PERTEMUAN 13 STRATEGI PENGUJIAN PERANGKAT LUNAK

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

Teknik Pengujian (3) Blackbox Testing

Testing is the exposure of a system to trial input to see wheter it produces corect output Adalah proses eksekusi suatu program dengan maksud

PENGUJIAN PERANGKAT LUNAK DENGAN MENGGUNAKAN METODE WHITE BOX DAN BLACK BOX

A. Pengujian Perangkat Lunak

TESTING DAN IMPLEMENTASI SISTEM. WAHYU PRATAMA, S.Kom., MMSI.

RENCANA PROGRAM KEGIATAN PERKULIAHAN SEMESTER (RPKPS)

SATUAN ACARA PERKULIAHAN PROGRAM STUDI : S1 SISTEM INFORMASI

Software Testing Strategies

Rekayasa Perangkat Lunak

SATUAN ACARA PERKULIAHAN (SAP)

Black-Box Testing. Julian Supardi, M.T. Sumber Slide: Oerip S. Diterjemahkan Oleh: Rosa Ariani Sukamto.

Gambar (a) PDL for test design

TESTING & IMPLEMENTASI SISTEM 4KA. Teknik Pengujian Perangkat Lunak. helen.staff.gunadarma.ac.id

PENGUJIAN PERANGKAT LUNAK

Software Testing Technique

GARIS-GARIS BESAR PROGRAM PENGAJARAN PROGRAM STUDI: S1 SISTEM INFORMASI Semester : 7

DASAR-DASAR PENGUJIAN PERANGKAT LUNAK

PENGUJIAN PERANGKAT LUNAK

Strategi Pengujian Perangkat Lunak

Dibuat Oleh : 1. Andrey ( )

Tugas Rekayasa Perangkat Lunak

Teknik Informatika S1

Dasar-dasar Pengujian Perangkat Lunak. Minggu ke 5

Pengujian dan Implementasi Sistem Informasi

Modul Standar untuk digunakan dalam Perkuliahan di Universitas Mercu Buana

SATUAN ACARA PERKULIAHAN(SAP)

SATUAN ACARA PERKULIAHAN MATA KULIAH TESTING & IMPLEMENTASI SISTEM (KA) KODE / SKS : KK / 3 SKS

Teknik Informatika S1

User. Spesification. System Design. System Spesification. Software Spesification. Program Spesification. Spesification PROGRAMMING

Strategi Pengujian Perangkat Lunak. Minggu ke 8

Teknik Unit Testing. Pressman, Roger S/W Engineering edisi 5/7 chapter 17

METODE PENGUJIAN PERANGKAT LUNAK

BAB 5 FAKTOR PENGUJIAN

BAB 1 PENDAHULUAN. 1.1 Aplikasi Pengolahan Nilai Sementara Mahasiswa

BAB 3 PENGUJIAN DALAM SIKLUS PENGEMBANGAN

BAB 9 PENGUJIAN PERANGKAT LUNAK

Strategi Testing. Rudi Susanto. module to be tested. results. software engineer test cases

PENGUJIAN PERANGKAT LUNAK (SOFTWARE TESTING)

White Box Testing Merupakan metode perancangan test case yang menggunakan struktur kontrol dari perancangan prosedural untuk mendapatkan test case.

Pengujian pada Perangkat Lunak. Lukman Hakim

BAB V IMPLEMENTASI SISTEM

REVIEW PENGUJIAN S/W. Oleh Cipta Wahyudi

Testing dan Implementasi Sistem

SATUAN ACARA PERKULIAHAN MATA KULIAH TESTING & IMPLEMENTASI SISTEM (JURUSAN SISTEM INFORMASI) KODE / SKS : AK / 3 SKS

2. BAB II LANDASAN TEORI. lanjut sehingga terbentuk suatu aplikasi yang sesuai dengan tujuan awal.

4/18/14 Testing dan Audit Perangkat Lunak - Universitas Mercu Buana Yogyakarta

REKAYASA PERANGKAT LUNAK MATERI TM 13

Sistem (3 sks) Black Box Testing (1) Black Box Testing

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

PENGUJIAN PERANGKAT LUNAK. Muhammad Riza Hilmi, ST.

BAB II LANDASAN TEORI. harapan akan memperoleh laba dari adanya transaksi-transaksi tersebut dan. atas barang atau jasa dari pihak penjual ke pembeli.

STRATEGI PENGUJIAN PERANGKAT LUNAK. Pertemuan 12

Dokumentasi Pengujian

TESTING AND IMPLEMENTATION SYSTEM Strategi Pengujian Perangkat Lunak dan Membangun Test Case

TUGAS MAKALAH. Testing dan Implementasi Sistem White Box Testing

Teknik Informatika S1

IF2036 Software Engineering. Software Testing Strategy

Definisi Black Box. pemenuhan sistem atau komponen dengan kebutuhan fungsional tertentu. q Menurut Myers (1979) :

BAB I PENDAHULUAN 1.1. Latar belakang

ABSTRAKSI DEKOMPOSISI PENGUJIAN Dalam REKAYASA PERANGKAT LUNAK

Teknik Informatika S1

BAB I PENDAHULUAN 1.1 Latar Belakang

Transkripsi:

TESTING SW SE6161 Perancangan dan Analisis Perangkat Lunak 1

Pengujian Perangkat Lunak Pengujian perangkat lunak mencakup: Strategi = mengintegrasikan metode perancangan kasus uji dlm sekumpulan langkah yg direncanakan Teknik/Metode = perancangan kasus uji White-box Black-box Pengujian perangkat lunak seharusnya menghabiskan 30% - 40% dari total biaya pembangunan perangkat lunak. Testing (pengujian) tidak sama dengan debugging Pengujian perangkat lunak merupakan salah satu tugas yang dilakukan dalam software verification and validation Verifikasi dan validasi perangkat lunak adalah bagian dari software quality assurance. SE6161 Perancangan dan Analisis Perangkat Lunak 2

Tujuan Pengujian Pengujian adalah proses menjalankan program dengan maksud untuk mencari kesalahan (error) Kasus uji yang baik adalah kasus yang memiliki peluang untuk mendapatkan kesalahan yang belum ketahuan Pengujian dikatakan berhasil bila dapat memunculkan kesalahan yang belum ketahuan Jadi, pengujian yang baik bukan untuk memastikan tidak ada kesalahan tetapi untuk mencari sebanyak mungkin kesalahan yang ada di program Pengujian tidak dapat menunjukkan ke-tidak-hadir-an defect, pengujian hanya menunjukkan bahwa kesalahan perangkat lunak ada. SE6161 Perancangan dan Analisis Perangkat Lunak 3

Prinsip Dasar Pengujian Semua pengujian harus dapat dirunut ke requirement Pengujian harus direncanakan jauh sebelum dilakukan Prinsip Pareto berlaku pada pengujian perangkat lunak 80 persen dari keseluruhan kesalahan yang didapat saat pengujian dapat dirunut ke 20 persen dari keseluruhan modul persoalannya: bagaimana menemukan 20% modul tersebut Pengujian harus dimulai dari lingkup kecil ke lingkup besar Tidak mungkin ada pengujian yang exhaustive Supaya efektif, pengujian harus dilakukan oleh pihak lain yang independen. SE6161 Perancangan dan Analisis Perangkat Lunak 4

Testability Perancangan perangkat lunak harus mempunyai kualitas: Operability Observability Controllability Decomposability Simplicity Stability Understandibility Kualitas pengujian yang baik: Memiliki peluang yang besar dalam menemukan kesalahan Tidak berganda (redundant) Cukup mewakili semua kemungkinan Tidak terlalu sederhana dan tidak terlalu rumit SE6161 Perancangan dan Analisis Perangkat Lunak 5

Strategi Pengujian Pengujian Modul/Unit umumnya dilakukan oleh pengembang sendiri atau antar pengembang menguji modul/unit metode: white-box Pengujian Integrasi lebih baik menggunakan penguji independen (ITG = Independent Test Group) menguji perancangan perangkat lunak metode: white-box dan black-box Pengujian Validasi menguji kesesuaian dengan requirement metode: black-box Pengujian Sistem menguji perangkat lunak dan elemen sistem lain sebagai suatu kesatuan SE6161 Perancangan dan Analisis Perangkat Lunak 6

Strategi Pengujian Spesifikasikan kebutuhan (requirement) produk dalam bentuk yang dapat diukur (quantifiable) jauh sebelum pengujian dimulai Nyatakan tujuan pengujian secara eksplisit Pahami pengguna perangkat lunak dan buatlah profil dari tiap kategori pengguna Buat rencana pengujian yang menekankan pada rapid cycle testing Buat perangkat lunak robust yang dapat menguji dirinya sendiri Gunakan formal technical review sebagai penyaring sebelum pengujian dilakukan Gunakan formal technical review untuk menilai strategi pengujian dan kasus uji Kembangkan ancangan peningkatan berlanjut untuk proses pengujian SE6161 Perancangan dan Analisis Perangkat Lunak 7

Strategi Pengujian - Pengujian Modul/Unit Hal-hal yang diujikan: Antarmuka modul memastikan bahwa informasi yang berasal dari dan keluar dari modul yang diuji mengalir dengan benar Struktur data lokal memastikan bahwa data yang disimpan sementara menjaga integritasnya selama eksekusi perintah dalam modul mencari kesalahan-kesalahan dalam bentuk: Kondisi batas Penggunaan tipe yang tidak tepat atau nirtaatasas Inisialisasi yang salah atau nilai pasti (default) yang salah Nama peubah yang salah Tipe data yang nirtaatasas Underflow, overflow, dan addressing exceptions memastikan bahwa modul beroperasi dengan benar pada batas-batas pemrosesan yang ditentukan SE6161 Perancangan dan Analisis Perangkat Lunak 8

Strategi Pengujian - Pengujian Modul/Unit Jalur-jalur bebas memastikan bahwa semua kemungkinan jalur kontrol yang mungkin dieksekusi dengan benar paling tidak sekali mencari kesalahan-kesalahan dalam bentuk: penghitungan/pemrosesan yang salah pembandingan yang salah alur kontrol yang tidak tepat Jalur-jalur penanganan kesalahan perancangan perangkat lunak yang baik menuntut agar kondisi salah dapat diantisipasi dan memiliki penanganan kesalahan agar pemrosesan dapat berhenti dengan bersih (antibugging) - Yourdon mencari kesalahan-kesalahan dalam bentuk: Perian kesalahan tidak dapat dipahami Pemberitahuan kesalahan tidak sesuai dengan kesalahan yang dialami Kondisi kesalahan menyebabkan intervensi sistem sebelum penanganan kesalahan dilakukan Penanganan kesalahan tidak benar Perian kesalhan tidak memberikan informasi yang cukup untuk mencari sumber kesalahan SE6161 Perancangan dan Analisis Perangkat Lunak 9

Strategi Pengujian - Pengujian Modul/Unit Prosedur Pengujian: Driver Test Cases Modul yang diuji Test Results Stub Stub SE6161 Perancangan dan Analisis Perangkat Lunak 10

Strategi Pengujian - Pengujian Integrasi Ada dua ancangan dalam pengujian integrasi secara incremental: Top-Down modul diintegrasikan dengan menurun dilihat dari hirarki kontrol, dimulai dari modul pengendali utama (main program) pengintegrasian modul-modul di bawah digabungkan dengan cara: breadth-first depth-first proses integrasi: Driver = Main Program Test Cases Regression Test Test Results Modul Subordinat Stub Stub SE6161 Perancangan dan Analisis Perangkat Lunak 11

Strategi Pengujian - Pengujian Integrasi Jenis stub: Stub A Stub B Stub C Stub D Display a trace message Display passed parameter Return a value from a table (or external file) Do a table search for input parameter and return associated output parameter SE6161 Perancangan dan Analisis Perangkat Lunak 12

Strategi Pengujian - Pengujian Integrasi Bottom-up modul diintegrasikan dengan menaik dilihat dari hirarki kontrol, dimulai dari modul atomik (modul di tingkat paling bawah) yang membentuk cluster (build) proses integrasi: M c M a M b D 1 D 2 D 3 Cluster Cluster Cluster SE6161 Perancangan dan Analisis Perangkat Lunak 13

Strategi Pengujian - Pengujian Integrasi Jenis driver Driver A Driver B Driver C Driver D Invoke subordinate modules Send parameter from a table (or external file) Display parameter A Combination of driver B and driver C SE6161 Perancangan dan Analisis Perangkat Lunak 14

Strategi Pengujian - Pengujian Validasi Proses: Test Plan Test Procedure Validation Test Software developed for one customer Acceptance Test Software Documentation Software developed for mass production Alpha Test (Developer's site) Software Requirement Beta Test (Developer's site) TO-BE RELEASED SOFTWARE Software Documentations Configuration Review (Audit) SE6161 Perancangan dan Analisis Perangkat Lunak 15

Strategi Pengujian - Pengujian Sistem Persiapkan masalah: Saling Tuding Rancang penanganan kesalahan untuk semua kemungkinan masuknya informasi dari elemen sistem di luar perangkat lunak Lakukan pengujian yang mensimulasikan masuknya data jelek dan salah Catat semua hasil pengujian untuk bukti Ikut andil dalam perencanaan dan perancangan pengujian sistem untuk memastikan bahwa pengujian perangkat lunak sudah cukup Jenis sistem test: Pengujian pemulihan (recovery testing) Pengujian keamanan (security testing) Pengujian kekuatan (stress testing) Pengujian kinerja (performance testing) SE6161 Perancangan dan Analisis Perangkat Lunak 16

Teknik Pengujian - White Box Jenis teknik white-box: Basis Path Testing Buat Flow Graph Notation Hitung Cyclomatic Complexity = salah satu dari: Jumlah region V(G) = E - N + 2 E = jumlah busur pada flow graph N = jumlah simpul pada flow graph V(G) = P + 1 P = simpul predikat (simpul yang memiliki kondisi = 2 atau lebih busur yang keluar) Tentukan jalur bebas (independent path) = jalur program yang merupakan satu kumpulan perintah pengolahan atau satu kondisi pengolahan Siapkan kasus uji untuk setiap jalur bebas Graph Matrices = Connection Matrices = representasi lain dari FGN SE6161 Perancangan dan Analisis Perangkat Lunak 17

Teknik Pengujian - White Box Control Structure Testing Condition Testing cara merancang kasus uji untuk kondisi logika yang ada pada suatu modul program: kondisi sederhana = peubah boolean ekspresi relasional kondisi bentukan (compound) = gabungan dari beberapa kondisi sederhana Data Flow Testing cara menguji berdasarkan lokasi dari pendefinisian dan penggunaan suatu peubah dalam modul program Loop Testing cara menguji berdasarkan validitas dari konstruksi pengulangan yang digunakan dalam modul program: sederhana bercabang bersambung (concatenated) takterstruktur SE6161 Perancangan dan Analisis Perangkat Lunak 18

Teknik Pengujian - Black Box Jenis pengujian black-box: Graph-based Testing geraf yang mewakili hubungan antar objek pada modul sehingga tiap objek dan hubungannya tersebut dapat diuji Equivalence Partitioning pembagian domain masukan dari program menjadi kelas data yang dapat dibuatkan kasus ujinya Boundary Value Analysis pemilihan kasus uji dengan mencari batas-batas ekstrim dari kelas data Comparison Testing digunakan untuk sistem yang menganut redundancy kasus uji yang dirancang untuk satu versi perangkat lunak dijadikan masukan pada pengujian versi perangkat lunak lainnya hasil kedua versi perangkat lunak harus sama SE6161 Perancangan dan Analisis Perangkat Lunak 19

Debugging Ancangan: Proses: Brute-force memory dump, run-time trace, WRITE statements Backtracking perunutan balik mulai kesalahan ketahuan hingga sampai lokasi sumber Cause elimination dengan induksi atau deduksi: isolasi kemungkinan penyebab kesalahan Eksekusi Hasil Debugging Kasus Uji Penyebab Dicurigai Pengujian Tambahan Penyebab Diketahui Pengujian Regresi SE6161 Perancangan dan Analisis Perangkat Lunak 20