Tugas Review Materi SUPL

 

Review Materi Standar Uji Perangkat Lunak

Dasar Uji Perangkat Lunak

Pengujian Perangkat Lunak merupakan elemen kritis dari jaminan kualitas perangkat lunak dan merepresentasikan kajian pokok dari spesifikasi, desain dan pengkodean. Pengujian ini merepresentasikan ketidaknormalan yang terjadi pada pengembangan perangkat lunak.

Pengembang perangkat lunak sesuai dengan sifatnya dasar, mereka adalah manusia pembangun. Pengujian mengharuskan pengembang membuang pemikiran-­pemikiran sebelumnya mengenai “kebenaran” perangkat lunak yang baru saja dikembangkan dan mengatasi konflik minat yang terjadi pada saat kesalahan ditemukan.

Sasaran Pengujian : 

  • Pengujian merupakan sebuah proses eksekusi program dengan untuk menemukan suatu kesalahan.
  • Pengujian yang sukses adalah pengujian yang memiliki probabilitas tinggi untuk menemukan dan mengungkapkan semua kesalahan yang belum pernah ditemukan atau diduga sebelumnya.
  • Test case yang baik adalah test case yang memiliki probabilitas tinggi untuk menemukan kesalahan yang belum pernah ditemukan sebelumnya.
  • Jika pengujian sukses dilakukan, maka akan ditemukan kesalahan dalam perangkat lunak.

Prinsip – Prinsip Pengujian Perangkat Lunak :

  • Semua pengujian harus dapat ditelusuri sampai ke persyaratan pelanggan, maksudnya ini mencatat kesalahan yang menyebabkan program gagal.
  • Pengujian sebaiknya direncanakan lama sebelum pengujian itu mulai, maksudnya semua pengujian dapat direncanakan dan dirancang sebelum semua kode dijalankan.
  • Pengujian harus mulai “dari yang kecil” dan berkembang ke pengujian “yang besar”, Selagi pengujian berlangsung maju, pengujian mengubah fokus dalam usaha menemukan kesalahan pada cluster modul yang terintegrasi dan akhirnya pada sistem.
  • Untuk menjadi paling efektif, pengujian harus dilakukan oleh pihak ketiga yang independent.

Karakteristik yang membawa perangkat lunak dapat diuji :

  1. Operabilitas, maksudnya semakin baik dia bekerja, semakin efisien.
  2. Obsaikervabilitas, maksudnya apa yang kita lihat itu yang kita uji.
  3. Kontralabilitas, maksudnya semakin banyak yang bisa kita kontrol, semakin banyak pengujian yang dapat dioptimalkan.
  4. Dekomposabilitas, maksudnya dengan mengontrol ruang lingkup pengujian, kita semakin cepat mengisolasi masalah
  5. Kesederhanaan, maksudnya sedikit yang kita uji, semakin cepat kita mengujinya.
  6. Stabilitas, maksudnya semakin sedikit perubahan, semakin dikit gangguan pada pengujian.
  7. Kemampuan untuk dapat dipahami, maksudnya semakin banyak informasi yang kita pahami, semakin halus pengujian yang akan dilakukan.

Tujuan utama dari pengujian adalah menemukan error yang tidak terduga atau tersembunyi.

Ada dua proses pengujian yaitu :

  1. Konfigurasi perangkat lunak yang mencakup spesifikasi keperluan perangkat lunak, spesifikaasi perancangan, test case, dan program sumber.
  2. Konfigurasi uji coba yang mencakup rencana dan prosedur uji coba, test case dan hasil yang diharapkan.

Menurut Standar ANSI/IEEE 1059, Testing adalah proses menganalisa suatu entitas software untuk mendeteksi perbedaan antara kondisi yang ada dengan kondisi yang diinginkan (defects / errors / bugs) dan mengevaluasi fitur-fitur dari entitas software.

Testing adalah tahapan yang sangat penting didalam proses pembuatan program. Ada dua tahapan testing yang dilakukan :

  • Testing sebelum implementasi / pre implementation testing
  • Testing sesudah implementasi / post implementation testing

Pre Implementation Testing

Post Implementation Testing

Sebelum di implementasikan ide/ konsep harus di test

