mater-strategi pengujian perangkat...

26
Strategi Pengujian Perangkat Lunak

Upload: doancong

Post on 16-Mar-2019

241 views

Category:

Documents


0 download

TRANSCRIPT

Strategi Pengujian Perangkat Lunak

Pengujian ValidasiKajian Konfigurasi / Configuration Review à AUDITn Elemen dari proses validasin Memastikan apakah semua elemen

konfigurasi perangkat lunak telahdikembangkan dengan tepat

Kajian Konfigurasi / Configuration Review àAUDIT

Integrated software

User Document

User Document

Design Document

Listing

Test document

Requirements ValidationTest

Configu-Rationreview

ManagtApproval

Valid soft

Valid config

Release soft

Pengujian Validasi

Pengujian Alpha dan Betan Pengujian Alpha

wUsability labswUsability factors checklist

n Pengujian Beta

Pengujian Sistem

n Pengujian Perbaikann Pengujian Keamanann Pengujian Stressn Pengujian Kinerja

Pengujian Aplikasi Server

Volume TestingStress TestingPerformance TestingData Recovery TestingData Backup and Restore TestingData Security Testing

Volume TestingMenemukan kelemahan sistem selama melakukan pemrosesan data dalam jumlah yang besar dalam periode waktu yang singkat. Tujuan: meyakinkan bahwa sistem tetap melakukan pemrosesan data anatar batasan fisik dan batasan logik.Contoh:n Mengujikan proses antar server dan antar partisi

hardisik pd satu server.

Stress TestingTujuan: mengetahui kemampuan sistem dalam melakukan transaksi selama periode waktu puncak proses. Contoh periode puncak: ketika penolakan proses login on-line setelah sistem down atau pada kasus batch, pengiriman batch proses dalam jumlah yg besar dilakukan setelah sistem down.Contoh: Melakukan login ke server ketika sejumlah besar workstation melakukan proses menjalankan perintah sql database.

Performance TestingDilakukan secara paralel dengan Volume dan Stress testing untuk mengetahui unjuk kerja sistem (waktu respon, throughput rate) pada beberapa kondisi proses dan konfigurasi.Dilakukan pada semua konfigurasi sistem perangkat keras dan lunak. n Mis.: pd aplikasi Client-Server diujikan pd kondisi korporate

ataupun lingkungan sendiri (LAN vs. WAN, Laptop vs. Desktop)

n Menguji sistem dengan hubungannya sistem ke lain pada server yg sama.

Load Balancing MonitorNetwork Monitor

Data Recovery TestingInvestigasi dampak kehilangan data melalui proses recovery ketika terjadi kegagalan proses.Penting dilakukan karena data yg disimpan di server dapat dikonfigurasi dengan berbagai cara. Kehilangan Data terjadi akibat kegagalan sistem, hardisk rusak, peghapusan yg tidak sengaja, kecelakaan, virus dan pencuri.

Data Backup and Restore Testing

Dilakukan untuk melihat prosedur back-up dan recovery. Diakukan dengan mensimulasikan beberapa kesalahan untuk menguji proses backup dan recovery.Pengujian dilakukan terhadap strategi backup: frekuensi , medium, waktu, mekanisme backup (manual/ otomatis), personal, ? Berapa lama backup akan disimpan.Switching antara live dan backup server ketika terjadi kerusakan (load log transaction pada back-up kemudian melaku recovery).

Data Security Testing

Privilege access terhadap database diujikan pada beberapa user yang tidak memiliki privilege access ke database.Shutdown database engine melalui operating system (dengan beberapa perintah OS) yg dapat mematikan aplikasi database.

Debugging

Test Case

Eksekusi case of case

Pengujian Tambahan

Penyebab yang dicurigai

DebuggingPenyebab yang diidentifikasi

Koreksi

Pengujian regresiHasil

AUDIT SISTEM INFORMASIPengendalian Aplikasi (Application Control)

Menurut Ruppel (2008) application controls help ensurethe completeness and accuracy of transaction processing,authorization, and validity edit checks, numericalsequence checks, and manual follow up of the exceptionreport are example of application controls.Menurut Gondodiyoto (2007) pengendalian aplikasi(appliaction controls) adalah sistem pengendalian intern(internal control) pada sistem informasi berbasis teknologiinformasi yang berkaitan denganpekerjaan/kegiatan/aplikasi tertentu (setiap aplikasimemiliki karakteristik dan kebutuhan pengendalian yangberbeda).

Contoh Pengendalian Aplikasi

• Pengendalian aplikasi disebut juga pengendaliantransaksi, karena didesain berkaitan dengan transaksipada aplikasi tertentu.

