bagaimana Merancang Pengujian Perangkat Lunak

MENENTUKAN DAN MENYUSUN INSTRUMEN
Instrumen penelitian adalah alat atau perangkat penelitian yang berungsi untuk membantu proses perolehan data bahan penelitian, mencatat atau merekam hasil perolehan, maupun untuk membantu proses pengolahan dan analisa data.

Pada era informasi, dengan telah memasyarakatnya Teknologi Informasi, sebagian besar atau hampir semua Instrumen penelitian selalu berbasis komputer, termasuk jaringan komunikasi, dan multimedia.
Barangkali dikarenakan mereka mampu menghasilkan bukti yang lebih akurat, lebih praktis, proses yang lebih cepat, operasi yang lebih mudah, dan tentu saja beaya yang lebih murah.

Berbeda dengan perangkat yang berfungsi sebagai obyek sumber data yang tinggal memilih dari perangkat-perangkat yang sudah tersedia, instrumen penelitian ini adalah perangkat yang harus dirancang dan didesain khusus sesuai dengan kebutuhan, sehingga unjuk kerjanya dapat disesuaikan dengan kebutuhan, misalnya : form isian untuk angket secara online, form pilihan untuk polling melalui sms, form ceklist untuk bahan wawancara di laptop, form ceklist untuk observasi di PDA, kamera digital atau video kamera untuk observasi, model matematik dan model grafik untuk simulasi, model matematik dan statistik untuk analisa data, dan sebagainya.

Yang tentu saja kesemuanya itu sangat tergantung pada bagaimana merakit perangkat keras, bagaimana merekayasa perangkat lunak, dan bagaimana memanfaatkan media komunikasi secara tepat.

Rekayasa Perangkat Lunak :
• adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek produksi perangkat lunak.
• mengadopsi pendekatan yang sistematis dan terorganisir terhadap pekerjaannya dan menggunakan tool yang sesuai serta teknik yang ditentukan berdasarkan masalah yang akan dipecahkan, kendala pengembangan dan sumber daya yang tersedia
Proses Perangkat Lunak
• Suatu proses model adalah suatu representasi abstrak suatu model yang menampilkan suatu deskripsi suatu proses dari beberapa perspektif tertentu,
• Merupakan aktifitas yang saling terkait (koheren) untuk menspesifikasikan, merancang, implementasi dan pengujian sistem perangkat lunak.
• Sekumpulan aktifitas yang memiliki tujuan untuk pengembangan ataupun evolusi perangkat lunak :
o Aktifitas generic dalam semua proses perangkat lunak adalah:
o Spesifikasi – apa yang harus dilakukan oleh perangkat lunak dan batasan/kendala pengembangannya
o Pengembangan – proses memproduksi sistem perangkat lunak
o Validasi – pengujian perangkat lunak terhadap keinginan penggunak
o Evolusi – perubahan perangkat lunak berdasarkan perubahan keinginan
Model Proses Perangkat Lunak
Suatu representasi proses perangkat lunak yang disederhanakan, dipresentasikan dar perspektif khusus, Contoh perspektif proses :
• Perspektif Alur-kerja (workflow) - barisan kegiatan
• Perspektif Alur Data (Data flow) – alur informasi
• Perspektif Peran/Aksi – siapa melakukan apa.

Biaya rekayasa perangkat lunak
• Sekitar 60% untuk biaya pengembangan, 40% biaya pengujian. Untuk perangkat lunak berbasis pengguna (custom), biaya evolusi biasanya melebihi biaya pengembangan.
• Biaya beragam tergantung pada tipe sistem yang akan dikembangkan dan kebutuhan sistem seperti unjuk kerja dan kehandalan sistem,
• Distribusi biaya bergantung pada model pengembangan yang digunakan.

Metode Rekayasa Perangkat Lunak
Pendekatan terstruktur pengembangan termasuk model sistem, notasi, perancangan dan petunjuk pemrosesan,
• Deskripsi Model: deskripsi pemodelan dengan grafik,
• Aturan: Batasan yang digunakan pada model sistem
Atribut Perangkat Lunak yang baik :
• seharusnya memberikan pengguna kebutuhan fungsionalitas dan unjuk kerja yang dapat di rawat, berguna, Maintanability (Dapat Dirawat)
• harus dapat memenuhi perubahan kebutuhan, Dependability
• harus dapat dipercaya, Efisien
• harus efisien dalam penggunaan resource, Usability
• harus dapat digunakan sesuai dengan yang direncanakan

Spesifikasi Perangkat Lunak

Proses untuk menentukan pelayanan (servis) apa yang dibutuhkan dan kendala-kendala pengoperasian sistem serta pengembangannya,
• Proses Rekayasa Kebutuhan
o Studi Kelayakan
o Analisis kebutuhan
o Spesifikasi Kebutuhan
o Validasi spesifikasi

• Perancangan dan Implementasi Perangkat Lunak
o Proses konversi sistem spesifikasi ke sistem yang dapat dieksekusi langsung
o Perancangan Perangkat Lunak
o Perancangan Struktur Perangkat Lunak
o Implementasi
o Translasi struktur ke dalam bentuk program
o Aktifitas perancangan dan implementasi dapat saling berinteraksi
• Aktifitas dalam Perancangan:
o Perancangan Arsitektur
o Spesifikasi Abstrak
o Perancangan Interface
o Perancangan Komponen
Proses Perancangan Perangkat Lunak

• Metode Perancangan
o Pendekatan sistematis untuk merancang perangkat lunak
o Perancangan biasanya didokumentasikan dengan model grafik
o Beberapa model yang dapat digunakan:
 Data Flow Model
 Model relasi atribut entitas
 Model terstruktur
 Model Object
• Pemrograman dan Debug
o Translasi perancangan ke dalam pemrograman dan menghilangkan error dari program
o Pemrograman adalah aktifitas personal – tidak terdapat model program generic
o Pemrogram melakukan beberapa program testing untuk menemukan fault dalam program dan menghilangkan fault tersebut dalam proses debug.
• Validasi Perangkat Lunak
o Verifikasi dan validasi bertujuan menunjukkan bahwa sistem sesuai dengan spesifikasinya dan yang diinginkan pengguna
o Melibatkan proses pengujian dan review sistem
o Pengujian sistem melibatkan eksekusi sistem dengan menggunakan kasus tes yang ditentukan dari spesifikasi data real yang akan diproses oleh sistem.
• Stage Pengujian Perangkat Lunak
o Unit Testing: Pengujian Komponen-komponen secara individu
o Modul Testing: Pengujian terhadap komponen yang saling berhubungan,
o Sub-system Testing: Pengujian terhadap module-module sistem yang saling berhubungan. Fokus pada pengujian interface.
o System Testing: Pengujian keseluruhan sistem,
o Acceptance Testing: Pengujian yang dilakukan oleh pengguna untuk melihat apakah sistem sudah dapat diterima.