• Tidak ada hasil yang ditemukan

BAB II KAJIAN TEORI

A. Deskripsi Teori

7. Kualitas Aplikasi Web

Kualitas perangkat lunak adalah kesesuaian persyaratan fungsional dan kinerja yang dinyatakan, standar pengembangan yang didokumentasikan, dan karakter implisit yang diharapkan dari semua perangkat lunak yang dikembangkan secara profesional (Pressman, 2001:199). Definisi kualitas perangkat lunak menurut IEEE (1990:60) adalah :

a. Tingkat di mana suatu sistem, komponen, atau proses memenuhi persyaratan yang ditentukan.

b. Tingkat di mana suatu sistem, komponen, atau proses memenuhi kebutuhan pelanggan atau pengguna atau harapan.

Menurut International Organization for Standardization (ISO) dalam ISO/IEC 9126:1991(E), kualitas perangkat lunak adalah keseluruhan fitur dan karakteristik dari suatu produk perangkat lunak yang dikenakan pada kemampuannya untuk memenuhi kebutuhan yang dinyatakan. Kualitas perangkat lunak adalah tingkat pemenuhan fungsional dan kinerja perangkat lunak terhadap kebutuhan dan persyaratan yang telah ditentukan.

Kualitas perangkat lunak berdasarkan ISO/IEC 9126:1991(E) dapat dievaluasi dengan karakteristik-karakteristik sebagai berikut :

38

a. Functionality, yaitu sekumpulan atribut yang dikenakan pada keberadaan

suatu himpunan fungsi dan sifat-sifat tertentu dari fungsi-fungsi tersebut.

b. Reliability, yaitu sekumpulan atribut yang dikenakan pada kemampuan

perangkat lunak untuk mempertahankan tingkat kinerjanya dalam kondisi dan waktu yang ditentukan.

c. Usability, yaitu sekumpulan atribut yang dikenakan pada usaha yang

diperlukan untuk menggunakan perangkat lunak dan penilaian individu tentang penggunaan tersebut oleh sekumpulan pengguna yang ditentukan.

d. Efficiency, sekumpulan atribut yang dikenakan pada hubungan antara tingkat

kinerja perangkat lunak dan jumlah sumber daya yang digunakan dalam kondisi yang ditentukan.

e. Maintainability, sekumpulan atribut yang dikenakan pada usaha yang

diperlukan untuk membuat perubahan tertentu.

f. Portability, sekumpulan atribut yang dikenakan pada kemampuan perangkat

lunak untuk ditransfer dari satu lingkungan ke lingkungan yang lain.

Casteleyn, et al (2009:260-261) menyebutkan bahwa terkait dengan ISO 9126, kualitas aplikasi Web dalam beberapa hasil kerja sejauh ini dikembangkan sekumpulan karakteristik yang berbeda sebagai pendorong utama untuk evaluasi kualitas aplikasi Web. Para praktisi Web memandang bahwa functionality,

performance, dan usability adalah faktor-faktor yang relevan dengan domain

39

a. Functionality

Functionality mengarahkan pada penilaian kebenaran (correctness) dan kecukupan (adequacy) fungsional dari sebuah aplikasi. Functionality menggunakan skenario khusus untuk memeriksa setiap persyaratan fungsional dalam aplikasi yang sebelumnya sudah ditentukan. Kemungkinan kegagalan atau ketidakcocokan dapat terungkap sehingga aplikasi dapat segera diperbaiki (Casteleyn, 2009:263).

Menurut Nguyen (2001), pengujian fungsional merupakan kategori pengujian yang luas dan melingkupi beberapa metode pengujian. Metode pengujian yang termasuk dalam pengujian fungsional antara lain adalah :

1) Task-Oriented Functional Tests (TOFTs)

Metode Task-Oriented Functional Tests (TOFTs) memeriksa apakah aplikasi dapat menjalankan setiap task dengan benar. Task-Oriented Functional Tests (TOFTs) terdiri dari test case positif yang dirancang untuk melakukan verifikasi fitur/fungsi aplikasi dengan cara memeriksa setiap task yang ditunjukkan dari setiap fitur/fungsi terhadap persyaratan/kebutuhan aplikasi. Task-Oriented

