TESTING IMPLEMENTASI SISTEM INFORMASI

(E-Learning Series)

TOPIK-1:

Mengetahui Fundamental dalam melakukan pengujian Sistem Informasi

Sebelum bahasan dari topik Testing Implementasi, ada baiknya kita mengetahui terlebih dahulu dari definisi-definisi untuk pembahasan lanjutan.

Definisi data:

Menurut berbagai kamus bahasa Inggris-Indonesia, data diterjemahkan sebagai istilah yang berasal dari kata “datum” yang berarti fakta atau bahan-bahan keterangan.

• Dari sudut pandang bisnis, data bisnis (business data) adalah deskripsi organisasi tentang sesuatu(resources) dan kejadian (transactions) yang terjadi (business data is an organization’s description of things (resources)and events (transactions) that it faces).

• Data adalah deskripsi dari sesuatu dan kejadian yang kita hadapi.

• Data adalah kenyataan yang menggambarkan suatu kejadian-kejadian dan kesatuan nyata. Kejadian adalah sesuatu yang terjadi pada saat tertentu. Kesatuan nyata adalah berupa suatu objek nyata seperti tempat, benda dan orang yang betul-betul ada dan terjadi.

Definisi Informasi:

• Menurut Gordon B. Davis dalam bukunya Management Informations System :

Conceptual Foundations, Structures, and Development menyebut informasi sebagai data yang telah diolah menjadi bentuk yang berguna bagi penerimanya dan nyata, berupa nilai yang dapat dipahami di dalam keputusan sekarang maupun masa depan.

• Menurut Barry E. Cushing dalam buku Accounting Information System and Business Organization, dikatakan bahwa informasi merupakan sesuatu yang menunjukkan hasil pengolahan data yang diorganisasi dan berguna kepada orang yang menerimanya.

• Menurut Robert N. Anthony dan John Dearden dalam buku Management Control

Systems, menyebut informasi sebagai suatu kenyataan, data, item yang menambah pengetahuan bagi penggunanya.

• Menurut Stephen A. Moscove dan Mark G. Simkin dalam bukunya Accounting

Information Systems : Concepts and Practise mengatakan informasi sebagai kenyataan atau bentuk-bentuk yang berguna yang dapat digunakan untuk pengambilan keputusan bisnis.

Kesimpulan:


Data adalah nilai yang mendeskripsikan dari suatu objek atau kejadian.


Informasi adalah hasil dari pengolahan data dalam bentuk yang lebih berguna dan lebih berarti bagi penerimanya yang menggambarkan suatu kejadian-kejadian

sehingga akan berguna untuk pengambilan keputusan.

Definisi Software / Perangkat Lunak :

• Kumpulan instruksi yang berfungsi untuk menjalankan suatu perintah, seperti

memberikan informasi tentang hardware, menentukan fungsi hardware, dan

menjalankan sistem.

• Seluruh komponen pengolahan data yang dapat membantu memecahkan masalah diluar dari perangkat hardware yang meliputi system design, program dan prosedur.

Gambaran umum tentang perangkat lunak antara lain :

1. Perintah (program computer) yang bila dieksekusi memberikan fungsi dan unjuk

kerja seperti yang diinginkan.

2. Struktur data yang memungkinkan program memanipulasi informasi secara

proporsional.

3. Dokumen yang menggambarkan operasi dan kegunaan program.

Berdasarkan jenisnya, software dibagi menjadi 3 yaitu :

1. Firmware (BIOS)

2. Sistem Operasi (Windows, Linux, Mac OS, dll)

3. Software Aplikasi (Photoshop, WinAmp, WinZip, Office, dll)

Siklus Informasi :

Siklus informasi adalah gambaran secara umum mengenai proses terhadap data sehingga menjadi informasi yang bermanfaat bagi pengguna. Informasi yang menghasilkan informasi berikutnya. Demikian seterusnya proses pengolahan data menjadi informasi.


  • Proses menghasilkan informasi harus melalui tahapan-tahapan yang dilakukan komputer sebagai teknologi informasi.
  • Tahapan-tahapan tersebut terdiri atas Input – Proses – Output yang disebut sebagai siklus proses informasi. Artinya, bila tahap telah sampai pada output maka output tersebut dapat dijadikan input kembali.
  • Dengan demikian dapat dikatakan bahwa informasi yang dihasilkan dapat pula dijadikan data kembali sebagai input untuk diproses selanjutnya.
  • Data dan informasi akan saling berkesinambungan sehingga membentuk suatu siklus yang disebut information cycle (siklus informasi).


Jika kita melihat SDLC-Waterfall model didalam pembangunan dan pengembangan aplikasi, Testing dan implementasi merupakan rangkaian yang dilakukan setelah tahapan analisa dan design dan sebelum tahapan deployment, sebelum aplikasi di serah terima atau digunakan pengguna akhir(End user).

