• Tidak ada hasil yang ditemukan

Pengujian pada Perangkat Lunak. Lukman Hakim

N/A
N/A
Protected

Academic year: 2021

Membagikan "Pengujian pada Perangkat Lunak. Lukman Hakim"

Copied!
31
0
0

Teks penuh

(1)

Pengujian

pada

Perangkat

Lunak

(2)

Pengujian Validasi

KajianKonfigurasi(audit)

Elemen dari proses validasi

Memastikan apakah semua elemen konfigurasi

perangkat lunak telah dikembangkan dengan tepat

(3)

Pengujian Validasi

Pengujian Alpha dan Beta

Pengujian Alpha

 Usability Labs

 Usability Factor Checklist

(4)

Pengujian Sistem

Pengujian Perbaikan

Pengujian KeamananPengujian Stress

(5)

Pendekatan Strategis ke Pengujian

Perangkat Lunak

Penguujian UnitPengujian IntegrasiPengujian Validasi Pengujian sistem

(6)

Pengujian Unit

Berfokus pada inti terkecil dari desain

perangkat lunak yaitu modul

(7)

Pengujian Unit

Checklist untuk pengujian Interface

Apakah jumlah parameter input sama dengan

jumlah argumen?

Apakah antara atribut dan parameter argumen

sudah cocok.

 Apakah antara sistem satuan parameter dan

argumen sudah cocok?

Apakah jumlah argumen yang ditransmisikan

kemodul yang dipanggil sama dengan atribut parameter?

(8)

lanjutan

Apakah atribut dari argumen yang ditransmisikan

kemodul yang dipanggil sama dengan atribut parameter?

Apakah sistem unit dari argumen yang

ditransmisikan kemodul yang dipanggil sama dengan sistem satuan parameter?

Apakah jumlah atribut dan urutan argumen

kefungsi-fungsi built-in sudah benar?

Adakah referensi keparameter yang tidak sesuai

dengan poin entri yang ada?

(9)

Pengujian Unit

Apakah definisi variabel global konsisten dengan

modul?

Apakah batasan yang dilalui merupakan argumen?

Test case harus didesain untuk mengungkap kesalahan dalam kategori

Pengetikan yang tidak teratur dan tidak konsisten Inisialisasi yang salah atau nilai-nilai default

Nama variabel yang tidak benar Tipedata yang tidak konsisten

(10)

Integritas testing

Pengujian keseluruhan system atau

sub-system yang terdiri dari komponen yg terintegrasi.

Test integrasi menggunakan black-box

dengan test case ditentukan dari spesifikasi.

Kesulitannya adalah menemukan/melokasikanPenggunaan Incremental integration testing

(11)

Incremental Integrasi

Testing

(12)

Pendekatan Integrasi

Testing

Top-down testing

Berawal dari level-atas system dan terintegrasi

dengan mengganti masing-masing komponen secara top-down dengan suatu stub (program pendek yang mengenerate input kesub-system yg diuji).

Bottom-up testing

Integrasi components dilevel hingga sistem

lengkap sudah teruji.

Pada prakteknya, kebanyakan test integrasi menggunakan kombinasi kedua strategi pengujian tsb.

(13)
(14)
(15)

PendekatanTesting

Architectural validation

Top-down integration testing lebih baik

digunakan dalam menemukan error dalam sistem arsitektur.

System demonstration

Top-down integration testing

hanyamembatasipengujianpadaawaltahappeng embangansystem.

Test implementation

Sering kali lebih mudah dengan menggunakan

(16)

Interface Testing

Dilakukan kalau module-module dan

sub-system terintegrasi dan membentuk sistem yang lebih besar.

Tujuannya untuk medeteksi fault terhadap

kesalahan interface atau asumsi yang tidak valid tentang interface tsb.

Sangat penting untuk pengujian terhadap

pengembangan sistem dgn menggunakan pendekatan object-oriented yg didefinisikan oleh object-objectnya

(17)

Pengujian Aplikasi Server

Volume Testing

Stress Testing

Performance Testing Data Recovery Testing

Data Backup dan Restore TestingData security Tetsing

(18)

Volume Testing

Menemukan kelemahan sistem selama

melakukan pemrosesan data dalam jumlah yang besardalamperiode waktuyang singkat.

Tujuan: meyakinkan bahwa sistem tetap

melakukan pemrosesan data anatar batasan fisik dan batasan logik.

Contoh:Mengujikan proses antar server dan

(19)

Strees Testing

Tujuan: mengetahui kemampuan sistem

dalam melakukan transaksi selama periode waktu puncak proses. Contoh periode puncak: ketika penolakan proses login on-line setelah sistem down atau pada kasus batch, pengiriman batch proses dalam jumlah yg besar dilakukan setelah sistemdown.

Contoh: Melakukan login ke server ketika

sejumlah besarworkstation melakukan proses menjalankan perintah sql database

(20)

Soal Latihan

Lakukan diskusi pada sistem yang kalian buat

dengan menentukan beberapa skenario pengujian pada Volume dan strees testing.

(21)

Validasi Sistem

Kritis

(22)

Pendahuluan

Proses V&V harus mendemonstrasikan bahwa sistem

memenuhi spesifikasinya dan bahwa layanan dan prilaku sistem mendukung persyaratan klien

Sehingga diperlukan penambahan analisis dan pengujian

normal, karena :

Biaya kegagalan  jauh lebih besar dari pada sistem non-kritis Validasi atribut tingkat dependabilitas  meyakinkan user

Lebih dari 50% biaya pengembangan total utk sistem PL

kritis  agar kegagalan sistem yg mahal terhindari

Contoh : kegagalan sistem PL dalam hal misi pada roket

Ariane 5 th 1996, yg mengakibatkan beberapa satelit rusak.

