Semua developer software pasti setuju bahwa software yang berkualitas tinggi adalah tujuan yang penting. Tetapi bagaimana kita mendefinisikan kualitas software?
Dalam arti yang paling umum, kualitas software dapat didefinisikan sebagai: Proses software yang efektif yang diterapkan dengan cara menciptakan produk yang bermanfaat yang memberikan nilai yang bisa diukur bagi si pembuat dan si pengguna.
- Proses software yang efektif: akan menentukan infrastruktur yang mendukung segala upaya dalam membangun produk software berkualitas tinggi. Aspek-aspek manajemen proses akan menciptakan "checks and balances" yang membantu menghindari kekacauan proyek — yang merupakan kontributor utama terhadap kualitas yang buruk. Praktik-praktik software engneering memungkinkan developer untuk menganalisis problem dan sekaligus merancang solusi yang solid — keduanya adalah hal penting untuk membangun software berkualitas tinggi. Akhirnya, berbagai aktivitas yang memayungi seperti manajemen perubahan (change management) dan berbagai review teknis memiliki banyak hal untuk dilakukan sehubungan dengan kualitas seperti halnya pada bagian lain dari software engineering.
- Produk yang bermanfaat: akan memberikan isi, fungsi, dan fitur yang diinginkan pengguna akhir, tetapi yang penting, produk tersebut akan menyajikan aset-aset tersebut dengan cara yang andal dan bebas kesalahan. Produk yang bermanfaat selalu memenuhi requirements yang telah secara eksplisit dinyatakan oleh para stakeholders. Selain itu, produk tersebut akan memenuhi serangkaian requirements yang implisit (mis.,kemudahan penggunaan) yang diharapkan dari semua software berkualitas tinggi.
- Dengan menambahkan nilai bagi si pembuat dan pengguna produk software: software berkualitas tinggi akan memberikan manfaat bagi organisasi pembuat software dan komunitas penggunanya. Organisasi pembuat software memperoleh nilai tambah karena software berkualitas tinggi membutuhkan lebih sedikit upaya untuk maintenance, lebih sedikit perbaikan bug, dan berkurangnya customer support. Ini memungkinkan para software engineer menghabiskan lebih banyak waktu untuk membuat aplikasi baru. Komunitas pengguna mendapatkan nilai tambah karena aplikasi memberikan kemampuan yang berguna dengan cara yang mempercepat beberapa proses bisnis. Hasil akhirnya adalah
- pendapatan produk software yang lebih besar,
- profitabilitas yang lebih baik ketika aplikasi mendukung proses bisnis, dan / atau
- peningkatan ketersediaan informasi yang sangat penting bagi bisnis.
--o0o--
Referensi:
Software Engineering - A Practitioner's Approach - Roger S. Pressman / Bruce R. Maxim
Comments
Post a Comment