VALIDASI SOFTWARE

29
VALIDASI SOFTWARE (Nelly Sofi)

description

VALIDASI SOFTWARE. (Nelly Sofi). Verifikasi vs. Validasi. Verifikasi : “Are we building the product right “ Software seharusnya sesuai dengan spesifikasinya Validasion :"Are we building the right product”. Software seharusnya melakukan apa yang benar-benar disyaratkan oleh user. - PowerPoint PPT Presentation

Transcript of VALIDASI SOFTWARE

Page 1: VALIDASI SOFTWARE

VALIDASI SOFTWARE

(Nelly Sofi)

Page 2: VALIDASI SOFTWARE

RPL 2

Verifikasi: “Are we building the product right “

Software seharusnya sesuai dengan spesifikasinya

Validasion:"Are we building the right product”.

Software seharusnya melakukan apa yang benar-benar disyaratkan oleh user.

Verifikasi vs. Validasi

Page 3: VALIDASI SOFTWARE

RPL 3

Adalahkeseluruhan proses daur hidup V & V harus diterapkan pada setiap tahapan dalam proses software

Mempunyai dua obyektif prinsipal- Menemukan kekurangan dalam sebuah sistem;- Memperkirakan apakah sistem berguna dan dapat digunakan atau tidak dalam situasi operasional

Proses Verifikasi & Validasi

Page 4: VALIDASI SOFTWARE

RPL 4

Verifikasi dan validasi harus memberikan kepastian bahwa software sesuai dengan tujuannya.

Hal ini bukan berarti benar-benar bebas dari kekurangan

Harus cukup baik untuk tujuan penggunaannya dan tipe dari penggunaan akan menentukan derajat kepastian yang dibutuhkan

Tujuan Verifikasi & Validasi

Page 5: VALIDASI SOFTWARE

RPL 5

Tergantung pada tujuan sistem, harapan user dan lingkungan pemasaran– Fungsi Software

• Tingkatkepastian tergantung pada bagaimana kritikal software terhadapa sebuah organisasi – Harapan User

• User mungkin mempunyai harapan yang rendah terhadap software yang ada– Lingkungan pemasaran

• Lebih awal melempar sebuah produk ke pasar lebih penting daripada menemukan kekurangan dalam program

Kepastian Verifikasi & Validasi

Page 6: VALIDASI SOFTWARE

RPL 6

Software inspection. Berhubungan dengan analisis representasi sistemstatik untuk menemukan masalah (verifikasi statik)– Dapat menjadi tambahan dari tool-based document dan code analysis

Software testing. Berhubungan dengan pelaksanaan dan memperhatikan perilaku produk (dinamik verifikasi)– Sistem dijalankan dengan data tes dan perilaku operasionalnya diperhatikan

Verifikasi Statik & Dinamik

Page 7: VALIDASI SOFTWARE

RPL 7

Verifikasi Statik & Dinamik (cont.)

Page 8: VALIDASI SOFTWARE

RPL 8

Dapat mengungkapkan keberadaan kesalahan bukan ketidakberadaannya

Hanya teknik validasi untuk persyaratan non-functional sebagai sebuah software dapat dijalankan untuk melihat bagaimana perilakunya

Harusnya digunakan dalam hubungannya dengan verifikasi statik untuk menyediakan penanganan Verifikasi &Validasi yang menyeluruh

Pengujian Program

Page 9: VALIDASI SOFTWARE

RPL 9

Pengujian Kekurangan– Test dirancang untuk menemukan kekurangan sistem– Uji kekurangan yang berhasil salah satunya adalah menunjukkan keberadaan kekurangan dalam sebuah sistem

Pengujian Validasi– Ditujukan untuk memperlihatkan bahwa software sesuai dengan persyaratannya– Tes yang berhasil adalah salahsatu yang menunjukkan bahwa persyaratan telah diterapkan secara tepat

Tipe Pengujian

Page 10: VALIDASI SOFTWARE

RPL 10

Pengembangan Model Verifikasi

Page 11: VALIDASI SOFTWARE

RPL 11

System Testing– Pengujian terhadap integrasi sub-system, yaitu keterhubungan antar sub-system

Acceptance Testing– Pengujian terakhir sebelum sistem dipakai oleh user. – Melibatkan pengujian dengan data dari pengguna sistem.– Biasa dikenal sebagai “alpha test” (“beta test” untuk software komersial, dimana pengujian dilakukan oleh potensial customer)

Proses Testing

Page 12: VALIDASI SOFTWARE

RPL 12

Proses Testing (cont.)

Page 13: VALIDASI SOFTWARE

RPL 13

Component testing - Pengujian komponen- komponen program- Biasanya dilakukan oleh component developer (kecuali untuk system kritis)

Integration testing - Pengujian kelompok komponen-komponen yang terintegrasi untuk membentuk sub-system ataupun system - Dilakukan oleh tim penguji yang independent - Pengujian berdasarkan spesifikasi sistem

Proses Testing (cont.)