Kualitas sistem dipengaruhi oleh kualitas proses yg dipakai

(23)

Validasi Sistem Kritis

Validasi terhadap reliability (keandalan), safety (keselamatan) dan security (keamanan) bagi sistem berbasis komputer.

Validation perspectives

Validasi Reliability/keandalan

Apakah keandalan sistem telah sesuai dengan spesifikasinya?Apakah keandalan sistem telah memberikan kepuasan pada user

pemakai sistem?

Validasi Safety/keselamatan

Menjamin bahwa kecelakaan tidak akan terjadi atau bahwa konsekuensi kecelakaan akan minimal.

Validasi Security/keamanan

(24)

Tekhnik Validasi

Static techniques

Review terhadap disain /inspeksi program

Dynamic techniques

Pengujian Statistik

Pengujian berbasis skenario Pemeriksaan Run-time

Process validation

Desain proses pembangunan yang meminimalkan

kemungkinan kesalahan dari proses sesuai dgn dependibilitas sistem (keandalan, ketersediaan, keselamatan dan keamanan)

(25)

Static validation techniques

Static validation lebih fokus pada analisa

dokumentasi sistem(persyaratan, disain, kode dan data uji)

Fokus pada penemuan eror sistem dan

identifikasi permasalahan yg berpotensi muncul saat exekusi.

Beberapa dokumen (argumen terstruktur,

pembuktian secara matematis, dll) dapat disiapkan utk mendukung validasi statik

(26)

Static techniques for safety validation

Menunjukkan keselamatan sistem melalui

sebuah pengujian merupakan sesuatu yg sulit

Karena pengujian bertujuan utk menunjukkan

apa yg dilakukan sistem saat situasi normal.

Tidak mungkin dilakukan pengujian thd setiap

(27)

Safety reviews

1. Peninjauan thd Review for kebenaran function

2. Peninjauan thd maintainable, understandable structure

3. Peninjauan thd algorithma dan disain struktur data berdasarkan spesifikasi

4. Peninjauan thd konsistensi kode dgn algorithma dan disain struktur data

(28)

Review guidance

1. Buatlah software sesederhana mungkin

2. Gunakan teknik yg sederhana dlm pencegahan error seperti menghindari pemakaian pointers and recursion

3. Gunakan information hiding (penyembunyian inf) agar inf yg dsembunyikan tidak dirusak oleh komponen program yg tidak seharusnya menggunakannya

4. Gunakan teknik toleransi kesalahan yg sesuai , namun jangan pernah berfikir bahwa hasilnya benar-benar aman

(29)

Hazard-driven analysis

1. Efektif atau tidaknya jaminan keselamatan bergantung pada identifikasi bahaya

2. Keselamatan dapat dijamin melalui

Menghindari bahaya sistem pemotongan yg

menuntut operator agar menekan 2 tombol terpisah

Deteksi dan membuang bahaya deteksi tekanan

berlebihan dan pembukaan katup sebelum meledak pd pabrik kimia

Membatasi kerusakan pemadam api otomatis

3. Safety review (ulasan keselamatan) harus menunjukkan bahwa satu atau lebih teknik ini telah diterapkan untuk semua bahaya yg telah diidentifikasi

(30)

The system safety case

1. Saat ini praktek formal untuk keselamatan menjadi hal yang diperlukan untuk keselamatan semua sistem berbasis komputer, misalnya isyarat rel kereta api, pengendalian lalu lintas udara, dan lain-lain

2. Kasus keselamatan menyajikan daftar argumen, berdasarkan bahaya yg teridentifikasi

3. Mengapa ada penerimaan yg rendah thd

kemungkinan bahwa bahaya ini tidak akan mengakibatkan kecelakaan

4. Argumen dapat didasarkan pada bukti formal, desain dasar, keselamatan bukti, dll. Faktor Proses mungkin juga dimasukkan

(31)

Formal methods and critical systems

Pengembangan sistem kritis adalah salah satu

'keberhasilan' dari metode formal

Di Inggris digunakan untuk pengembangan

beberapa jenis perangkat lunak keamanan untuk aplikasi pertahanan

Saat ini tidak ada perjanjian umum tentang

nilai metode formal dalam pengembangan sistem

Referensi

Dokumen terkait

Implementasi pengujian pada perangkat lunak dapat dilaksanakan sesuai dengan kebutuhan dan model sistem.. Keragaman dan kemajemukan perangkat lunak mengisyaratkan

Bila kode barang diisi, nama barang dan satuan harus ditampilkan (data nama barang dan satuan diambil dari data store barang)..  Jumlah permintaan dan jumlah

Pada gambar 5, 6, 7 dan 8 dapat ditunjukkan bahwa perubahan parameter mempengaruhi tanggapan sistem jika perubahan parameter tersebut terjadi pada saat sistem

Parameter keberhasilan pengujian ini adalah munculnya pilihan perusahaan yang data sahamnya dapat diunduh sesuai dengan isi file companydata.txt yang terdapat di

Fungsi ini dimaksudkan agar pengguna dapat menambah tempat secara langsung pada sistem, sehingga nantinya akan didapatkan sebuah sistem informasi geografis dengan

Bagaimana merancang sistem yang dibutuhkan UPT TIK Universitas Lampung untuk memonitor informasi yang berasal dari UPS dalam ruang data center dengan parameter sisa

Proses penghitungan dalam sistem ini menggunakan metode naive bayes yang meliputi beberapa tahap seperti pengklasifikasian hasil diagnosis, mencari probabilitas tiap

Pada bab ini dibahas hasil pengujian yang dilakukan terhadap perangkat lunak sistem alih aksara dengan menggunakan citra hasil cropping sejumlah 321 sebagai