Testing pada sebuah program

Pre implementation dilakukan tidak boleh programmer atau tim testing, tetap oleh tim reviewer, terdiri dari project manager, klien atau pembangun sistem

Teknik testing biasanya :

White Box : logika, kondisi, perulangan atau blok statment, testingnya sebagian atau seluruh bagian program.

Black Box : testing dilakukan tanpa mengetahui struktur programnya. Program ditesting dengan cara di input ke dalam black box dan di cek apakah outputnya sesuai dengan perintah

 

Tipe-tipe testing :

  • Volume : Memfokuskan untuk input yang besar
  •  Usability : Mengukur reaksi user ( Skala 1 : 10 )
  • Performance : Mengukur kecepatan pada beberapa keadaan
  • Configurasi : Mengkonfigurasi untuk bermacam – macam hadware atau software
  • Compatibility : komplabiliti dengan aplikasi lain (mengukur watu adaptasi )
  • Relibiality / availability : mengukur ketahanan pada priode waku yang lama
  • Security
  • Resource Usage : Mengukur penggunaan RAM, ruang disk, dan lainnya
  • Installabiltiy : di install pada bermacam – macam keadaan (mengukur waktu install)
  • Recoverabilty : mengukur waktu untuk me-recover
  • Serviceability ; mengukur waktu service
  • Load / stress : untuk data extreame dan traffic

Tahap – Tahap Testing :

  • Unit testing, mengecek kohesi tunggal antara prosedur atau fungsi dengan prosedur atau fungsi yang lain.
  •  Integration testing adalah proses mengecek masing – masing unit apakah tetep bekerja dengan baik ketika diintergrasikan.
  • System testing, pengecekan terhadap apakah tetap bekerja dengan baik pada kondisi normal. Pengecek juga mengecek performance dari sistem. Pengecek juga mengecek apakah sistem akan memunculkan pesan yang benar jika terjadi error. Terakhir mengecek keamanaan dari sistem tersebut

Standar ANSI / IEEE Untuk test Dokumentasi

  •  Introduction
  • Test Plan : Item Dalam test, ruang lingkup, pendekatan, resource, jadwal, personel.
  •  Test design : item yang ditest, pendekatan, rencana detail
  • Test case : Kumpulan input dan event
  • Test Procedures : langkah – langkah untuk menyeting dan mengeksekusi test case
  • Test item transmittal report : item2 dalam test, lokasi fisik dari hasil orang yang bertanggung jawab untuk transmitting
  • Test Log : Kronologi Record , lokasi fisik dari hasil, nama penguji
  • Test Incident report : dokumentasi dari setiap event yang terjadi selama test, yang membutuhkan investigasi lebih lanjut
  • Test summary report : kesimpulan dari keseluruhan point point di atas. 

Testing Tools

  • Testing bervolume besar biasanya membutuhkan penggunaan tool-tool otomatis, Jacobson menyarankan bahwa 75% dari test lebih baik dilakukan secara otomatis dari pada dilakukan secara manual.
  • Kemampuan dari tools otomasi sistem :

-          Merekam aksi mouse dan keyboard untuk memungkinkan pengulangan pemutaran kembali

-          Jalankan test script secara berulang-ulang

-          Memungkinkan untuk merekam hasil test

-          Merekam hasil test

-          Merekam run time error

-          Membuat dan mengatur regression test

-          Menghasilkan test report

-          Menghasilkan test data

-          Merekam penggunaan memory

-          Mengatur / mengelola test case

-          Analisa keseluruhan

Daftar Pustaka :

Materi 2 Standar Uji Perangkat Lunak [ppt]. Dosen Pengampu: Agung Susilo Yuda Irawan, M.Kom, Universitas Singaperbangsa Karawang.

Materi 3 Standar Uji Perangkat Lunak [ppt]. Dosen Pengampu: Agung Susilo Yuda Irawan, M.Kom, Universitas Singaperbangsa Karawang.

Comments

Popular posts from this blog

Tugas Materi 7 : Finite State Automata & Non Finite State Automata

Tugas 5 : Latihan Penyederhanaan Tata Bahasa Bebas Konteks

PENYEDERHANAAN TATA BAHASA BEBAS KONTEKS