Analisis Kualitas Perangkat Lunak

22 2 Class Diagram Class Diagram merupakan diagram yang mengambarkan struktur sistem dari segi pendefinisian kelas-kelas yang akan dibuat untuk membangun sistem Sugiarti, 2013, p. 57. 3 Sequence Diagram Sequence Diagram adalah pemodelan yang menggambarkan kelakukan objek pada use case dengan mendeskripsikan waktu hidup objek dan message yang dikirimkan dan diterima antar objek Rosa A. S. Shalahuddin, 2011, p. 137. Untuk bisa menggambar sequence diagram harus diketahui objek-obek yang terlibat dalam sebuah use case. Sedangkan menurut Pressman 2012, p. 237 sequence diagram adalah pemodelan yang digunakan untuk memperlihatkan bagaimana event-event yang terjadi bisa mengakiatkan transisi dari suatu objek ke objek lainnya. 4 Activity Diagram Activity diagram adalah pemodelan yang menggambarkan workflow aliran kerja atau aktivitas dari sebuah sistem atau proses bisnis Rosa A. S. Shalahuddin, 2011, p. 134. Menurut Pressman 2012, p. 195 activity diagram adalah diagram UML yang melengkapi use case dengan memberikan representasi grafik dan aliran-aliran interaksi di dalam suatu skenario.

7. Analisis Kualitas Perangkat Lunak

