STRATEGI PENGUJIAN SISTEM PERANGKAT LUNAK
Testing merupakan teknik yang digunakan untuk memastikan bahwa solusi yang diberikan dapat memecahkan permasalahan. Tingkat kepentingan dari permasalahan menentukan banyaknya usaha yang dibutuhkan untuk mem-validasi solusi (melakukan testing)
Resiko Strategis Sistem Komputer Resiko tidak dapat dihilangkan dan akan selalu membawa kemungkinan kerugian/kerusakan. Pengembangan dan instalasi sistem komputer akan membawa resiko ke dalam organisasi. Resiko tersebut perlu dicari pada proses pengembangan untuk mengurangi kemungkinan kerugian/kerusakan. Salah satu metode yg efektif adalah melakukan Testing.
Jenis-jenis Resiko Strategis yang umumnya terdapat pada pengembangan dan instalasi sistem komputer dapat berupa: Akan dihasilkannya produk yang salah/tidak tepat Akan diterimanya transaksi yg tidak sah oleh sistem Hilangnya integritas file komputer Proses tidak dapat direkonstruksi Hilangnya kesinambungan pemrosesan Servis kepada user menurun Kurangnya keamanan sistem Pemrosesan tidak sesuai dengan kebijakan pemerintah Hasil sistem tidak dapat diandalkan Sistem sulit digunakan dsb
Setiap resiko tersebut dapat mepengaruhi fungsi dari sistem Maka diperlukan pendekatan testing yang efektif untuk mengidentifikasi dan mengevaluasi resiko yang ada. Konsep dari tiap resiko menentukan berapa banyak atau tipe testing seperti apa yang diperlukan.
Nilai Ekonomis Pengujian “Too little testing is a crime – too much testing is a sin” Testing yg terlalu sedikit (Undertesting) akan langsung berakibat adanya cacat pada sistem Testing yg berlebihan (Overtesting) berarti terbuangnya sumber-sumber daya yang berharga untuk hal-hal yang tidak perlu
Nilai Ekonomis Pengujian Number of defects Optimum Test Cost of Testing Under Over Extent Of Testing Quantity Kurva Efektivitas Biaya Testing
Nilai Ekonomis Pengujian Masalah-masalah yang biasanya terdapat dalam testing berasal dari: Kegagalan dalam menentukan tujuan testing Melakukan Testing pada tahapan yang salah dalam Siklus Hidup Penggunaan teknik testing yang tidak efektif
Kuantifikasi Biaya Menghilangkan Defect Suatu lembaga Quality Assurance di Amerika Serikat, melaporkan hasil survei-nya, bahwa 60 defect terjadi pada setiap 1000 kode statement, dan 2/3 defect terjadi pada fase requirement hingga desain pada pengembangan sistem. Klasifikasi Biaya Defect: 1. Defect yang terjadi selama fase requirement hingga desain, maka biaya pengujian dianggap sama dengan biaya pengembangan (faktor 1) 2. Defect yang terjadi selama fase pengujian sistem maka biaya dikali faktor 10 3. Defect yang terjadi setelah sistem berjalan maka biaya dikalikan faktor 100
Masalah Umum Komputer Masalah pada sistem komputer dapat dikategorikan sebagai: Software Problems Data Problems
Software Problems Masalah-masalah yang biasanya menyebabkan pengambilan keputusan yang buruk melalui aplikasi pembuatan keputusan secara otomatis. Software Problems meliputi: Perancangan software yg tidak lengkap atau kesalahan kriteria pembuatan keputusan Kegagalan dalam memprogram software seperti yang diinginkan customer/user atau designer. Tidak adanya fungsi pengeditan dan pemeriksaan untuk menentukan kelengkapan data output
Data Problems Data input adalah masalah yg sering terjadi karena merupakan bagian penting dalam proses pembuatan keputusan. Masalah Data umumnya berupa: Ketidaklengkapan data yg ada pada aplikasi Penggunaan data yang tidak benar dalam pemrosesan aplikasi Penggunaan data yg sudah lama dalam pemrosesan aplikasi
Isu Organisasional Pengujian Testing bukan hanya isu/permasalahan SI, tetapi sudah merupakan isu bagi organisasi. Department SI tidak dapat memastikan bahwa sistem dapat memenuhi kebutuhan organisasi Testing yg efektif harus dilakukan melalui kerjasama dari para profesional SI dan user atau tim testing (QC, QA, etc.)
Isu Organisasional Pengujian Perkembangan teknologi berikut ini menyebabkan organisasi harus memperbaharui pendekatan testing mereka: Integrasi System Chain (rantai sistem) Efek Domino (satu kondisi bermasalah menyebabkan timbul error lain dalam waktu singkat) Kepercayaan pada bukti/transaksi elektronik Multiple Users
Strategi Pengujian Secara umum ada 2 komponen strategi testing : Test Factor : hal-hal yang harus dipastikan ada pada sistem/aplikasi Test Phase : Tahapan-tahapan pengembangan sistem Maka Pengujian dapat kita pusatkan pada kedua komponen tersebut.
Strategi Pengujian Test Factors: Ketepatan/correctness Otorisasi Kesatuan File Kejelasan Audit (penelusuran) Keberlangsungan proses Tingkatan Servis Pengendalian Akses Kesesuaian Reliability Kemudahan penggunaan Kemudahan pemeliharaan Portable Saling berangkaian (Coupling) Performance Kemudahan pengoperasian
Pendekatan Terstruktur Pengujian Fase Siklus Hidup Kegiatan Verifikasi Requirements Menentukan strategi pengujian Menentukan kecukupan dari requierement Menentukan kondisi pengujian fungsional Menentukan konsistensi desain dgn requirements Design Menentukan konsistensi desain berdasarkan requirement Menentukan kecukupan desain Menentukan kondisi pengujian fungsional dan structural Coding/Program Menentukan konsistensi desain Menentukan kecukupan dari implementasi Menentukan kondisi pengujian fungsional dan structural untuk program/unit Testing Menentukan kecukupan dari rencana pengujian Pengujian system aplikasi Installation Menempatkan pengujian system ke dalam system system keseluruhan. Maintenance Melakukan modifikasi dan melakukan pengujian ulang