• Misalnya apabila nasabah akan mengambil uang diATM, setelah memasukkan kartu akan dimina PIN,atau setelah memasukkan nilai uang yang akandiambil, ATM akan mengecek sapakah saldo cukup,atau jumlahnya diijinkan sesuai dengan mengecekapakah saldo cukup, atau jumlahnya diijinkan sesuaidengan ketentuan bank. Pengendalian berupa PINdan limit pengambilan uang tersebut hanya berlakudi ATM, tidak berlaku di kegiatan lain.

Unsur Pengendalian Aplikasi

Terdapat beberapa unsur dalam pengendalian aplikasi,pengendalian aplikasi pada dasarnya terdiri dari :n Pengendalian batas sistem (boundary controls)n Pengendalian masukan (input controls)n Pengendalian proses pengolahan data (processcontrols)

n Pengendalian keluaran (output controls)n Pengendalian file/database (file/database controls)n Pengendalian komunikasi aplikasi (communicationcontrols)

Pengendalian batas sistem (boundary controls)

Menurut Gondodiyoto (2007) yang dimaksud boundary adalah interface antara users dengan sistem berbasi teknologi informasi. Tujuan utama boundary controls adalah antara lain :n Untuk mengenal identitas dan otentik/tidaknya pemakai

sistem, artinya suatu sistem yang didesain dengan baik seharusnya dapat mengidentifikasi dengan tepat siapa userstersebut, dan apakah identitas diri yang dipakainya otentik.

n Untuk menjaga agar sumber daya sistem informasi digunakan oleh user dengan cara yang ditetapkan.

Contoh dari pengendalian batasan :n Otoritas akses ke sistem aplikasin Identitas dan otentisitas pengguna

Pengendalian masukan (input controls)

Menurut Gondodiyoto (2007) pengendalian masukan(input controls) dirancang dengan tujuan untukmendapat keyakinan bahwa data transaksi input adalahvalid, lengkap, serta bebas dari kesalahan danpenyalahgunaan. Input controls ini merupakanpengendalian aplikasi yang penting karena input yangsalah akan menyebabkan output juga keliru.Mekanisme masuknya data input ke sistem dapatdikategorikan ke dalam dua cara yaitu :n Batch system (delayed processing systems)n On line transaction processing system (pada

umumnya bersifat real time system)

Batch system (delayed processing systems)Pada sistem pengolahan data secara batch processing system, tiap transaksi(misalnya formulir sensus, kartu pencoblosan pemilihan ketua umum, atauanswer sheet ujian calon mahasiswa) dibundel dalam jumlah lembar tertentuuntuk direkam. Demikian pula sistem batch dalam siklus akuntansi keuangan(book keeping untuk mencatat transaksi ke dalam jurnal, posting ke bukubesar dan buku pembantu, serta pengolahan untuk menghasilkan laporankeuangan) dilakukan tidak pada saat transaksi itu terjadi. Sistem pengolahandata lebih bersifat back office system, yaitu semata-mata untuk mengolahdata dokumen-dokumen akuntansi yang transaksinya sudah lewat. Jadipengolahan datanya tertunda (delayed processing). Pada sistem batch iniorientasi utamanya adalah sistem pengolahan data (dahulu disebut sistempengolahan data elektronik, electronic data processing, EDP).Data input yang akan dimasukkan ke sistem informasi berbasis teknologi padahakikatnya dapat dikelompokan dalam tiga tahapan, yaitu (1) data capture(penangkapan data, pengisian dokumen sumber atau source document), (2)data preparation (penyiapan data untuk di entry), (3) data entry (pemasukandata) merupakan proses merekam atau memasukan data ke komputer, suatuproses mengubah data ke dalam bentuk yang dapat dibaca oleh mesin(machine readable form).

On line transaction processing systemOn line transaction processing system (pada umumnya bersifat realtime system)Cara pemrosesan data input yang lain yang lebih lazim pada saat iniadalah dengan online transaction processing system. Pada sistemtersebut data masukan dientri dengan workstation/terminal ataujenis input device seperti ATM (automatic teller machine) dan point ofsales (POS). Meskipun online bisa saja dengan memakai pola batch,tetapi biasanya online dikaitkan dengan real time system, artinyaupdating data di komputer bersamaan dengan terjadinya transaksi.Contoh dari pengendalian input :n Otoritas dan validasi masukann Transmisi dan konversi datan Penanganan kesalahan

