Software Testing Pertemuan III Ikhtisar Software Quality Assurance

  • Slides: 34
Download presentation
Software Testing Pertemuan III

Software Testing Pertemuan III

Ikhtisar • Software Quality Assurance: – Meliputi keseluruhan proses pengembangan software – Memastikan bahwa

Ikhtisar • Software Quality Assurance: – Meliputi keseluruhan proses pengembangan software – Memastikan bahwa standar yang telah disepakati di ikuti – Memastikan bahwa masalah-masalah ditemukan ditangani – Berorientasi untuk pencegahan

Ikhtisar • Software testing – Melibatkan sistem operasi dibawah kondisi terkontrol – Meliputi kondisi

Ikhtisar • Software testing – Melibatkan sistem operasi dibawah kondisi terkontrol – Meliputi kondisi normal dan abnormal – Mencoba untuk menentukan apakah hal-hal yang terjadi ketika mereka seharusnya tidak atau hal-hal yang tidak terjadi ketika mereka harus – Berorientasi pada deteksi

Ikhtisar • Mengapa software memiliki bugs – Miskomunikasi atau tidak ada komunikas – Kompleksitas

Ikhtisar • Mengapa software memiliki bugs – Miskomunikasi atau tidak ada komunikas – Kompleksitas software – Kesalahan pemrograman – Mengubah persyaratan – Dokumentasi kode yang buruk – Alat pengembangan software

Ikhtisar • Verifikasi – Melibatkan tinjauan dan pertemuan untuk mengevaluasi dokumen, rencana, kode, persyaratan

Ikhtisar • Verifikasi – Melibatkan tinjauan dan pertemuan untuk mengevaluasi dokumen, rencana, kode, persyaratan dan spesifikasi. • Validasi – Melibatkan pengujian aktual dan terjadi setelah verifikasi selesai.

Software Testing

Software Testing

Ikhtisar • Tipe Pengujian – Black box: • Tidak didasarkan pada pengetahuan apapun tentang

Ikhtisar • Tipe Pengujian – Black box: • Tidak didasarkan pada pengetahuan apapun tentang desain internal • Berdasarkan kebutuhan dan fungsionalitas – White box: • Berdasarkan pengetahuan dari desain internal • Berdasarkan cakupan kode pernyataan, branches, path, dan kondisi

Ikhtisar • Masalah umum pada Software Testing – Minimnya kebutuhan – Jadwal yang tidak

Ikhtisar • Masalah umum pada Software Testing – Minimnya kebutuhan – Jadwal yang tidak realitis – Pengujian yang tidak memadai – Menyimpang dari persyaratan awal – Miskomunikasi

Overview • Kualitas Software – Bebas dari bug, dikirimkan tepat waktu – Memenuhi persyaratan,

Overview • Kualitas Software – Bebas dari bug, dikirimkan tepat waktu – Memenuhi persyaratan, dapat dipertahankan • CMM (Capability Maturity Model) – Mengukur efektivitas dalam memberikan kualitas perangkat lunak – Mulai dari tingkat 1 - 5

 • Pada awal tahun 2000, masalah utama yang dilaporkan dengan sistem komputer baru

• Pada awal tahun 2000, masalah utama yang dilaporkan dengan sistem komputer baru di sebuah sekolah daerah pinggiran kota besar publik AS dengan 100. 000 + siswa; masalah termasuk 10. 000 kartu laporan yang keliru dan murid terbengkalai oleh karena kegagalan sistem pendaftaran kelas; distrik tersebut CIO dipecat • Pada bulan Oktober 1999 $ 125, 000 NASA Orbiter Mars Iklim pesawat ruang angkasa itu diyakini akan hilang dalam ruang karena kesalahan konversi data sederhana. • Mars Polar Lander misi, yang gagal karena alasan-alasan yang tidak diketahui pada bulan Desember 1999. Beberapa panel menyelidiki untuk menentukan kegagalan proses yang memungkinkan kesalahan yang terjadi.

 • Sebuah kota kecil di Illinois menerima tagihan listrik yang luar biasa besar

• Sebuah kota kecil di Illinois menerima tagihan listrik yang luar biasa besar bulanan sebesar $ 7 juta pada Maret 1999. Ini tentang 700 kali lebih besar daripada yang normal tagihan. Ternyata terjadi karena bug dalam perangkat lunak baru yang telah dibeli oleh perusahaan listrik lokal untuk menangani masalah software Y 2 K. • Pada awal tahun 1999 sebuah perusahaan permainan komputer besar menarik kembali semua salinan produk baru yang populer karena masalah software. Perusahaan ini membuat permintaan maaf ke publik karena telah merilis produk yang belum siap.

Software Testing

Software Testing