Functional Tests (TOFTs) disusun berdasarkan daftar fitur/fungsi aplikasi yang

akan diuji fungsionalitasnya.

2) Forced-Error Tests (FETs)

Metode Forced-Error Tests (FETs) menjalankan fitur/fungsi aplikasi pada kondisi yang salah secara sengaja. Forced-Error Tests (FETs) memiliki tujuan untuk menemukan kondisi-kondisi salah yang tidak terdeteksi atau tidak tertangani. Forced-Error Tests (FETs) terdiri dari test case negatif yang dirancang untuk memaksa aplikasi ke dalam kondisi yang salah. Daftar pesan kesalahan

40

yang mungkin terjadi menjadi dasar acuan dalam menyusun test case dalam

Forced-Error Tests (FETs).

b. Performance

Performance diukur dalam hal jumlah permintaan yang dapat dilayani per satuan waktu dan waktu yang digunakan untuk melayani sebuah permintaan. Menurut Palomäki (2009:13), faktor yang mempengaruhi kinerja aplikasi Web secara garis besar dapat dibagi menjadi dua kategori, yaitu kinerja aplikasi Web dari sisi klien (client-side) dan kinerja aplikasi Web dari sisi server (server-side). Kinerja aplikasi Web dari sisi klien disebut juga frontend performance, sedangkan kinerja aplikasi Web dari sisi server disebut backend performance.

1) Frontend Performance

Kunci dari kinerja aplikasi Web yang baik dari sisi klien adalah meminimalkan lalu lintas jaringan ketika aplikasi Web sedang digunakan. Hal ini dikarenakan jaringan komputer yang sesungguhnya hanya menyediakan bandwidth yang terbatas dan memiliki jarak fisik antara klien dengan server sehingga jumlah data yang ditransfer perlu diminimalkan. Berikut ini adalah hal-hal yang mempengaruhi kinerja aplikasi Web dari sisi klien (Souders, 2007) :

a) Jumlah HTTP Request

b) Penggunaan Content Delivery Network

c) Expires Header

d) Gzip Components

e) Penempatan Stylesheets f) Penempatan Scripts

41

g) CSS Expressions

h) External JavaScript and CSS

i) DNS Lookups j) Minify JavaScript k) Redirects l) Duplicate Scripts m) Etags n) Cacheable Ajax 2) Backend Performance

Kualitas kode aplikasi Web pada sisi server, kompleksitas arsitektur aplikasi Web, dan pemilihan libraries serta modul memiliki pengaruh yang signifikan pada kinerja aplikasi Web. Oleh karena itu, pemilihan algoritma pemrograman, model arsitektur, idiom yang digunakan dalam pengkodean, optimasi query basis data, penggunaan kerangka kerja yang efektif, dan penggunaan modul yang efisien merupakan hal yang vital untuk kinerja aplikasi Web yang baik. Aplikasi Web yang berkinerja tinggi pada sisi server memiliki kemampuan untuk melakukan proses sesuai permintaan dari pengguna dalam jumlah besar secara bersamaan dengan response time yang sedikit (Palomäki, 2009:17).

c. Usability

Aplikasi Web harus menyediakan kemudahan mekanisme navigasi kepada pengguna. Aplikasi Web harus mampu memberikan dukungan kepada pengguna untuk mencapai konten yang diinginkan secara cepat. Aplikasi Web juga harus membuat pengguna dapat mengoperasikan aplikasi Web yang digunakan

42

pengguna agar tidak kehilangan arah. Menurut Lewis (1993:1-2), usability dapat dinilai menggunakan pengukuran subyektif yang digunakan untuk meneliti tingkat kepuasan pengguna. Data subyektif adalah ukuran pendapat dan sikap dari pengguna mengenai persepsi pada usability.

Dokumen terkait