Wednesday, March 13, 2013

Kualitas Perangkat Lunak



·       Definisi

            Berbagai macam definisi kualitas perangkat lunak (software quality) tergantung dari mana pemakai (user) memandang dan melihat sesuai dengan kebutuhannya. Menurut Crosby (1979:34) mendefinisikan kualitas atau mutu sebagai “conformance to requirements”. Selama seseorang dapat berdebat tentangperbedaan antara kebutuhan, keinginan dan kemauannya, definisi kualitas harusmempertimbangkan perspektif pemakai tersebut. Kunci utama pertanyaan untuk sebuah definisi kualitas adalah siapa pemakainya, apa yang penting bagi mereka dan bagaimana prioritasnya tentang metode apa yang dibangun, dibungkus untuk mendukung sebuah produk?
 
            Untuk menjawab pertanyaan tersebut, kita harus mengenali herarki dari kualitas perangkat lunak. Pertama, suatu produk perangkat lunak harusmenyediakan fungsi suatu jenis dan waktu yang sama ketika pemakai memerlukannya. Kedua, produk harus berjalan. Jika produk memiliki kecacatan maka produk tersebut tentunya tidak ada konsistensi kelayakan. Para pemakai tidak akan menggunakannya dengan mengabaikan atribut-atribut yang menyertainya. Hal tersebut tidak berarti bahwa kecacatan selalu menjadi prioritas yang paling utama dalam menolak suatu produk tetapi akan menjadi sangat penting dalam melihat layak atau tidaknya. Jika tingkatan cacat minimum belum dicapai maka berbagai hal tidak ada yang perlu dipertimbangkan.

Di luar ambang kualitas tersebut, bagaimanapun juga sesuatu yang berhubungan dengan pertimbangan dan penilaian cacat suatu produk perangkat lunak seperti halnya kegunaan, kecocokan, kemampuan, dan lainnya tergantung pada pemakai tersebut memandang dan menilainya termasuk didalamnya aplikasinya dan lingkungan software yang menyertainya (Humphrey, 1994). The Institute of Electrical and Electronic Engineers (IEEE) mendefinisikan kualitas sebagai “the degree to which a system, component or process meets customer or user needs or expectations” (IEEE90). Definisi dari IEEE digunakan dalam konteks suatu sistem perangkat lunak secara rinci.

kualitas adalah suatu atribut dari sistem yang berjalan yang sangat erat kaitannya dengan resiko. Semakin tinggi resiko yang didapatkan dan kemudian dikuranginya maka akan tinggi kualitas yang dihasilkannya. Dengan cara yang sama, lebih cepat resiko dikenali dan dikurangi, akan lebih tinggi pula kualitasnya. Hasil dari sebuah aktivitas yang terencana, bukan kejadian yang spontan berbanding terbalik dengan delivery date 85% kesalahan ada pada proses,15% pada pada SDM. Menurut definisi dalam Steve McConnell’s Code Complete membagi perangkat lunak ke dalam dua hal yaitu: : internal dan external quality
characteristics. Karakteristik kualitas eksternal merupakan bagian-bagian dari suatu produk yang berhubungan dengan para pemakainya, sedangkan karakteristik kualitas internal tidak secara langsung berhubungan dengan pemakai. 

Software Quality didefinisikan sebagai: kesesuaian yang diharapkan pada semua
software yang dibangun dalam hal fungsi software yang diutamakan dan unjuk
kerja software, standar pembangunan software yang terdokumentasi dan
karakteristik yang ditunjukkan oleh software. Definisi ini menekankan pada 3 hal
yaitu:
  1. kebutuhan software adalah fondasi ukuran kualitas software, jika software    tidak sesuai dengan kebutuhan yang ditentukan maka kualitaspun kurang
  2.  jika menggunakan suatu standar untuk pembangunan software maka jika software tidak memenuhi standar tersebut maka dianggap kurang berkualitas
  3. seringkali ada kualitas yang secara langsung diutarakan (tersirat) seperti kemudahan penggunaan dan pemeliharaan yang baik. Kualitas software dipertanyakan jika tidak memenuhi kebutuhan ini.
Sedangkan definisi kualitas menurut The International Standards Organization (ISO) mendefinisikannya sebagai: “the totality of features and characteristics of a product or service that bear on its ability to satisfy specified or implied needs [11].” ISO menyoroti pada fitur-fitur dan karakteristik dari produk atau layanan dalam kemampuannya memenuhi kebutuhan yang ditentukan. menyediakan model yang berbasikan obyek dalam 3 konteks dasar yaitu: quality, requirements dan characteristics. Standar dapat membantu mendefinisikan suatu terminologi, seperti halnya kata “kualitas” (quality). 