Ada beberapa pendapat dari beberapa ahli yang dapat menjadi acuan didalam pengujian/testing:

Glen Myers menyatakan bahwa sasaran dari pengujian perangkat lunak adalah : 

1. Pengujian adalah proses menjalankan suatu program dengan maksud menemukan kesalahan. 

2. Pengujian yang baik adalah yang memiliki kemungkinan tinggi untuk menemukan kesalahan yang belum pernah ditemukan sebelumnya. 

3. Pengujian yang sukses adalah pengujian yang mengungkap semua kesalahan yang belum pernah ditemukan sebelumnya. 

Roger S. Pressman mendefinisikan sendiri mengenai prinsip-prinsip pengujian terhadap perangkat lunak : 

  •  Pengujian harus sesuai dengan persyaratan konsumen. 
  •  Para ahli harus betul-betul mengetahui spesifikasi dari produk (software) yang diinginkan konsumen. 
  •  Pengujian harus direncanakan lama sebelum pengujian itu di mulai. 
  •  Prinsip Pareto berlaku untuk pengujian perangkat lunak. 
  •  80 % kesalahan yang ditemukan, hanya dapat ditelusuri sampai 20 % dari semua modul program. 
  • Pengujian harus dimulai dari yang kecil dan berkembang ke pengujian yang besar. 
  • Pengujian berfokus dalam usaha menemukan kesalahan pada modul yang terintegrasi, dan akhirnya pada sistem secara keseluruhan. 
  • Pengujian yang sempurna tidak mungkin. 
  • Agar efektif, pengujian harus dilakukan oleh pihak ketiga yang independent (third party). 
  • Pengujian yang memiliki probabilitas tinggi untuk menemukan kesalahan. 
  • Pembuat sistem bukanlah orang yang paling tepat untuk melakukan semua pengujian bagi perangkat lunak. 
  • Pengujian perangkat lunak (bahasa Inggris: software testing)

• Suatu investigasi yang dilakukan untuk mendapatkan informasi mengenai kualitas dari produk atau layanan yang sedang diuji (under test).

• Pengujian perangkat lunak juga memberikan pandangan mengenai perangkat lunak secara obyektif dan independen, yang bermanfaat dalam operasional bisnis untuk memahami tingkat risiko pada implementasinya.

• Teknik-teknik pengujian mencakup, namun tidak terbatas pada, proses mengeksekusi suatu bagian program atau keseluruhan aplikasi dengan tujuan untuk menemukan bug perangkat lunak (kesalahan atau cacat lainnya).

Pengujian perangkat lunak dapat dinyatakan sebagai proses validasi dan verifikasi bahwa sebuah program / aplikasi / produk:

1. Memenuhi kebutuhan (requirement) yang mendasari perancangan dan pengembangan perangkat lunak tersebut;

2. Berjalan sesuai dengan yang diharapkan;

3. Dapat diterapkan menggunakan karakteristik yang sama;

4. Memenuhi kebutuhan semua pihak yang berkepentingan.

Type Pengujian/testing:

  1. Pengujian Perangkat Lunak (Software Testing) Vs Pembetulan Perangkat Lunak

(Software Debugging)

  • Pengujian perangkat lunak bukanlah pembetulan perangkat lunak dan dilakukan oleh dua peran (role) yang berbeda, walau dalam keseharian peran ini bisa dilakukan oleh orang yang sama. Pengujian perangkat lunak yang dilakukan oleh seorang penguji (tester) melibatkan identifikasi kesalahan (error/bug/defect) tanpa terlibat dalam perbaikan. Sedangkan pembetulan perangkat lunak yang dilakukan oleh seorang pemogram (developer) adalah aktivitas mengindentifikasi kesalahan, mengisolirnya dan memperbaiki kesalahan yang ditemukan.
  1. Pengujian Perangkat Lunak Vs Jaminan Mutu (Qualitiy Assurrance) dan Pengawasan Mutu (Quality Control)

    Dikarenakan pengujian perangkat lunak juga berkenaan dengan mutu, maka beberapa terminologi yang berkenaan dengan mutu sering juga disinggung dalam pembahasan pengujian perangkat lunak. Aktivitas dalam jaminan mutu adalah untuk memastikan bahwa proses, prosedur dan standar yang digunakan dalam proses verifikasi dilakukan sesuai untuk perangkat lunak yang dibangun dan keperluan yang diinginkan. Sedangkan aktivitas pengawasan mutu adalah untuk memastikan bahwa perangkat lunak yang dibangun sesuai dengan keperluan yang sudah didokumentasikan (documented requirements). Jadi kedua aktivitas jaminan dan pengawasan mutu ini berbeda dengan aktivitas dalam pengujian perangkat lunak yang dalam hal ini adalah untuk mengindentifikasi kesalahan.

Catatan:

