Poin pertama yang harus dibuat tentang rekayasa perangkat lunak berkaitan dengan ruang lingkup kegiatannya. Rekayasa perangkat lunak adalah pengelolaan seluruh proses pengembangan sistem komputer untuk memecahkan masalah.
Karena sistem perangkat lunak telah tumbuh lebih canggih dan kompleks, pengembang perangkat lunak telah mencari metode baru untuk pengembangannya. Rekayasa perangkat lunak adalah jawaban atas kebutuhan itu. Rekayasa perangkat lunak masih cepat berubah dan matang.
Biasanya, ketika seseorang diminta untuk menulis sebuah program, orang lain telah memberitahunya apa yang harus dilakukan program tersebut dan mengapa; programmer hanya peduli dengan cara menulisnya. Sebagai insinyur perangkat lunak, bagaimanapun, kita akan menjadi orang yang peduli dengan apa dan mengapa. Rekayasa perangkat lunak mencakup seluruh rangkaian kegiatan yang berkaitan dengan pemecahan masalah – mulai dari membantu klien mendefinisikan masalah atau peluang, hingga mengevaluasi kepuasan klien dengan solusi.
Mengembangkan sistem perangkat lunak mungkin memerlukan penulisan seluruh kumpulan program untuk memberi tahu mesin apa yang harus dilakukan, menulis prosedur untuk memberi tahu orang apa yang harus dilakukan, dan memberikan pelatihan sehingga orang mengerti bagaimana melakukannya. Kita mungkin perlu mengonversi data dari sistem lama sehingga dapat dijalankan oleh sistem baru, mempekerjakan orang dan memperoleh mesin untuk menjalankan program, dan mendapatkan ruang di mana mesin dan orang dapat melakukan pekerjaan mereka. Apa yang kami bangun adalah sistem dari banyak bagian yang bekerja bersama. Upaya seperti itu membutuhkan kesabaran dan fleksibilitas. Kami harus memperbaiki sistem ketika tidak melakukan apa yang kami harapkan, atau klien mungkin meminta kami untuk mengubah sistem karena dia ingin melakukan hal lain yang sebelumnya tidak dimaksudkan.
Pemrograman mungkin tidak lebih dari 20 persen dari total ruang lingkup rekayasa perangkat lunak, dan sebagian kecil dari upaya yang terlibat dengan pemrograman dapat diperkirakan menurun karena metode yang lebih baik digunakan untuk mengembangkan sistem perangkat lunak. Seiring berjalannya waktu, lebih banyak upaya kami akan dilakukan untuk mengelola keseluruhan proses dan lebih sedikit untuk pemrograman.
Pengujian dan Kualitas Perangkat Lunak di Dunia Nyata
Mengapa Pengujian Perangkat Lunak?
Untuk mengurangi risiko:
Ketidakpuasan pelanggan
Penurunan pangsa pasar
Biaya layanan yang lebih tinggi
Untuk memverifikasi
Untuk memastikan bahwa sistem beroperasi sesuai dengan persyaratan
pengujian “Pasif”; atribut positif dari sistem diuji
Untuk memvalidasi
Untuk memastikan bahwa perangkat lunak bebas dari cacat
pengujian “Aktif”; mari kita coba untuk merusak sistem!
QA dan Budaya Organisasi
Rata-rata, pengujian perangkat lunak yang tepat membutuhkan waktu sebanyak merancang dan membangun aplikasi perangkat lunak
Setelah Anda menulis dan mengkompilasi aplikasi perangkat lunak Anda, Anda tidak membuang kode sumbernya: itu adalah investasi Anda.
Namun, setelah pengujian, tidak banyak lingkungan pengujian, kasus pengujian, skrip pengujian, hasil pengujian, dan log Anda yang disimpan.
Jika pengujian perangkat lunak membutuhkan waktu sebanyak membangunnya, mengapa kita begitu ceroboh dalam berinvestasi dalam pengujian?
Memperkenalkan alat baru dan menerapkan teknik baru tidak akan mengubah proses.
Setiap orang yang terlibat dalam pengiriman perangkat lunak, termasuk pengguna bisnis, analis, perancang, pemrogram, penguji, manajer, eksekutif, personel sistem, dan orang penjamin kualitas, harus memahami bahwa Anda secara mendasar mengubah cara Anda membangun dan menguji perangkat lunak.
PERENCANAAN UJI
Rencana Tes Induk
Mendefinisikan strategi pengujian proyek secara keseluruhan
Mendefinisikan tujuan pengujian proyek
Estimasi usaha
Aturan 40%
Struktur Rincian Kerja (WBS)
Harus disiapkan sebagai bagian dari persyaratan sistem
Rencana Uji Rinci
Tergantung pada pengetahuan tentang sistem
Daftar Siklus Tes
Kriteria Masuk
Kriteria Keluar
Hasil yang diharapkan
Kasus Uji
Peran dan Tanggung Jawab
Persyaratan Sumber Daya
Orang-orang bisnis dan teknis
Perangkat Lunak untuk Lingkungan Pengujian dan Otomatisasi
Persyaratan pelaporan
Kontrol Perubahan Rencana Uji
Metodologi Pengembangan
Pengembangan Model V” –
Upaya untuk mengatasi masalah yang terkait dengan model air terjun dengan memastikan bahwa pengujian terjadi lebih awal dalam siklus hidup pengembangan
Perencanaan pengujian dilakukan bersamaan dengan dokumen desain.