Menurut Crosby kualitas perangkat lunak adalah bahwa produk yang dikembangkan harus sesuai dengan kebutuhan dan spesifikasi penggunanya Sommerville, 2003, p. 174. Rosa A. S Shalahuddin 2011, p. 209 menyatakan perangkat lunak perlu dijaga kualitasnya, dimana kualitas bergantung pada 23 kepuasan pelanggan. Perangkat lunak perlu dijaga agar dapat bertahan hidup di dunia bisnis perangkat lunak, dapat bersaing dengan perangkat lunak lain, dan mempertahankan pelanggan. Sedangkan menurut Pressman 2012, p. 485, kualitas perangkat lunak adalah suatu proses perangkat lunak yang efektif diterapkan dan mampu menyediakan produk yang bermanfaat bagi penggunanya. Perangkat lunak yang bermanfaat memiliki tiga poin penting yaitu efektivitas proses perangkat lunak, produk yang mampu mengirimkan konten serta fungsi dan mampu memberi nilai lebih bagi pengguna perangkat lunak. Ada berbagai macam standar pengujian di antaranya McCall, Boehm, FURPS, Dromey, Bertoa, ISO 9126, dan ISO 25010 Miguel, Mauricio, Rodriguez, 2014. Dari berbagai macam standar pengujian tersebut, ISO 9126 dan ISO 25010 merupakan standar internasional dalam pengujian perangkat lunak. Menurut Prof. Azuma dalam konferensi software testing di SOFTEC Malaysia menyebutkan bahwa Standar ISO 25010 dikembangkan untuk menggantikan ISO 9126 berdasarkan berkembangan ICT Information and Communications Technology seperti perkembangan mikroprosesor, perkembangan memori, perkembangan tampilan dan perkembangan media penyimpanan Veenendaal, 2014, p. 3. Maka dari itu, penelitian ini menggunakan standar ISO 25010 sebagai standar dalam pengujian perangkat lunak. ISO 25010 memiliki 8 karakteristik yaitu functional suitability, reliability, performance efficiency, usability, security, compatibility, maintainability, dan portability. Delapan karakter tersebut dijabarkan secara lebih rinci pada Gambar 6. 24 Gambar 6. Model Kualiatas ISO 25010 Menurut Olsina dan rekan-rekan kerjanya Pressman, 2012, p. 456 standar kualitas aplikasi web dinilai dari lima aspek yaitu fungsionalitas, kemudahan penggunaan, keandalan, efisiensi dan kemudahan pemeliharaan. Penjabaran dari lima aspek tersebut dapat dilihat pada Tabel 1. Tabel 1. Standar Kualitas Aplikasi Web Menurut Olsina Pressman, 2012, p. 456 No Aspek Keterangan 1 Fungsionalitas Kemampuan pencarian dan penerimaan Fitur-fitur navigasi dan perambahan Fitur-fitur aplikasi yang berhubungan dengan ranah 2 Kemudahan penggunaan Kemudahan pemahaman situs global Umpan balik dari pengguna dan fitur-fitur bantuan Antarmuka pengguna dan fitur-fitur estetika Fitur-fitur khusus 3 Keandalan Pembetulan pemrosesan tautan Pemulihan dari kesalahan Validasi dan pemulihan asupan pengguna 4 Efisiensi Kinerja waktu tanggap aplikasi web Kecepatan pembentukan halaman-halaman Kecepatan penggambaran grafik-grafik 5 Kemudahan pemeliharaan Kemudahan untuk melakukan koreksi Kemampuan aplikasi web untuk beradaptasi Kemampuan aplikasi web untuk dikembangkan 25 Berdasarkan standar kualitas web menurut Olsina dkk dalam Pressman 2012, p. 456 maka peneliti hanya akan mengambil 5 karakteristik ISO 25010 yaitu functional suitability, usability, reliability, performance efficiency, dan maintainability. Tabel 2 menunjukkan perbandingan ISO 25010 dengan standar kualitas web menurut Olsina dkk dalam Pressman 2012, p. 456. Tabel 2. Perbandingan ISO 25010 dengan Standar Kualitas Web Olsina dkk Olsina ISO 25010 Fungsionalitas Functional suitability Kemudahan penggunaan Usability Keandalan Reliability Efisiensi Performance efficiency Kemudahan pemeliharaan Maintainability Berikut penjelasan terkait 5 karakterisitk yang akan digunakan untuk menguji kualitas sistem informasi pantauan pembentukan karakter: a. Functional suitability Karakteristik sejauh mana suatu produk atau sistem yang memenuhi kebutuhan ketika digunakan pada kondisi tertentu. Karakteristik ini dibagi menjadi beberapa subkarakteristik yaitu: 1 Functional completeness, sejauh mana fungsi yang disediakan mencakup semua tugas dan tujuan pengguna secara spesifik. 2 Functional correctness, sejuah mana produk atau sistem menyediakan hasil yang benar sesuai kebutuhan. 3 Functional appropriateness, sejauh mana fungsi yang disediakan mampu memfasilitasi penyelesaian tugas dan tujuan tertentu. Pengujian functional suitability menggunakan metode black-box testing. Menurut Pressman Pressman, 2012, p. 597, black-box testing adalah pengujian 26 yang berfokus pada persyaratan fungsional perangkat lunak. Functional suitability diuji oleh ahli pengembang perangkat lunak ataupun dari pihak qulity control, dengan menggunakan test case. Test case adalah seperangkat kondisi atau aturan yang dikembangkan untuk menemukan titik-titik kegagalan dalam pengembangan perangkat lunak Bala Chhillar, 2016. Skala yang akan digunakan dalam pengujian functional suitability yaitu skala Guttman. Menurut Sudaryono 2015, p. 64, skala Guttman adalah skala yang digunakan untuk memberikan jawaban yang bersifat jelas dan konsisten misalnya yakin-tidak yakin, ya-tidak, benar-salah. Mekanisme pengujian ini dianalisis dengan menghitung jumlah fitur-fitur fungsional yang ada pada aplikasi kemudian dibandingkan dengan fitur-fitur fungsional yang berjalan. b. Usability Karakteristik sejuah mana sebuah produk atau sistem dapat digunakan oleh pengguna tertentu untuk mencapai tujuan dengan efektif, efisien, dan kepuasan tertentu dalam konteks pengguna. Karakteristik ini terbagi menjadi beberapa subkarakteristik yakni sebagai berikut: 1 Appropriariateness recognizability, karakter sejauh mana pengguna dapat mengetahui apakah sistem atau produk sesuai kebutuhan mereka. 2 Learnability, karakteristik sejauh mana produk atau sistem dapat digunakan oleh pengguna untuk mencapai tujuan tertentu yang belajar menggunakan sistem atau produk dengan efisien, efekif, bebas dari resiko, dan mendapatkan kepuasan dalam konteks tertentu. 3 Operability, karakteristik sejauh mana produk atau sistem mudah dioperasikan. 27 4 User error protection, karakteristik sejauh mana produk atau sistem melindungi pengguna terhadap kesalahan penggunaan. 5 User interface aesthetics, sejauh mana antarmuka pengguna dari produk atau sistem memungkinkan interaksi yang menyenangkan dan memuaskan pengguna. 6 Accessbility, sejauh mana produk atau sistem dapat digunakan oleh semua kalangan untuk mencapai tujuan tertentu sesuai konteks penggunaan. Menurut Perlman 2015, pengujian usability dapat dilakukan dengan menggunakan kuesioner. Terdapat beberapa macam kuesioner di antaranya Questionnaire of User Interface Satisfaction QUIS, Perceived Usefulness and Ease of Use PUEA, Nielsen’s Attributes of Usability NAU, After Scenario Questionnaire ASQ, dan USE Questionnaire USE. Pada penelitian ini pengujian usability menggunakan USE Questionnaire yang dikembangkan oleh Arnold M. Lund. USE merupakan kuesioner yang terdiri dari tiga dimensi yaitu usefulness, satifaction dan ease of use yang terdiri dari 30 pertanyaan Lund, 2001. Skala yang akan digunakan yaitu skala likert. Rentang skala likert dimulai dari sangat tidak setuju sampai sangat setuju. Menurut Sudaryono 2015, p. 62, skala likert digunakan untuk mengukur sikap, pendapat, dan persepsi seseorang atau sekelompok orang tentang kejadian atau gejala sosial yang telah ditetapkan secara spesifik oleh peneliti. c. Reliability Karakteristik sejauh mana sistem, produk, atau komponen melakukan fungsi tertentu di bawah kondisi tertentu dalam jangka waktu yang ditetapkan. Karakteristik ini terbagi menjadi beberapa subkarakteristik, yaitu: 28 1 Maturity, sejauh mana produk atau sistem mampu memenuhi kebutuhan secara handal di bawah keadaan normal. 2 Availability, sejauh mana produk atau sistem siap beroperasi dan dapat diakses saat perlu digunakan. 3 Fault tolerence, sejauh mana produk atau sistem tetap berjalan sebagaimana yang dimaksud meskipun terjadi kesalahan pada perangkat keras atau perangkat lunak. 4 Recoverability, sejauh mana produk atau sistem mampu dapat memulihkan data yang terkena dampak secara langsung dan menata ulang kondisi sistem seperti yang dinginkan ketika terjadi gangguan. Menurut Losavio,et.al 2003, aspek maturity merupakan aspek yang berpengaruh dan sebaiknya dilakukan dalam uji reliability. Pengujian reliability dapat menggunakan stress testing yaitu dengan menguji skenario test case berdasarkan user yang mengakses bersamaan dalam waktu tertentu. Perhitungan reliability dihitung dengan jumlah fungsi yang berjalan serta jumlah kegagalan yang dieksekusi. Menurut Pradhan 2013 untuk melakukan stress testing dapat menggunakan software Web Application Load, Stress, and Performance Testing WAPT. WAPT merupakan perangkat lunak yang mampu melakukan load dan stress testing yang memungkinkan pengguna dapat menganalisis kinerja web dengan mudah SoftLogica, 2016. d. Performance efficiency Tingkat kinerja relatif terhadap sumber daya yang digunakan dalam kondisi yang ditetapkan. Karakteristik ini terbagi menjadi beberapa subkarakteristik yaitu: 29 1 Time behaviour, sejuah mana respon dan pengolahan waktu produk atau sistem dapat memenuhi persyaratan ketika menjalankan fungsi. 2 Resource utilization, sejauh mana jumlah dan jenis sumber daya yang digunakan oleh produk atau sistem dapat memenuhi persyaratan ketika menjalankan fungsi. 3 Capacity, sejauh mana batas maksimum parameter produk atau sistem dapat memenuhi persyaratan. Menurut Janani Krishnamoorthy 2015 pengujian performance efficiency dapat dilakukan dengan load testing. Tujuan dari load testing adalah untuk menentukan bagaimana aplikasi web dan lingkungan sisi server akan menanggapi berbagai kondisi pemuatan Pressman, 2012, p. 657. Salah satu software untuk melakukan load testing yaitu GTMetrix AlBalushi, Ali, Ashrafi, Albalushi, 2016. GTMetrix merupakan perangkat lunak yang dapat digunakan secara bebas untuk menganalisis speed performance sebuah halaman website . Hasilnya berupa waktu memuat halaman, ukuran halaman serta jumlah request dan kecepatan halaman serta skor Yslow. Yslow merupakan alat ukur perangkat lunak yang dikembangkan oleh Yahoo Network untuk mengukur kinerja website. e. Maintainability Tingkat efektivitas dan efisiensi pada suatu produk atau sistem untuk dapat dimodifikasi oleh pengembang. Karakteristik ini terbagi menjadi beberapa subkarakteristik yaitu: 1 Modularity, sejauh mana sistem terdiri dari komponen terpisah sehingga perubahan atau modifikasi pada salah satu komponen tersebut memiliki dampak yang kecil terhadap komponen yang lain. 30 2 Reusability, sejauh mana aset dapat digunakan oleh satu sistem atau digunakan untuk membangun aset lain. 3 Analyzability, tingkat efektivitas dan efisiensi untuk mengkaji dampak perubahan pada satu atau lebih bagian-bagian produk atau sistem, untuk mendiagnosis kekurangan atau penyebab kegagalan produk, untuk mengidentifikasi bagian yang akan diubah. 4 Modifiability, sejauh mana produk atau sistem dapat dimodifikasi secara efektif dan efisien tanpa menurunkan kualitas produk yang ada. 5 Testability, tingkat efektivitas dan efisiensi untuk membentuk kriteria uji dari produk, sistem atau komponen dan uji dapat dilakukan untuk menenukan apakah kriteria tersebut terpenuhi. Menurut Najm 2014, untuk mengukur tingkat maintainability suatu sistem menggunakan Maintainability Index MI. MI merupakan kombinasi software metrics yang bernama McCabe’s Cyclomatic Complexity CC, Halstead’s Volume V, dan Lines of Code LOC yang berpengaruh terhadap source code suatu software mudah untuk dimodifikasi atau dilakukan perbaikan Ganpati, Kalia, Singh, 2012 . MI dihitung dari rumus yang terdiri dari CC, V, dan LOC. Rumus MI adalah sebagai berikut: MI = 171 – 5,2 InaveV – 0,23 aveVg – 16,2 InaveLOC Keterangan: MI = maintability index aveV = rata-rata Halstead Volume aveVg = rata-rata Cyclomatic Complexity per modul aveLOC = rata-rata Lines of Code per modul 31 Menurut Lepine 2015, untuk menghitung Maintainability Index dapat dibantu menggunakan software PHPmetrics. PHPmetrics merupakan perangkat lunak yang digunakan untuk menganalisis perangkat lunak pada karakteristik maintainability yang menggunakan bahasa PHP. PHPmetrics akan melakukan perhitungan sesuai dengan rumus pada karakteristik maintainability dan akan menampilkan hasil akhir berupa MI dan kemudian dibandingkan dengan kriteria yang tersaji pada Tabel 3. Tabel 3. Maintainability Index Maintainability Index Level Keterangan 86-100 High Maintainable Sangat mudah dirawat 66-85 Moderate Maintainable Normal untuk dirawat 0-65 Difficult to Maintain Sulit untuk dirawat

B. Hasil Penelitian yang Relevan