“Pengujian tidak dapat memperlihatkan kerusakan sistem, tetapi hanya dapat memperlihatkan bahwa ada kesalahan perangkat lunak. ”

  • Tidak semua pengujian akan berhasil dengan baik. Masih ada beberapa kekurangan yang terdapat pada pengujian suatu perangkat lunak.

    Kekurangan-kekurangan tersebut antara lain :

     1. Tidak pernah cukup melakukan banyak ujian yang layak. 

    2. Pengujian tidak akan menemukan semua kesalahan 

    3.Pengujian sulit dan menghabiskan banyak waktu

    4. Pengujian sebagian besar masih merupakan tugas yang tidak resmi. 

  • Sebelum menetapkan metode pengujian, seorang ahli pada bidang software harus mengerti betul atau memahami prinsip dasar yang menuntun pengujian perangkat lunak.

    Prinsip-prinsip pengujian secara umum yang banyak dianut oleh para ahli perangkat lunak, antara lain :

    • Seorang Programmer seharusnya tidak menguji programnya sendiri.
    • Sebaiknya satu pengujian tidak hanya mengerjakan program yang dianggap benar, tetapi tidak mengerjakan yang dianggap salah.
    • Tujuan dari pengujian adalah untuk menemukan kesalahan, bukan untuk menunjukkan bahwa program tersebut salah.
    • Tidak ada sejumlah pengujian yang dapat menjamin bahwa program bebas dari kesalahan.
    • Bagian-bagian dari program di mana terdapat banyak kesalahan yang telah ditemukan adalah suatu tempat yang baik untuk menemukan kesalahan yang lebih banyak.
    • Tujuannya adalah bukan untuk mempermalukan programmer.

Kegagalan dan kesalahan:

Kesalahan sistem tidak selalu mengakibatkan error sistem, karena status salahnya mungkin bersifat sementara dan dapat diperbaiki sebelum terjadi perilaku yang merupakan error.

Jenis kegagalan dan kesalahan pada sistem antara lain :

Kegagalan sistem (system failure)

Peristiwa yang terjadi pada suatu waktu ketika sistem tidak memberikan layanan sebagaimana diharapkan oleh user.

Error sistem (system error)

Perilaku eror sistem dimana perilaku, sistem yang tidak sesuai dengan spesifikasinya

• Kesalahan sistem (system fault)

Status sistem yang tidak benar, yaitu status sistem yang tidak diharapkan oleh perancang sistem.

Error atau kesalahan manusia (human error)

Perilaku manusia yang mengakibatkan kesalahan sistem.

Salah satu tujuan dari pengujian terhadap perangkat lunak, adalah untuk menemukan suatu kesalahan. Kesalahan-kesalahan tersebut mempunyai tingkatan-tingkatan yang diukur dengan istilah yang dimengerti oleh manusia. Tingkatan-tingkatan kesalahan tersebut dikategorikan sebagai berikut

A. MILD (ringan)

Gejala dari kesalahan yang mengganggu kita secara estetis. Kesalahan pengejaan, Kesalahan penempatan

B. MODERATE (sedang)

Kesalahan yang berpengaruh pada penampilan system Informasi yang menyesatkan

C. ANNOYING (menjengkelkan)

• Kesalahan dari system karena adanya suatu virus.

Nama yang terpotong

Tagihan untuk Rp. 0,00 di cetak / dikirim

D. DISTURBING (mengganggu)

• Sistem menolak untuk menangani transaksi yang sah Kartu kredit yang dilaporkan tidak bisa digunakan

E. SERIOUS (serius)

• Perhitungan yang salah

Hal ini menghilangkan hubungan pada proses transaksi Tidak mencetak setiap pembayaran

F. VERY SERIOUS (sangat serius)

Kesalahan yang menyebabkan system melakukan transaksi yang salah

  •    Sebuah system kredit dapat melakukan kesalahan perhitungan.

G. EXTREME (besar)

Masalah yang tidak terbatas pada beberapa transaksi
Sering berubah-ubah atau masalah yang tidak lazim

H. INTOLERABLE (kurang tahan)

Pertimbangan yang serius diberikan untuk mematikan system.

I. CATASTROPHIC (bencana besar)

Sistem yang salah

Pustaka


– [Homes2012] Homès, Bernard. 2012. Fundamentals of Software Testing. Hoboken: John Wiley & Sons, Inc.
– [Pressman2016] Pressman, Roger; Maxim, Bruce. 2016. Software Engineering: A Practitioner’s Approach, 8th Edition
– [Fournier2009] Fournier, Greg. 2009. Essential Software Testing: A Use-Case Approach
– [Kendal2014] Kendal & Kendal. 2014. Systems Analysis and Design (9th Ed). Pearson Education
https://id.wikipedia.org/wiki/Pengujian_perangkat_lunak

https://mti.binus.ac.id/2016/04/08/pengujian-perangkat-lunak/

https://rinnooberta.wordpress.com/category/testing-dan-implementasi/