Wednesday, 29 May 2013

Software testing – strategies



Software testing adalah proses formal yang dilakukan oleh tim pengujian khusus
di mana unit perangkat lunak, beberapa unit perangkat lunak yang terintegrasi atau seluruh
paket perangkat lunak diperiksa dengan menjalankan program di komputer. semua
tes terkait dilakukan sesuai dengan prosedur pengujian yang telah disetujui.
Software testing memiliki tujuan yang dimana terdapat tujuan langsung dan tujuan tidak langsung, tujuan langsung dari software testing yaitu :
  • Untuk mengidentifikasi dan mengungkapkan banyak kesalahan mungkin dalam perangkat lunak diuji.
  • Untuk membawa perangkat lunak yang diuji, setelah koreksi dari kesalahan diidentifikasi dan pengujian ulang, untuk tingkat yang dapat diterima kualitas.
  • Untuk melakukan tes yang diperlukan secara efisien dan efektif, dalam anggaran dan keterbatasan penjadwalan.
Sedangkan tujuan tidak langsung dari software testing adalah untuk menyusun catatan kesalahan perangkat lunak untuk digunakan dalam pencegahan kesalahan (dengan korektif dan tindakan pencegahan).

Software testing strategies
metode pengujian dapat bervariasi, berikut merupakan metode pengujian dasar yang sering kali diterapkan :
  •  Menguji perangkat lunak secara keseluruhan, setelah paket selesai atau dikenal sebagai "pengujian big bang"
  • Menguji perangkat lunak sedikit demi sedikit, dalam modul yang sudah selesai , kemudian untuk menguji kelompok diuji modul terintegrasi (tes integrasi). Proses ini berlanjut sampai semua modul paket telah diuji. Setelah fase ini selesai, Seluruh paket diuji secara keseluruhan (pengujian sistem). Strategi ini pengujian biasanya disebut "pengujuan Incremental". Pengujian incremental juga dilakukan menurut 2 dasar strategi yaitu top-down dan bottom up, dalam pengujian top-down, modul pertama diuji adalah modul utama, modul tingkat tertinggi dalam struktur perangkat lunak, modul terakhir menjadi diuji adalah modul level terendah sedangkan dalam pengujian bottom-up, urutan uji terbalik: modul level terendah diuji terlebih dahulu.
Software test classifications.
Klasifikasi menurut konsep pengujian- terdapat dua klasifikasi  yaitu dengan menggunakan blackbox testing dan whitebox testing .
Blackbox testing :
  •  Pengujian yang mengabaikan mekanisme internal sistem atau komponen dan hanya berfokus pada keluaran yang dihasilkan sebagai respon terhadap input yang dipilih dan kondisi eksekusi.
  • Pengujian dilakukan untuk mengevaluasi kepatuhan dari sistem atau komponen dengan persyaratan fungsional ditentukan.
White box testing:
Pengujian yang memperhitungkan mekanisme internal sistem atau komponen.

Keuntungan utama dari blacbox testing adalah:
Hal ini memungkinkan tester untuk melaksanakan hampir semua kelas tes.
Untuk kelas tes yang bisa dilakukan oleh whitwbox dan blackbox testing,
blackbox testing membutuhkan sumber daya jauh lebih sedikit.

Kelemahan utama blacbox testing adalah:
Hal ini memungkinkan untuk identifikasi kesalahan kebetulan sebagai benar.
Ini tidak memiliki kontrol cakupan line.
Ini tidak memiliki kemungkinan untuk menguji kualitas coding pekerjaan.

Keuntungan utama dari whitebox testing  adalah:

Ini memungkinkan pemeriksaan langsung jalur pengolahan dan algoritma.
Ini memberikan cakupan jalur tindak lanjut yang memberikan daftar baris kode yang memiliki
   belum dieksekusi.
Hal ini mampu pengujian kualitas coding pekerjaan.

Kelemahan utama whitebox testing  adalah:
Hal ini membutuhkan sumber daya yang luas, jauh di atas yang diperlukan untuk blackbox testing.
Ini tidak dapat menguji kinerja perangkat lunak dalam hal ketersediaan, keandalan,
    stres, dll.

Sumber : Daniel Galin, “Software Quality Assurance : From Theory to Implementation.” 2004.

No comments:

Post a Comment