PERENCANAAN PENGUJIAN TERHADAP SITUS PERBELANJAAN ON-LINE Marjam Ongkosaputro, S.Kom, M.Kom & Lenny Wijaya ABSTRACT This study explains about testing plan in on-line shopping which consists of testing risks, testing schedule, unit testing design, integration testing design, system testing design, acceptance testing design, and other optional testing design. Each design has different parts and functions that involves a successful system. The purpose of this study is to build a good testing plan, study the testing environment, check the validation, arrange time and things to do step by step, choose persons to do this testing, and describe the functions of each testing. The result of these testing will be used to make sure whether the on-line shopping system has reach its objectives. 1. Pendahuluan Sistem yang akan dibahas saat ini adalah mengenai perencanaan pengujian terhadap perbelanjaan on-line yang akan digunakan oleh pelanggan yang membrowse ke web yang dibuat. Sistem ini dapat diakses dari dalam perusahaan maupun dari luar perusahaan. Akses dari dalam dilakukan oleh orang yang memiliki wewenang pada basis data dalam hal ini yaitu administrator. Tujuan dari perencanaan pengujian ini adalah untuk membangun situs perbelanjaan on-line yang dapat berfungsi dengan baik, bebas dari kesalahan secara teknis, di mana situs ini mengijinkan pelanggan untuk mencari atau mengakses produk yang dikeluarkan oleh perusahaan (baik dari kode produk, nama produk, jenisnya, dan sebagainya). Sistem yang dibuat harus mengijinkan pelanggan untuk mengakses informasi produk dari internet dan mengijinkan pelanggan untuk memesan produk langsung dari internet. Sistem memungkinkan dilakukannya pemasukan informasi produk yang baru, pengubahan terhadap informasi yang telah ada dalam basis data, penghapusan informasi yang ada, dan juga pencarian terhadap suatu produk tertentu yang terdaftar dalam basis data. Sistem yang akan digunakan oleh pelanggan yaitu suatu sistem yang dapat melakukan pencarian terhadap produk tertentu, selain daripada itu di dalam sistem tersebut pelanggan terlebih dahulu harus mendaftarkan dirinya. Dengan telah adanya pendaftaran, maka penjual dapat mengetahui data pembeli. Sistem yang akan digunakan oleh administrator dimana administrator memasukkan informasi produk baru. 2. Resiko Pengujian Ada beberapa resiko pengujian yang harus sedini mungkin diantisipasi sehingga pengujian sistem dapat berjalan lancar. Untuk lebih jelasnya, berikut ini disusun tabelnya.
' Dosen Tetap Jurusan Sistem Informasi, FIK-UPH " Mahasiswa Jurusan Sistem Informasi, FIK-UPH Perencanaan Pengujian ... (Marjam O dan Lenny W)
77
Tabel 1. Resiko Pengujian dan Perencanaan Antisipasi Resiko Tingkat Resiko Pengujian
(T/S/R)
Ketika pengujian sudah hams dilaksanakan, program aplikasi untuk belanja on-line belum selesai dibuat sehingga jadual untuk proses pengujian akan tertunda dan tidak bisa selesai pada waktunya. Ada kesulitan dalam penulisan test script oleh software tester karena pengkodean yang ditulis oleh pemrogram tidak jelas.
Tinggi
•
Memulai pembuatan program aplikasi belanja on-line secepatnya sehingga selesai pada waktu yang telah dijadualkan.
Tinggi
•
Adanya komunikasi antara software fesfer dan pemrogram mengenai aturanaturan penulisan program (ada standarisasinya).
Para anggota tim belum pernah mempergunakan alat-bantu untuk melakukan prases pengujian terhadap web umumnya, dan pengujian terhadap sistem belanja on-line khususnya.
Tinggi
•
Memberikan pelatihan terhadap anggota tim supaya mengerti cara menggunakan alat-bantu ini.
•
Jika tidak dapat memberikan pelatihan secara internal perusahaan, maka perlu anggota tim perlu dikirim untuk mengikuti pelatihan di luar perusahaan.
Adanya permasalahan dalam basis data yaitu:
Sedang
•
Begitu kebutuhan dari pengguna diperoleh, basis data harus dirancang sesegera mungkin.
•
Pembuatan basis data harus dilakukan oleh orang yang benar-benar ahli dalam basis data, biasanya dilakukan oleh DBA.
Sedang
•
Memulai proses test case dan test script secepatnya agar tidak terlambat selesai.
Rendah
•
Memberikan waktu khusus bagi para anggota tim untuk mempelajari konsep belanja on-//ne dan kalau bisa langsung mencobanya.
•
Ketika akan dilakukan pengujian, basisdata yang dibutuhkan belum selesai dibuat sehingga akan memperlambat proses pengujian sistem.
Karena pembuatan basisdata yang buruburu, ada kemungkinan ada relasi-relasi table yang salah dalam basisdata. Test case maupun test script belum selesai seluruhnya ketika proses pengujian ini akan dimulai sehingga memperlambat penyelesaian penqujian. Para anggota tim belum mempunyai pengalaman dalam belanja on-line.
Perencanaan Antisipasi Resiko
•
3. Jadual Pengujian Supaya pengujian dapat berjalan sesuai waktu yang diharapkan, maka perlu disusun jadual pengujian yang harus dilakukan. Hal ini perlu dilakukan supaya tidak terjadi keterlambatan dalam delivery order-nya.
78 Jurnal llmiah llmu Komputer, Vol. 1 No. 2 Mei 2003: 77-84
Tabel 2. Kegiatan-kegiatan Pengujian dan Penjadualannya Kegiatan-kegiatan Pengujian
Tanggal Mulai
Tanggal Selesai
(mm/dd/yy)
(mm/dd/yy)
Testing Strategy
08/05/2002
08/20/2002
Testing Plan
08/21/2002
09/05/2002
Unit Testing m
Test Case & Automated Test scripts created
09/06/2002
11/20/2002
*
Test Cases/scripts turned in to project manager
09/06/2002
11/20/2002
Integration Testing •
Integration coordinators assigned
11/21/2002
12/09/2002
•
Integration Testing
12/10/2002
12/26/2002
*
Integration tests approved and scripts turned in
12/20/2002
12/26/2002
System Testing *
Set up Test Lab
12/27/2002
01/02/2003
•
System Testing
01/03/2003
01/18/2003
m
o
Reguirement Testing
01/03/2003
01/05/2003
o
Performance Testing
01/06/2003
01/08/2003
o
Stress Testing
01/09/2003
01/12/2003
o
Security Testing
01/13/2003
01/15/2003
o
Recovery Testing
01/16/2003
01/18/2003
o
Usability Testing
01/19/2003
01/21/2003
01/21/2003
01/21/2003
System Tests Approved
User Acceptance Testing •
User Acceptance Tests Handling Over
01/22/2003
01/23/2003
•
User Acceptance Testing
01/23/2003
03/02/2003
•
User Acceptance Approved
03/02/2002
03/02/2003
4. Perencanaan Pengujian Unit Untuk melakukan pengujian unit dimana setiap pengembang melakukan test terhadap modul-modul yang mereka buat, perusahaan menyediakan alat-bantu seperti piranti keras komputer yang digunakan untuk proses pengujian adalah 5 PC pada laboratorium pengujian, satu server, dan suatu LAN (Local Area Network). Di bawah ini adalah deskripsi minimal dari piranti keras yang akan digunakan pada pengujian. - 1 PC untuk manajer dengan konfigurasi sebagai berikut: Pentium III 450 MHz dan SDRAM 128 MB - 2 PC sebagai workstation untuk staff dan 3 PC sebagai workstation untuk pembeli dengan konfigurasi sebagai berikut: Pentium II 550 MHz dan SDRAM 64 MB - 1 server sebagai pusat dari LAN dan sebuah basisdata dengan konfigurasi sebagai berikut: Pentium IV 2,4 GHz, RDRAM 512 MB dan hard disk 80 GB Untuk PC yang digunakan untuk pengguna, dibuat multiplatform karena pada kenyataannya pengguna mempergunakan komputer dengan berbagai variasi, Perencanaan Pengujian ... (Marjam O dan Lenny W)
79
misalnya variasi resolusi layar, variasi browser, variasi versi piranti lunak dan berbagai variasi platform lainnya. 4.1. Proses Pengujian dan Validasi Sebagai tahap awal dari proses pengujian, dibuat suatu jadual untuk mengatur pertemuan antara software tester dengan pengembang yang mengerjakan program aplikasi untuk belanja on-line ini. Pertemuan ini dimaksudkan untuk membicarakan hal-hal apa yang akan ditesf, yang mana sebagai prioritas utama dan membicarakan hal-hal seputar pembuatan kode-kode supaya sesuai dengan standar misalnya diberikan keterangan pada program sehingga program akan lebih mudah dipahami begitu dibaca oleh software tester. Hal ini akan mempercepat pekerjaan software tester. Dalam unit pengujian ini akan dilakukan black box pengujian dan white box pengujian. Test case dibuat pada tahap ini. Test case ini akan didokumentasikan dalam log validasi test case. Jika terdapat kesalahan dalam test case, maka kesalahan tersebut akan didokumentasikan di dalam laporan kesalahan test. Jika sudah tidak terdapat kesalahan lagi, maka sudah bisa disampaikan kepada manajer proyek untuk melanjutkannya ke tahap pengujian integrasi. Pada tahap ini dilakukan pengujian secara manual dan secara otomasi. Untuk melakukan otomasi pengujian, diperlukan test script, dan test script ini dibuat juga pada tahap unit pengujian ini dengan mempergunakan template test script. Adapun tujuan dari penggunaan otomasi pengujian ini adalah untuk meningkatkan efektifitas dan efisiensi dalam melakukan pengujian terhadap hal-hal yang tetap ataupun yang tidak terlalu banyak terdapat perubahan. Sedangkan untuk hal-hal yang banyak mengalami perubahan, dipilih pengujian secara manual. 4.2. Form yang Digunakan • Test case • Log validasi test case • Test script • Laporan kesalahan Test 5. Perencanaan Pengujian Integrasi Untuk melakukan test integrasi ini, dipakai piranti keras dengan konfigurasi yang sama dengan pengujian unit dan dilakukan di Iaboratorium pengujian. Pengujian ini dilakukan oleh tim yang terdiri dari pengembang, software tester, DBA, dan Manajer Proyek. 5.1. Proces Pengujian and Validasi Tujuan dari dilakukannya test integrasi ini adalah untuk memastikan bahwa setiap modul-modul dari program yang dibuat oleh masing-masing pengembang dapat berjalan sebagai satu kesatuan yang utuh dari sebuah sistem belanja on-line. Test ini dikatakan berhasil apabila informasi yang dimasukkan dapat diproses dan menghasilkan output yang benar oleh keseluruhan sistem. Dalam test integrasi ini juga dibuat test case, log validasi test case, laporan kesalahan test dan test script template. Jika terdapat kesalahan dalam pelaksanaan pengujian ini, hal ini dibicarakan antara pengembang dengan software tester untuk mendapatkan persetujuan prioritas kesalahan apa yang akan ditangani terlebih 80 Jumal llmiah llmu Komputer, Vol. 1 No. 2 Mei 2003: 77-84
dahulu. Dan setelah perbaikan selesai, dilakukan pengujian lagi. Hal yang penting, jika terdapat perubahan-perubahan pada pengkodean program, harus dibicarakan dengan software tester juga, karena test script yang digunakan untuk test ini juga harus sesuai dengan program yang dibuat oleh pemrogram. Jika ternyata kesalahan tidak terdapat pada program, melainkan pada basisdata, maka yang bertugas untuk menangani masalah ini adalah DBA. 5.2. Form yang Digunakan • Test case • Log Validasi Test case • Test script • Laporan kesalahan Test 6. Perencanaan Pengujian Sistem Perencanaan pengujian sistem ini diperlukan untuk dapat mengetahui apakah sistem yang dibangun bisa berjalan dengan baik di lingkungan dimana nantinya sistem ini digunakan. Untuk itu pengujian ini dilakukan dengan mempergunakan piranti keras yang nantinya akan digunakan dalam lingkungan yang sebenarnya (bukan di lokasi pengembang ataupun laboratorium). Diperlukan spesifikasi minimal piranti keras yang dipakai adalah sebagai berikut: - 1 PC untuk manajer dengan konfigurasi: Pentium III 450 MHz dan SDRAM 128 MB - 2 PC sebagai workstation untuk staf dan 3 PC sebagai workstation untuk pembeli dengan konfigurasi: Pentium II 550 MHz dan SDRAM 64 MB - 1 server sebagai pusat dari LAN dan sebuah basisdata dengan konfigurasi: Pentium IV 2,4 GHz, RDRAM 512 MB dan hard disk 80 GB 6.1. Proses Pengujian and Validasi Sistem pengujian ini dimaksudkan untuk memastikan bahwa sistem yang telah dibuat dapat berjalan sesuai dengan kebutuhan dalam lingkungan yang sebenarnya, baik kualitas, kinerja maupun fungsionalitasnya. Pada tahap ini dilakukan pengujian dengan mengambil data yang sebenarnya di mana sistem ini nantinya akan diterapkan. Sistem ini sangat kompleks, oleh karena itu membutuhkan waktu yang lebih lama dibandingkan tahap pengujian lainnya. Adapun test yang akan dilakukan pada tahap ini antara lain: • Requirement pengujian, yaitu untuk memastikan bahwa sistem yang dibuat telah sesuai dengan kebutuhan dari pengguna. Hal ini dilakukan dengan membandingkan kebutuhan pengguna dengan hasil sistem. Jika sesuai, berarti kebutuhan telah terpenuhi. • Performance pengujian, yaitu untuk memastikan bahwa sistem dapat berjalan dengan baik dalam kondisi-kondisi yang telah diperkirakan, misalnya waktu yang diperlukan untuk mengakses informasi adalah 10 detik per halaman, waktu yang diperlukan untuk mengakses basisdata, kapasitas penyimpanan file, dan aktivitas lainnya yang masih dalam batas-batas yang telah diperhitungkan. • Stress pengujian, yaitu untuk memperkirakan seberapa jauh sistem kita dapat berjalan dengan baik dalam kondisi-kondisi yang overloaded, yaitu kondisi di luar batas perkiraan. Misalnya bagaimana kecepatan pengaksesan informasi jika dilakukan secara bersamaan oleh 100 orang per jam, sementara jumlah yang diperkirakan adalah 85 orang per jam. Pengujian ini dilakukan untuk Perencanaan Pengujian ... (Marjam O dan Lenny W) 81
•
•
•
mengetahui seberapa jauh kemunduran fungsi sistem dan seberapa jauh batas maksimum yang benar-benar tidak dapat ditangani lagi oleh sistem. Security pengujian, yaitu untuk memastikan bahwa setiap orang hanya mempunyai hak akses sesuai dengan wewenangnya masing-masing. Orang yang satu tidak bisa mengakses data orang lain. Sebagai contoh, untuk keamanan sistem diterapkan sistem password. Password ini dicoba untuk ditembus oleh software tester. Jika berhasil, berarti sistem keamanan masih lemah dan pengujian ini dinyatakan gagal. Untuk itu diadakan perbaikan sistem dengan memakai metode yang lebih canggih dan dibicarakan dengan pemrogram maupun DBA. Jika password tidak berhasil ditembus berarti sistem sudah cukup aman untuk diaplikasikan. Recovery pengujian, yaitu pengujian yang dimaksudkan untuk mengetahui seberapa jauh kita bisa memperbaiki sistem ketika suatu waktu sistem mengalami gangguan seperti crash ataupun bencana alam yang mengakibatkan data-data dalam sistem kita hilang. Dalam pengujian ini diperhitungkan berapa kali sebaiknya dilakukan back up data, seberapa banyak data yang bisa diselamatkan, seberapa pentingnya data yang diselamatkan itu, apakah setelah pemulihan, data-data tersebut masih compatible dengan data lainnya, dan halhal lain yang menyangkut pemulihan. Usability pengujian, yaitu pengujian yang dimaksudkan untuk mengetahui seberapa jauh pengguna bisa mengerti tentang penggunaan aplikasi yang telah kita buat. Hal ini berhubungan dengan antar-muka yang merupakan sarana untuk berinteraksi antara komputer dan pengguna, pemilihan kata-kata, warna, ukuran tulisan, pemilihan kontrol apakah command button, list box, textbox, radio button, ataupun checkbox. Untuk melaksanakan pengujian ini, dipilih beberapa pengguna untuk mengoperasikannya dan menilai bagaimana hasilnya. Untuk setiap pengujian di atas, jika terdapat kesalahan, maka kesalahan akan dicatat dalam log kesalahan test dan laporan kesalahan test.
6.2. Form yang Digunakan • log kesalahan test. • laporan kesalahan test. 7. Perencanaan Pengujian Penerimaan Perencanaan pengujian penerimaan ini diperlukan untuk dapat mengetahui apakah sistem yang dibangun telah semuanya memenuhi kebutuhan pengguna seperti yang telah disepakati pada tahap perencanaan. Untuk itu pengujian ini dilakukan dengan melibatkan para pengguna. 7.1. Proses Pengujian dan Validasi Pengujian ini dilakukan oleh pengguna dengan tujuan untuk memastikan bahwa sistem yang dibuat sesuai dengan keinginan mereka. Pengguna akan mempergunakan sistem dengan cara kerja mereka sendiri. Jika terdapat kekurangan-kekurangan maupun kesalahan, hal ini didiskusikan dengan tim proyek untuk diperbaiki. Jika sistem sudah sesuai, maka pengguna menyetujuinya dengan menandatangani sebuah surat keterangan persetujuan yang telah diberi materai dengan tujuan bahwa sistem yang dibuat telah sesuai dengan permintaan sehingga jika ada kesalahan di waktu mendatang, tim proyek tidak bisa disalahkan. Hasil dari 82 Jurnal llmiah llmu Komputer, Vol. 1 No. 2 Mei 2003: 77-84
tahap ini bisa saja berupa persetujuan, penundaan maupun penolakan. Jika ditolak, berarti sistem gagal dan harus diulang. Hal-hal umum yang diperhatikan oleh pengguna pertama kali adalah masalah pengguna antar-muka. Jika mereka tidak menyukai atau merasa susah untuk memakainya, maka pengguna antar-muka harus diubah supaya sesuai. Jika sudah sesuai mereka akan mulai menjalankan aplikasi dengan data yang sama dengan perusahaan, melihat alur dan hasilnya. Jika sudah sesuai, maka sistem dianggap telah berhasil. Jika masih ditemukan adanya kesalahan, maka akan dicatat dalam laporan kesalahan fesf maupun laporan requirement test. 7.2. Form yang Digunakan • laporan kesalahan test • laporan requirement test. 8. Bagian Pilihan Selain yang sudah dibahas di atas, pada bagian pilihan ini ada beberapa hal yang dapat dilakukan dimana terdapat beberapa alternatif. 8.1. Metodologi Pengujian Pada pengujian unit, dalam membuat test case pada black box pengujian, teknik yang dipakai adalah equivalence partitioning, boundary analysis dan error guessing. Sedangkan untuk white box pengujian dipergunakan control flow graph. Pada pengujian integrasi, pendekatan secara bertahap yang dipakai karena sistem ini adalah sistem yang cukup besar, dimana melibatkan staf yang akan mengoperasikan sistem belanja on-line dan pembeli dari berbagai penjuru dunia yang akan melakukan transaksi. Dipakainya fasilitas internet yang bebas bagi semua orang yang berarti ancaman terhadap sistem sangat banyak, karenanya sistem belanja on-line ini terdiri dari banyak modul. Modul-modul ini selain berfungsi untuk jalannya sistem juga berfungsi sebagai keamanan sistem serta untuk aplikasi internet. Karena modul-modul tersebut terlalu banyak, jika digabung sekaligus akan sangat membingungkan. Untuk itu setiap modul harus difesf satu per satu secara teliti, bagaimana keadaan suatu modul sebelum difesf, setelah difesf dan setelah digabungkan dengan modul lain yang telah difesf. Setiap kesalahan yang terjadi pada setiap tahap penggabungan sangat penting untuk diperbaiki, karena jika tidak, hal ini berarti menunjukkan masih adanya kelemahan pada sistem. 8.2. Asumsi-asumsi Pengujian • Semua orang yang terlibat dalam proses pengujian ini telah mengerti tentang penggunaan komputer. • Software tester mengetahui cara penulisan test case dan fesf script yang benar. • Anggota tim telah mengetahui tugas dan tanggung jawabnya secara tepat. • Dana untuk melakukan pengujian ini telah tersedia. • Sistem operasi yang digunakan pada komputer yang dipakai untuk fesf adalah sama. • Semua program pendukung untuk pengujian telah di/nsfa// pada komputer yang akan digunakan. • Alat-bantu pengujian terotomasi, misalnya Rational Visual Test dapat berfungsi dengan baik pada semua komputer yang akan difesf. • Adanya dokumentasi yang lengkap atas seluruh kegiatan proses pengujian. Perencanaan Pengujian ... (Marjam O dan Lenny W)
83
•
Perusahaan telah mempunyai jaringan LAN dan internet yang berfungsi dengan baik.
Daftar Pustaka 1. Mosley, Daniel J., The Handbook of MIS Application Software Pengujian, Yourdon Press Computing Series, 1993. 2. Ince, Darrel, An Introduction to Software Quality Assurance and Its Implementation, McGraw-Hill, 1994
84 Jurnal llmiah llmu Komputer, Vol. 1 No. 2 Mei 2003: 77-84