Software Development Life-Cycle (SDLC) Siklus Hidup Pengembangan Perangkat Lunak • • • Requirements (persyaratan)

Software Development Life-Cycle (SDLC) Siklus Hidup Pengembangan Perangkat Lunak • • • Requirements (persyaratan) Design (desain) Coding/Implementation (pelaksanaan) Testing (pengujian) Installation (instalasi) Maintenance (pemeliharaan)

Tahap Pengujian • Kesalahan yang ditemukan pada tahap ini membuat biaya menjadi empat kali,

Tahap Pengujian • Kesalahan yang ditemukan pada tahap ini membuat biaya menjadi empat kali, yaitu : 1. Biaya untuk mengembangkan kode yang salah 2. Biaya untuk pengujian untuk mendeteksi kesalahan 3. Menghapus bagian yang salah dan menambahkan yang tepat 4. Pengujian ulang untuk memastikan bahwa sudah OK sekarang

Pengujian dalam SDLC • Hal ini umumnya diketahui bahwa 64% dari kesalahan terjadi selama

Pengujian dalam SDLC • Hal ini umumnya diketahui bahwa 64% dari kesalahan terjadi selama tahap analisis dan desain. • Requirements (persyaratan): – bahwa persyaratan yang ditentukan memenuhi kebutuhan organisasi • Design and programs (desain dan program) : – bahwa desain dan menyelesaikan program telah memenuhi persyaratan yang ditentukan

Pengujian dalam SDLC (Lanjutan) • Test and installation (pengujian dan instalasi) : – Bahwa

Pengujian dalam SDLC (Lanjutan) • Test and installation (pengujian dan instalasi) : – Bahwa sistem yang diterapkan memenuhi spesifikasi • Maintenance (pemeliharaan) : – Perubahan pekerjaan

Verifikasi Kegiatan • Requirements (persyaratan) : – Menentukan pendekatan verifikasi – Menentukan kecukupan persyaratan

Verifikasi Kegiatan • Requirements (persyaratan) : – Menentukan pendekatan verifikasi – Menentukan kecukupan persyaratan – Menghasilkan data uji fungsional – Menentukan konsistensi desain dengan persyaratan

Verifikasi Kegiatan (lanjutan) • Design (desain) : – Menentukan kecukupan desain – Menghasilkan data

Verifikasi Kegiatan (lanjutan) • Design (desain) : – Menentukan kecukupan desain – Menghasilkan data pengujian struktural dan fungsional – Menentukan konsistensi dengan desain • Programming/Coding (pemrograman) : – Menentukan kecukupan pelaksanaan – Menghasilkan data pengujian struktural dan fungsional untuk program

Verifikasi Kegiatan (lanjutan) • Test (pengujian) : – Pengujian sistem aplikasi • Installation (instalasi)

Verifikasi Kegiatan (lanjutan) • Test (pengujian) : – Pengujian sistem aplikasi • Installation (instalasi) : – Sistem diuji dalam produksi • Maintenance (pemeliharaan) : – Memodifikasi dan pengujian ulang

Pada setiap tahap, dilakukan : • Menganalisis struktur yang diproduksi pada fase ini untuk

Pada setiap tahap, dilakukan : • Menganalisis struktur yang diproduksi pada fase ini untuk testability internal dan kecukupan • Menghasilkan pengujian set berdasarkan struktur pada tahap ini • Selain itu, selama desain dan pemrograman : – Menentukan bahwa struktur yang konsisten dengan struktur yang dihasilkan selama tahap sebelumnya – Menyempurnakan dan merumuskan kembali set pengujian yang dihasilkan sebelumnya

Strategi Pengujian • Terdiri dari dua komponen : – Tes Faktor : resiko atau

Strategi Pengujian • Terdiri dari dua komponen : – Tes Faktor : resiko atau masalah yang perlu ditangani – Uji fase : fase SDLC dimana fase ini akan terjadi • Beberapa faktor uji yang spesifik untuk suatu sistem perangkat lunak tertentu; seleksi dan peringkat diperlukan

Software Testing

Software Testing

Contoh uji kegiatan setiap tahap a. Persyaratan tahap kegiatan - menentukan strategi pengujian -

Contoh uji kegiatan setiap tahap a. Persyaratan tahap kegiatan - menentukan strategi pengujian - menentukan kecukupan persyaratan - menghasilkan kondisi pengujian fungsional b. Desain fase kegiatan - menentukan konsistensi desain dengan persyaratan - menentukan kecukupan desain - menghasilkan kondisi pengujian struktural dan fungsional

a. Program tahap kegiatan - menentukan konsistensi dengan desain - menentukan kecukupan pelaksanaan -