Pengendalian keluaran (output controls)Pengendalian keluaran merupakan pengendalian yang dilakukanuntuk menjaga output sistem agar akurat, lengkap, dan digunakansebagaimana mestinya. Pengendalian keluaran (output controls) inididesain untuk menjamin agar output / informasi dapat disajikansecara akurat, lengkap, mutakhir, dan didistribusikan kepada orang-orang yang berhak (para user) secara cepat dan tepat waktu. Yangtermasuk pengendalian keluaran antara lain adalah :n Rekonsiliasi keluaran dengan masukan dan pengolahan

Rekonsiliasi keluaran dilakukan dengan cara membandingkanhasil keluaran dari sistem dengan dokumen asal.

n Penelaahan dan pengujian hasil-hasil pengolahanPengendalian ini dilakukan dengan cara melakukan penelaahan,pemeriksaan dan pengujian terhadap hasil-hasil pengolahan darisistem. Proses penelaahan dan pengujian ini biasanya dilakukanoleh atasan langsung pegawai.

Pendistribusian keluaran

Pengendalian ini didesain untuk memastikanbahwa keluaran didistribusikan kepada pihakyang berhak, dilakukan secara tepat waktudan hanya keluaran yang diperlukan saja yangdidistribusikan.Contoh dari pengendalian output :n Rekonsiliasi keseluruhann Penelaahan dan pengujian hasil pengolahann Distribusi keluaran

Sifat-Sifat Pengendalian InternalMenurut Gondodiyoto (2007), pengendalian internal digolongkan dalampreventive, detection, corrective :n Preventive control, yaitu pengendalian internal yang dirancang dengan

maksud untuk mengurangi kemungkinan (atau mencegah/menjagajangan sampai terjadi kesalahan, kekeliruan, kelalaian, error) maupunpenyalahgunaan (kecurangan, fraud)

n Detection control, yaitu pengendalian yang didisain dengan tujuan agarapabila data direkam (di-entry)/dikonfersi dari media sumber (mediainput) untuk di transfer ke sistem komputer dapat dideteksi apabilaterjadi kesalahan (maksudnya tidak sesuai dengan kriteria yangditetapkan).

n Corrective control, ialah pengendalian yang sifatnya jika terdapat datayang sebenarnya error tetapi tidak terdeteksi oleh program validasi,harus ada prosedur yang jelas tentang bagaimana melakukanpembetulan terhadap data yang salah dengan maksud untuk mengurangikemungkinan kerugian atau kesalahan/ penyalahgunaan tersebut sudahbenar-benar terjadi.

Kelompok Pegendalian Internal

Pengendalian intern dikelompokkan dalampengendalian yang bersifat wajib (mandatory)dan yang opsionaln Jika ada peraturan dari pemerintah DKI bahwa

setelah jam 24.00 ruang ATM harus dikunci dalamrolling-door misalnya, maka ketentuan tersebutadalah mandatory.

n Jika ketentuan pengamanan ruang ATM tersebuttidak harus dilakukan, maka termasukpengendalian yang bersifat opsional.

Aktivitas Pengendalian

Menurut Weygandt (2011), terdapat enamprinsip aktivitas pengendalian, yaitu:n Penetapan tanggung jawabn Pembagian tugasn Prosedur dokumentasin Pengendalian fisikn Verifikasi internal yang dilakukan secara

independenn Pengendalian sumber daya manusia

Fungsi Internal AuditorMenurut Hunton et.al. dalam Basalamah (2011), seorang auditor TI sebaiknya ampumelakukan pekerjaan-pekerjaan sebagai berikut:n Mengevaluasi pengendalian atas aplikasi-aplikasi tertentu, yang mencakup analisis

terhadap risiko dan pengendalian atas aplikasi-aplikasi seperti e-business, sistemperencanaan sumber daya perusahaan.

n Memberikan asersi (assurance) atas proses-proses tertentu, seperti audit denganprosedur-prosedur tertentu yang disepakati bersama dengan auditee mengenailingkup asersi.

n Memberikan asersi atas aktifitas pengolahan data pihak ketiga dengan tujuanuntuk memberikan asersi bagi pihak lain yang memerlukan informasi mengenaiaktifitas pengendalian data yang dilakukan oleh pihak ketiga tersebut.

n Pengujian penetrasi, yaitu upaya untuk mengakses sumber daya informasi gunamenemukan kelemahan-kelemahan yang ada dalam pengolahan data tersebut.

n Memberikan dukungan atas pekerjaan audit keuangan yang mencakup evaluasiatas risiko dan pengendalian TI yang dapat mempengaruhi kehandalan sistempelaporan keuangan.

n Mencari kecurangan yang berbasis TI, yaitu menginvestigasi catatan-catatankomputer dalam investigasi kecurangan.