SOFTWARE QUALITY Pendahuluan Teknik Informatika Univ. Pembangunan Nasional Veteran Jawa Timur
Apa itu Kualitas ? Basic definition: meeting the users’ needs ◦needs, not wants ◦true functional needs are often unknowable Pressman ◦Kesesuaian yang secara eksplisit menyatakan kebutuhan fungsional dan kinerja, pengembangan standar yang terdokumentasikan secara eksplisit, dan karakteristik implisit yang diharapkan dari semua perangkat lunak profesional yang dikembangkan IEEE ◦Tingkatan di mana sistem, komponen, atau proses memenuhi persyaratan yang ditentukan. Tingkatan di mana sistem, komponen, atau proses memenuhi kebutuhan atau harapan pelanggan atau pengguna 2
Apa itu Kualitas ? Crosby [1979] : ◦Asumsi yang keliru diawal adalah bahwa kualitas berarti kebaikan, atau mewah atau shininess ◦Kata "kualitas" sering digunakan untuk menunjukkan nilai relatif dari sesuatu dalam frase seperti "kualitas baik", "kualitas buruk" dan "kualitas hidup" - yang berarti hal yang berbeda untuk setiap orang ◦As follows quality must be defined as “conformance to requirements” if we are to manage it. ◦Akibatnya, ketidaksesuaian yang terdeteksi merupakan tidak adanya kualitas, masalah kualitas menjadi masalah ketidak sesuaian, sehingga kualitas menjadi dapat didefinisikan Deming [1988] : ◦Kesulitan dalam mendefinisikan kualitas adalah untuk menerjemahkan kebutuhan masa depan pengguna ke dalam karakteristik yang terukur, sehingga produk dapat dirancang dan ternyata memberikan kepuasan pada harga dimana user akan membayar 3
Apa itu Kualitas ? Feigenbaum [1983] : ◦Kualitas merupakan penetapan pelanggan, bukan penetapan seorang insinyur, bukan penetapan pemasaran, ataupun penetapan manajemen umum. ◦Hal ini didasarkan pada pengalaman nyata pada pelanggan dengan produk atau jasa, diukur menurut persyaratannya - dinyatakan atau tidak dinyatakan, sadar atau hanya merasakan, secara teknis operasional atau sepenuhnya subyektif - dan selalu mewakili target yang bergerak dalam pasar yang kompetitif Juran [1988] : ◦1) Kualitas terdiri dari fitur-fitur produk yang memenuhi kebutuhan pelanggan dan dengan demikian memberikan kepuasan produk. ◦2) Kualitas meliputi bebas dari kelemahan 4
Hierarki kebutuhan software Melakukan tugas-tugas yang diperlukan. Memenuhi persyaratan kinerja. Dapat digunakan dan nyaman. Harus ekonomis dan tepat waktu. Harus dapat diandalkan dan dapat dipercaya. 5
Quality Focus -1 Untuk dapat digunakan, software harus ◦Dapat diinstal dengan cepat dan mudah ◦Bekerja secara konsisten (run consistently) ◦Dapat menangani kasus pada kondisi normal dan tidak normal ◦Tidak melakukan sesuatu yang merusak atau tidak diperlukan ◦Secara esensial bebas kesalahan (bug-free) Cacat tidak penting bagi user, sepanjang cacat tersebut tidak menimbulkan: ◦Mempengaruhi operasional ◦Menyebabkan ketidak nyamanan ◦Biaya waktu atau uang ◦Menyebabkan hilangnya kepercayaan pada hasil software 6
Quality Focus -2 Cacat pada produk perangkat lunak harus dikelola sebelum masalah kualitas yang lebih penting dapat diatasi. Rendah cacat merupakan prasyarat penting untuk proses kualitas perangkat lunak. Karena konten rendah cacat terbaik dapat dicapai dimana cacat terinjeksi, teknisi harus: ◦menghilangkan cacat sendiri ◦menentukan penyebab cacat tersebut ◦belajar untuk mencegah cacat tersebut 7
The Economics of Quality Software satu-satunya teknologi modern yang mengandalkan pada pengujian untuk mengelola kualitas. Dengan praktek Kualitas umum, kelompok perangkat lunak biasanya ◦menggunakan 50% + dari jadwal untuk tes ◦meluangkan lebih dari setengah sumber dayanya untuk memperbaiki cacat ◦tidak bisa memprediksi kapan proyek akan selesai ◦memberikan produk-produk berkualitas buruk dan over-cost Untuk mengelola biaya dan jadwal, Anda juga harus mengelola kualitas. Untuk mendapatkan produk berkualitas keluar dari tes, Anda harus menempatkan produk yang berkualitas ke dalam tes. 8
Trade-off of Quality for Other Factors Kualitas bersaing dengan permintaan lain ◦Efek jangka pendek vs jangka panjang Time Cost Quality 9
Software Quality Attributes Portability Reliability Efficiency Usability Testability Understandability Modifiability (Boehm, 1978) 10
ANY QUESTION ? TO BE CONTINUE… 11