Page 14: VALIDASI SOFTWARE

RPL 14

Proses testing - Deskripsi fase-fase utama dalam pengujian

Pelacakan Kebutuhan- Semua kebutuhan user diuji secara individu

Item yg diuji- Menspesifikasi komponen sistem yang diuji

Jadual testing Prosedur Pencatatan Hasil dan Prosedur Kebutuhan akan Hardware dan Software Kendala-kendala

- Mis: kekurangan staff, alat, waktu dll.

Rencana Pengujian

Page 15: VALIDASI SOFTWARE

RPL 15

Failure: output yang tidak benar/tidak sesuai ketika sistem dijalankan

Fault: kesalahan dalam source code yang mungkin menimbulkan failure ketika code yg fault tsb dijalankan

Failures & Faults

Page 16: VALIDASI SOFTWARE

RPL 16

Suppose node 6 should be X:= C*(A+2*B)

• Failure-less fault: » executing path

(1,2,4,5,7,8) will not reveal this fault because 6 is not executed» nor will executing path (1,2,3,5,6,8) because C = 0

Need to make sure proper test cases are selected• the definitions of C at nodes 3 and 4 both affect the use of C at node 6 »executing path (1,2,4,5,6,8) will reveal the failure,but only if B /= 0

Contoh Faults, Errors & Failures

Page 17: VALIDASI SOFTWARE

RPL 17

Hanya test yang lengkap yg dapat meyakinkan sistem terbebas dari kesalahan, tetap hal ini sangat sulitd ilakukan.

Prioritas dilakukan terhadap pengujian kemampuans istem, bukan masing-masing komponennya.

Pengujian untuk situasi yg tipikal lebih penting dibandingkan pengujian terhadap nilai batas.

Prioritas Testing

Page 18: VALIDASI SOFTWARE

RPL 18

Test data:Input yang yang direncankan digunakan oleh sistem.

Test cases:Input yang digunakan untuk menguji sistem dan memprediksi output dari input jika sistem beroperasi sesuai dengan spesifikasi.

Test Data & Test Kasus

Page 19: VALIDASI SOFTWARE

RPL 19

Proses Defect Testing

Page 20: VALIDASI SOFTWARE

RPL 20

Disebut juga white-box testingPenentuan test case disesuaikan

dengan struktur sistem. Knowledge program digunakan untuk mengidentifikasi test case tambahan.

Tujuannya untuk menguji semua statement program (debug).

Struktural Testing

Page 21: VALIDASI SOFTWARE

RPL 21

White Box Testing

Page 22: VALIDASI SOFTWARE

RPL 22

Tujuannya meyakinkan bahwa himpunan test case akan menguji setiap path pada suatu program paling sedikit satu kali.

Titik awal untuk path testing adalah suatu program flow graph yang menunjukkan node-node yang menyatakan program decisions (mis.: if-then-else condition) dan busur menyatakan alur kontrol

Statements dengan conditions adalah node-node dalam flow graf.

Path Testing

Page 23: VALIDASI SOFTWARE

RPL 23

Menggambarkan alur kontrol.Setiap cabang ditunjukkan oleh path yg terpisah dan loop ditunjukkan oleh arrows looping kembali ke loop kondisi node.

Digunakan sebagai basis untuk menghitung cyclomatic complexity.

Cyclomatic complexity = Jumlah edges –Jumlah Node + 2.

Cyclomatic complexity menyatakan jumlah test untuk menguji control statements

Program Flow Graph

Page 24: VALIDASI SOFTWARE

RPL 24

Program Flow Graph (cont.)

Page 25: VALIDASI SOFTWARE

RPL 25

1, 2, 3, 8, 91, 2, 3, 4, 6, 7, 21, 2, 3, 4, 5, 7, 21, 2, 3, 4, 6, 7, 2, 8, 9Test cases harus ditentukan sehingga

semua path tsb tereksekusi.

Independent Path

Page 26: VALIDASI SOFTWARE

RPL 26

Pendekatan pengujian dimana program dianggap sebagai suatu‘black-box’ (‘kotak hitam’)

Program test case berbasiskan spesifikasi

Test planning dapat dimulai sejak awal proses pengembangan sistem

Black Box Testing

Page 27: VALIDASI SOFTWARE

RPL 27

Black Box Testing (cont.)

Page 28: VALIDASI SOFTWARE

RPL 28

Pengujian black box berusaha menemukan kesalahan dalam kategori:– Fungsi-fungsi yang tidak benar atau hilang– Kesalahan interface– Kesalahan dalam struktur data atau akses database eksternal– Kesalahan kinerja– Inisialisasi dan kesalahan terminasi

Black Box Testing (cont.)

Page 29: VALIDASI SOFTWARE

RPL 29

Input data dan output hasil terdapat diklas yang berbeda yang sesuai dengan klas inputnya

Masing-masing klas equivalensi partition diprosres dimana program akan memproses anggota klas-klas tersebut secara equivale.

Test cases dipilih dari masing-masing partisi

Partisi Ekivalensi