a. Program tahap kegiatan - menentukan konsistensi dengan desain - menentukan kecukupan pelaksanaan - menghasilkan kondisi pengujian struktural dan - fungsional untuk program / unit b. Uji tahap kegiatan - menentukan kecukupan rencana uji - pengujian sistem aplikasi c. Instalasi tahap kegiatan - tempat sistem diuji dalam produksi d. Pemeliharaan tahap kegiatan - memodifikasi dan tes ulang

Software Testing

Software Testing

Faktor Pengujian • Kebenaran – jaminan bahwa data yang dimasukkan, diproses, dan dikeluarkan adalah

Faktor Pengujian • Kebenaran – jaminan bahwa data yang dimasukkan, diproses, dan dikeluarkan adalah akurat dan lengkap • Integritas File – Bahwa data yang dilakukan kembali berubah – bahwa file yang tepat digunakan; data file dan urutan yang benar

Faktor Pengujian (lanjutan) • Otorisasi – bahwa data diproses sesuai dengan maksud manajemen (umum

Faktor Pengujian (lanjutan) • Otorisasi – bahwa data diproses sesuai dengan maksud manajemen (umum vs tertentu) • Audit trail – Kemampuan untuk mendukung proses yang terjadi • Kesinambungan pengolahan – kemampuan untuk mempertahankan pengolahan dalam masalah yang terjadi; back up sistem dll

Faktor Pengujian (lanjutan) • Tingkat layanan : – Bahwa hasil yang diinginkan akan tersedia

Faktor Pengujian (lanjutan) • Tingkat layanan : – Bahwa hasil yang diinginkan akan tersedia dalam jangka waktu yang diterima pengguna • Akses kontrol : – bahwa sumber daya sistem aplikasi dilindungi terhadap modifikasi yang disengaja, kerusakan, disalahgunakan; (keamanan)

Faktor Pengujian (lanjutan) • Pemenuhan – bahwa sistem ini dirancang sesuai dengan strategi organisasi,

Faktor Pengujian (lanjutan) • Pemenuhan – bahwa sistem ini dirancang sesuai dengan strategi organisasi, kebijakan, standar dan prosedur. Termasuk juga dengan persyaratan aplikasi lain. • Keandalan – bahwa aplikasi akan melakukan fungsinya dimaksudkan dengan presisi yang diperlukan selama jangka waktu yang diharapkan.

Faktor Pengujian (lanjutan) • Kemudahan Penggunaan – kegunaan sistem untuk orang-orang berinteraksi dengan sistem

Faktor Pengujian (lanjutan) • Kemudahan Penggunaan – kegunaan sistem untuk orang-orang berinteraksi dengan sistem aplikasi • Perawatan – upaya yang diperlukan untuk menemukan dan memperbaiki kesalahan dalam sistem operasional. • Mudah dibawa – Berbagai konfigurasi hardware

Faktor Pengujian (lanjutan) • Ketersambungan – kesalingterkaitan dalam sistem aplikasi atau aplikasi lain di

Faktor Pengujian (lanjutan) • Ketersambungan – kesalingterkaitan dalam sistem aplikasi atau aplikasi lain di lingkungan mereka • Pelaksanaan – jumlah sumber daya untuk menjalankan fungsi lain • Kemudahan operasi – Integrasi kedalam lingkungan operasi

Alat Pengujian • Daftar Periksa - menyediakan tim uji dengan alat untuk memastikan semua

Alat Pengujian • Daftar Periksa - menyediakan tim uji dengan alat untuk memastikan semua langkah yang tepat telah diikuti - digunakan untuk mengidentifikasi masalah • Penerimaan kriteria uji - menjelaskan kriteria untuk menentukan apakah tes penerimaan telah berhasil - digunakan untuk mengukur keberhasilan instalasi Alat-alat di atas saling melengkapi satu sama lain

Daftar Alat Pengujian • Atribut dari daftar yang baik meliputi : - identifikasi daerah

Daftar Alat Pengujian • Atribut dari daftar yang baik meliputi : - identifikasi daerah yang ditutupi oleh checklist - tujuan pertanyaan checklist lain - petunjuk tentang cara menggunakan pertanyaan yang disediakan termasuk materi latar belakang (maksud & tujuan) - pertanyaan tidak bias - ruang untuk menulis komentar atau klarifikasi untuk jawaban - ruang untuk menunjukkan orang yang bertanya dan yang menjawab pertanyaan

Langkah-langkah dalam menggunakan checklist Mengidentifikasi daerah uji Pilih checklist Mengerti maksud dari pertanyaan Melatih

Langkah-langkah dalam menggunakan checklist Mengidentifikasi daerah uji Pilih checklist Mengerti maksud dari pertanyaan Melatih penggunaan checklist Melakukan wawancara dengan menggunakan daftar periksa • Debrief diri sendiri • Dokumen wawancara • Evaluasi dan proses wawancara checklist • • •