Meskipun demikian, rata-rata suatu kata tertentu tidak menggunakan standar adalah sering sesuai dengan arti yang dimaksud. Hal ini juga benar untuk definisi ISO 8204 untuk mutu: “Keseluruhan karakteristik dari suatu kesatuan dalam kemampuannya untuk memenuhi dan memuaskan pemakai yang dinyatakan dan disiratkan dalam suatu kebutuhan.“ Makna tersebut artinya, diperlukan suatu kualitas produk perangkat lunak yang mempunyai karakteristik tertentu yang dihubungkan dengan kebutuhan pemakai dan membuat puas penggunanya. 

Kualitas perangkat lunak adalah keberadaan karakteristik dari suatu produk yang dijabarkan dalam kebutuhannya, artinya kita harus melihat terlebih dahulu karakteristik-karakteristik apa yang berhubungan atau tidak dengan kebutuhankebutuhan yang diiinginkan oleh pemakai. Karakteristik yang dimaksud yaitu contra-productive characteristics dan neutral characteristic. Mengetahui karakteristik tersebut diperlukan untuk mengurangi kontra produktif dari kualitas perangkat lunak yang dimaksud dan relevan atau tidak perangkat lunak tersebut untuk kebutuhan suatu organisasi. Tidak hanya adanya keberadaan karakteristik tersebut tetapi juga tidak adanya kontra produktif dari suatu karakteristik dari suatu perangkat lunak yang diinginkan (Petrasch, 1999: 2). 

Kebutuhan dan karakteristik berperan penting dalam mendefinisikan suatu kualitas. Oleh karena itu, suatu model yang berbasiskan obyek bermanfaat dalam pemahaman yang lebih baik untuk masalah ini. Keberadaan hubungan antara kebutuhan dan karakteristik menjadikan dimungkinkannnta statemen yang jelas tentang kualitas suatu produk.

·       Pengukuran Kualitas Perangkat Lunak
Sistem dari kualitas perangkat lunak terintegrasi dalam tiga disiplin aplikasi yaitu: pemodelan proses pengembangan (process), pemodelan pengukuran produk (product), dan pemodelan manajemen dan interaksi manusia (human). Pemahaman suatu disiplin melibatkan pembangunan model, pengujian model dan pelajaran untuk dipahami dalam aplikasi yang nyata. Pengintegrasian dari semua unsur-unsur system kualitas memerlukan suatu system permodelan,yaitu sebagai berikut :

1.ENTRY
 Kebijakan untuk
   memanage mutu proyek yang telah dijabarkan
 Kecukupan sumber daya &  pembiayaan
 Pelatihan untuk individu dalam menerapkan atau mendukung aktifitas SQM
 Training untuk peserta
 

2. TASK
 Pengembangan rencana proyek SQM
 Pelaksanaan aktifitas dalam rencana SQM
 Tujuan kualitas proyek yang dijabarkan,memonitor dan meninjau kembali sepanjang life cycle.
 Tujuan kualitas dialokasikan sewajarnya untuk sub kontraktor


3.VERIVICATION
 Peninjauan ulang denganmanajemen senior
 Peninjauan ulang dengan manajer proyek
 Review / audit oleh SQA
 Pengukuran status aktifitas SQM


4.EXIT
 Aktifitas SQM terencanakan
 Tujuan kualitas pengukuran dan prioritasnya terdefinisikan
 Kemajuan kearah tujuan kualitas terukur dan teratur unsur-unsurnya 


Penunjukan beberapa kelemahan dari proses permodelan tersebut yaitu, kompleksitas proses pengembangan dan dokumentasinya serta perubahan dokumentasi selama pemeliharaan adalah permasalahan penting dalam peningkatan kualitas. Dokumentasi yang dievaluasi sering sangat banyak dan kompleks. Oleh karena itu, hubungan kompleksitas antara produk data teknis, dokumentasi perencanaan, pengujian kebutuhan dan tahapan unsur-unsur life cycle pengembangan yang berbeda mengakibatkan dokumentasi ini sulit untuk dievaluasi dalam meyakinkan semua aktivitas telah cukup dikerjakan. Dokumentasi menyediakan komunikasi antar semua kelompok terkait dengan pengembangannya dan kendali proses proyek tersebut.

No comments:

Post a Comment