123
Pengendalian Aplikasi Pengendalian khusus atau pengendalian aplikasi (application controls) adalah sistem pengendalian intern komputer yang berkaitan dengan pekerjaan atau kegiatan tertentu yang telah ditentukan (setiap aplikasi berbeda karateristik dan kebutuhan pengendaliannya). Misalnya komputerisasi kepegawaian tentu berbeda resiko dan kebutuhan pengendaliannya dengan sistem komputerisasi penjualan, apalagi bila sistem penjualan tersebut didesain web-based atau E-Commerce. Pengendalian aplikasi terdiri dari : a). b). c). d).
Pengendalian masukan atau input controls. Pengendalian proses pengolahan data atau process controls. Pengendalian keluaran atau output controls. Pengendalian file/database atau files/database controls.
Penanggungjawab atau yang menentukan tipe pengendalian aplikasi ialah penanggungjawab teknis tim aplikasi, yaitu desainer sistem atau sistem analisnya. Unsur-unsur sistem pengendalian intern aplikasi ialah: a. Boundary Controls Pengendalian batas-batas sistem aplikasi (boundary controls) ialah bahwa tiap sistem aplikasi komputer harus jelas desainnya mengenai: Ruang lingkup sistem Subsistem dan keterkaitan b. Pengendalian Input Mengapa diperlukan pengendalian input? Karena input merupakan salah satu tahap dalam sistem komputerisasi yang paling krusial dan mengandung resiko! Resiko yang dihadapi misalnya ialah: Data transaksi yang ditulis oleh pelaku transaksi salah (error). Kesalahan pengisian dengan kesengajaan disalahkan Penulisan tidak jelas sehingga dibaca salah oleh orang lain (misalnya petugas yang harus meng-entry data tersebut ke komputer), khususnya bila yang diolah bukan dokumen aslinya, melainkan tembusan. b.1. Batch System Cara pemrosesan data input antara lain dengan sistem batch processing, data diolah dalam satuan kelompok (bundel) dokumen, dan delayed processing system (pengolahan bersifat tertunda, yaitu updating data di komputer tidak sama dengan terjadinya transaksi).
124
Pengendalian input dalam sistem batch dilakukan pada tahap:
Data Capturing Batch Data Preparation Batch Data Entry Validation
Dengan demikian pada semua tahap tersebut dilakukan pengendalian input (menjaga jangan sampai input yang salah dapat masuk ke sistem komputerisasi). Secara terinci dapat dilihat pada tabel-6.3 pada bagian akhir bab ini. b.2. On-line Real time Entry Validation Pengendalian input sistem on-line real time dilakukan pada tahap: Entry Data & Validation Pada batch processing system lazimnya entri data dilakukan petugas data entry (petugas teknis unit komputer), sedangkan dalam sistem on-line real-time lazimnya entri data oleh pemakai langsung (misalnya para pelanggan atau nasabah bank) maupun para petugas operasional (sudah tidak dikatagorikan sebagai pegawai komputer lagi, misalnya: nasabah yang mengambil uang di ATM, petugas front office hotel, bank teller. Dalam sistem komputerisasi, khususnya yang menggunakan sistem on-line real-time, paperless, maka masalah jejak pemeriksaan (audit trail) menjadi makin penting. Oleh karena itu masalah audit trail antara lain dalam bentuk existence controls harus betul-betul diperhatikan. Sampai awal dekade 1980-an hampir seluruh sistem pengolahan data dengan komputer masih menggunakan sistem batch. Pada waktu itu antara komputer (mainframe) dengan mesin data entry terdapat perbedaan sistem, fungsional, dan kemampuan yang cukup mendasar. Dengan diintrodusirnya komputer mikro yang makin murah maka tidak ada alasan lagi untuk memisahkan mesin data entry dengan sistem komputer. Mungkin karena beberapa alasan tertentu pada saat ini masih ada beberapa sistem aplikasi komputer yang masih menggunakan pola batch processin system. Hal-hal apa yang perlu kita perhatikan sehubungan dengan pengendalian sistem online dengan batch. Sudah jelas bahwa resiko pada sistem on-line real-time makin tinggi, karena: Entry point, lokasi masuknya data input ke sistem komputer tersebar. Hubungan on-line menyangkut komunikasi antar mesin secara remote yang terhubung melalui sarana dan teknologi komunikasi, jadi makin kompleks dan canggih.
125
Dalam sistem real-time, artinya status data pada file tidak statis, tetapi selalu dinamis bergerak secara terus menerus. Kalau kita mencetak baki terakhir saldo bantuan banjir nilainya Rp.1.000,mungkin satu jam lagi nilai tersebut sudah berubah. Ingat pula data hasil pemilu yang selalu di-update dan ditayangkan sebagai banner di televisi. Kalau terjadi gangguan, misalnya listrik atau saluran komunikasi, mungkin akan ada problem recovery point, di mana starting point proses harus diulang kembali? Dengan sistem paperless maka problem jejak audit dan kebutuhan bahan bukti tercetak menjadi kendala tersendiri. Pada umumnya perusahaan sekarang ini menggunakan jaringan publik karena biaya yang lebih murah dan alasan keterbukaan akses ke pasar, vendor, patners, dan lingkungan perusahaan lain (entity’s environment). Konsekuensi dari hal tersebut adalah tingkat keamanan sistem dan data. Makin terbuka suatu organisasi terhadap lingkungannya berarti tingkat kerawanan keamanan akan makin meningkat, tetapi itu adalah pilihan/tantangan. Kalau ingin maju ya harus berani menghadapi resiko. Masalahnya ialah bagaimana meminimalisir resiko dengan pengendalianpengendalian yang lebih optimal. Ditinjau dari sifatnya, pengendalian input juga dapat dibedakan dalam tipe pengendalian preventif (pencegahan), pengendalian detektif (deteksi/jangan sampai suatu data input yang salah tak terdeteksi dapat lolos masuk ke sistem komputerisa-si), dan pengendalian korektif (jika ternyata diketemukan data error yang sudah telanjur masuk ke sistem aplikasi, prosedur pembetulannya bagaimana). Pengendalian Bersifat Prevention Objective Contoh pengendalian yang bersifat preventif misalnya ialah siapkan manual (buku pedoman kerja/prosedur tertulis) untuk cara-cara memasukkan data ke file komputer. Cara lain ialah perlunya pelatihan bagi para pengguna atau operatornya. Letak/ lingkungan/ bentuk layar perekaman yang baik juga merupakan faktor-faktor yang menentukan kenyaman perekaman data. Makin nyaman diharapkan tingkat kesalahan yang disebabkan oleh kejenuhan dan kelelahan akan makin kecil. Pengendalian lain mialnya ialah pembatasan access secara fisik (contoh ruang ATM), adanya aturan otorisasi (contohnya adanya PIN), identifikasi terminal dan operatornya (password tertentu), proteksi dari fragmentasi. Pengendalian Bersifat Detection Objective Contoh pengendalian intern yang bersifat detection objective misalnya ialah validasi kesesuaian kode/ identitas./ PIN/ Account-ID antara yang dientri dengan yang ada di file komputer, validasi atas field tertentu,
126
misalnya tanggal (Februari tidak mengenal tanggal 30 atau 31, dan sebagainya), pengujian kelasifikasi/ validitas kode, permintaan komputer di layar agar pemakai merekam identitas 2x atau diminta tanggal lahir. Jenis pengujian lain misalnya cek karakter yang sahih/ uji field (numeric test), Limit test (misalnya umur tidak boleh melebihi 35 tahun), Check digit test, Data echo check test. Check-digit ialah suatu angka tambahan yang diletakkan pada deretan terakhir dari suatu kode yang dihitung dengan rumusan/formulasi angka tertentu. Contohnya Nomor Induk Mahasiswa (NIM), aslinya adalah : 12345. Misalnya kita menggunakan rumus (1+2+3+4+5) – 11= 4., berarti checkdigitnya adalah 4, sehingga den gan demikian NIM barunya menjadi 123454 Sudah tentu rumus tersebut tidak dibuat sembarangan, melainkan hasil pengkajian. Sekarang ini sudah terdapat rumus-rumus, yang disebut modulus 10, modulus 11, yang dipersiapkan oleh ahli-ahli tertentu dengan tingkat akurasi yang sudah diuji. Pengendalian Bersifat Correction Objective Dalam pengendalian intern yang bersifat correction objective perlu disusun prosedur pembetulan data apabila ternyata terdapat data salah yang lolos ke sistem. Lazimnya terdapat dua prosedur yang berkaitan dengan hal ini, yaitu: Bila kesalahan adalah Keying Error, cara pelaksanaan pembetulan ialah dengan merekam ulang (pembetulan data). Bila Source Error, artinya kesalahan bukan di pihak sistem pengolahan data, melainkan dari sumbernya. Cara pembetulannya apabila terjadi kesalahan semacam itu maka harus diklarifikasi kepada asal datanya. c. Pengendalian proses Pengendalian proses (processing controls) ialah pengendalian intern untuk mendeteksi jangan sampai data (khususnya data yang sesungguhnya sudah valid) menjadi error karena adanya kesalahan proses. Kemungkinan yang paling besar untuk menimbulkan terjadinya error adalah kesalahan logika program, salah rumus, salah urutan program, ketidakterpaduan antar subsistem atupun kesalahan teknis lainnya. Kemungkinan terjadinya kesalahan lain ialah programmer salah menterjemahkan spesifikasi yang diberikan oleh sistem analis, program dibuat dengan tidak mengikuti standar (struktur, language, tidak dites dengan memadai). Kesalahan yang “levelnya tinggi” adalah sistem (dan program-programnya) dibuat tidak sesuai dengan kebutuhan pemakasi (usernya).
127
Seperti halnya dalam tahapan input, proses proses pengolahan (processing controls) juga dapat bersifat batch processing system (proses dan updating data dilakukan secara periodik). Dalam pola proses batch ini status file bersifat periodik, dan up-to-date-nya selalu tertunda (delayed), artinya stiap transaksi baru akan diolah datanya di komputer beberapa saat (mungkin hari/minggu/bulan) kemudian. Pengendalian program aplikasi yang bersifat prosedural yang perlu dilakukan ialah dokumentasi program dan tes secara lengkap, pelaksanaan tes yang memadai, program yang sudah well-tested di compile dan dari source code dijadikan absolut code dan dikelola oleh librarian, prosedur program change request yang formal. Dari segi desain atau rancangan hendaknya setiap program dilengkapi mekanisme kontrol sistem maupun bagi dirinya sendiri. Misalnya tiap program yang read dan write data selalu melakukan count, sehingga program berikutnya yang melakukan hal yang sama akan dapat menunjukkan konsistensi jumlah masukan dan keluaran. Selama proses berlangsung di dalam suatu program atau antar program selalu lakukan cek untuk kontrol. Kontrol yang dilakukan misalnya batch controls untuk mengecek kesesuaian hitungan komputer terhadap record data dengan nilai yang tertulis pada batch header record, perlu audit trail berupa laporan tercetak. Bentuk pengendalian lainnya misalnya adalah: Processing logic check Run-to-run check Inter-sub-systems check File and program check Audit trail linkage Ditinjau dari sugi pandang sistem informasi akuntansi, potensi resiko error adalah kurangnya akurasi/keandalan data karena data diolah tidak sesuai aturan sistem akuntansi, misalnya salah akun (ledger), salah periode, debit/ kredit, tidak sesuai atau kurang adanya ketaatan pada kebijakan/ sistem akuntansi), kurang sesuai prinsip pengamanan assets dan record. Metodologi pemeriksaan kecukupan pengendalian bersifat detektif yang dapat dilakukan misalnya ialah pemeriksaan label file, pengujian identifikasi record, pengujian kode transaksi, sequence test, anticipation control, validasi untuk mendeteksi error pengolahan, arithmetic accuracy test, dual field input, data reasonable test, data limit test, cross footing test, pengendalian saldo subsistem ((system balancing controls,) dan inter subsystem totals, serta run to run totals. Metoda pengendalian yang bersifat corective objectives misalnya ialah perlakuan terhadap data (yang error), mekanisme koreksi Error. Dalam sistem proses data per batch bila terjadi error yang bukan bersifat keying error pada salah satu record, lazimnya record tersebut dihapus dari batch yang bersangkutan. Jika tipe kesalahannya adalah keying error, maka
128
dengan mudah dilakukan pembetulan. Akan tetapi kalau salah karena source error maka agar tidak mengganggu records lainnya data tersebut perlu dipisahkan dan dibuat batch baru. Dalam hal ini prosedur pembetulan harus jelas dan dimengerti oleh semua pihak. Sekali lagi perlu dipahami mekanisme jejak audit. Salah satu bentuknya ialah perlunya laporan kegiatan pengolahan untuk pelacakan bila terjadi masalah, tersedia dokumentasi program untuk trace-back, adanya laporan pemakaian file yang dapat dilacak bila ada masalah, dan rancangan break points. Break points adalah mekanisme yang dirancang untuk mengantisipasi bila ada system down, maka starting point dalam recovery-nya jelas. Hal ini menjadi makin penting untuk suatu job-run yang run-time-nya panjang. Suatu proses panjang yang terhenti secara tidak normal akan mengakibatkan proses ulang dari awal atau dari suatu titik tertentu yang disiapkan. d. Pengendalian Hasil keluaran Pengendalian keluaran (output controls) ialah pengendalian intern untuk mendeteksi jangan sampai informasi yang disajikan tidak akurat, tidak lengkap, tidak mutakhir datanya, atau didistribusikan kepada orangorang yang tidak berhak. Kemungkinan resiko yang dihadapi yang terkait dengan keluaran ialah seperti telah disebutkan di atas: laporan tidak akurat, tidak lengkap, terlambat atau data tidak uptodate, banyak item data yang tidak relevan, bias, dibaca oleh pihak yang tidak berhak. Dalam sistem yang sudah lebih terbuka (menggunakan jaringan komuni-kasi publik) potensi akses oleh hacker, cracker atau orang yang tidak berwenang lainnya menjadi makin tinggi. Metoda pengendalian bersifat preventive objective misalnya ialah perlunya disediakan tabel pelaporan: jenis laporan, periode pelaporan, dan siapa pengguna, serta check-list konfirmasi tanda terima oleh penggunanya, prosedur permintaan laporan rutin/on-demand, atau permintaan laporan baru. Pengendalian bersifat detection objective misalnya ialah cek antar program pelaporan, perlunya dibuat nilai-nilai subtotal dan total yang dapat diperbandingkan untuk mengevaluasi keakurasian laporan, judul dan kolom-kolom laporan perlu didesain dengan sungguh-sungguh. Pengendalian yang bersifat corrective objective misalnya ialah prosedur prosedur klaim ketidakpuasan pelayanan, tersedianya help-desk dan contact person, persetujuan dengan users mengenai service level yang disepekati. e. Pengendalian Data/ File/ Database Perlu diperhatikan bahwa pada uraian di depan telah disinggung bahwa salah satu unsur pengendalian umum adalah manajemen sumber data (data resources management controls). Pertanyaannya kemudian ialah apa hubungannya dengan pengendalian data/file/database aplikasi. Dalam
129
suatu instalasi sistem database yang sudah komprehensif dan terpadu, mungkin kebijakan manajemen sumber data telah memenuhi hampir seluruh kebutuhan pengendalian, termasuk kebutuhan spesifik aplikasi. Tetapi bila kebutuhan khusus aplikasi masih diperlukan, maka on-top dari yang telah didesain secara umum pada pengendalian umum, tiap-tiap aplikasi bisa menambahkan kebutuhan spesifiknya, misalnya menyangkut: Akses database (access controls) yang spesifik pada file aplikasi. Existence controls, dilihat dari sudut pandang atau lingkup aplikasi saja. Audit-trail f. Pengendalian Komunikasi Aplikasi Masalah resiko yang berkaitan dengan jaringan menjadi makin penting karena kini organisasi/perusahaan harus berani terjun ke jaringan terbuka (jaringan publik) dimana everybody is member of the virtual community, global worl wide. Kini kita tidak hanya “beruusan” dengan pihak-pihak di sekitar kita, melainkan dengan setiap pihak di seluruh dunia yang kemampuan teknis, budaya, aturan dan kulturnya berbeda-beda. Sama seperti pada pengendalian database. Dalam suatu instalasi sistem komputerisasi yang sudah canggih jaringan komunikasi datanya, kebijakan atau manajemen jaringan diharapkan telah memenuhi hampir seluruh kebutuhan pengendalian, termasuk kebutuhan spesifik aplikasi. Tetapi bila kebutuhan khusus aplikasi masih diperlukan, maka on-top dari yang telah didesain secara umum pada pengendalian umum, tiap-tiap aplikasi bisa menambahkan kebutuhan spesifiknya, misalnya menyangkut: Audit-trail Pengendalian atas kegagalan unjuk-kerja Concurrency, cryptographic controls Pengaturan tentang digital signature maupun electronic signature.
130
INTERNAL CONTROL STRUCTURE
ADMINISTRATIVE CONTROLS
ACCOUNTING CONTROLS
PLAN OF ORGANIZATION
ORGANIZATION PLAN
OPERATIONAL EFFICIENCY METHODS PROCEDURES
SAFEGUARDING ASSTES METHODS – PROCEDURES
ADHERENCE TO MGR POLICY METHODS – PROCEDURES
ACCURACY/RELIABILI TY OF ACCT-DATA METHODS- PROC ESSENTIAL CHARACTERISTIC QUALITY PERSONNEL SEGGR. OF FUNCTIONS TRANSACTSAUTHORIZED PROPER RECORDING ASSETS CONTROL ACCESS COMPARE ASSETRECORD EDP ACCOUNTING CONTROLS GENERAL CONTROLS APPLICATION CONTROLS
Tabel 6.2: Hierarchy of EDP Internal Control System Sumber Watne(1984, p.99)