Management Control Framework (3-4) CDG4I3 / Audit Sistem Informasi Angelina Prima K | Gede Ary W. KK SIDE - 2014 Management Control Framework 1. Top management controls 2. System development management controls 3. Programming management controls 4. Data resources management controls 5. Security management controls 6. Operations management controls 7. Quality assurance management controls 3. Programming Management Controls Introduction Karakteristik program yang berkualitas: – Fungsi-fungsi berjalan dengan tepat dan lengkap – Memiliki antarmuka pengguna yang berkualitas – Bekerja secara efisien – Dirancang dan didokumentasikan dengan baik – Pemeliharaannya mudah – Kuat, sekalipun dalam kondisi yang tidak normal Introduction The program development life cycle: Planning Design Coding Testing Operation and maintenance 3a. Planning Manajemen harus: – mengestimasi kebutuhan sumber daya (terutama SDM) untuk tahap pengembangan, akuisisi, dan implementasi. – menentukan pendekatan desain, implementasi, integrasi, pengujian dan organisasi tim proyek yang sesuai. Auditor mengevaluasi: – apakah karakteristik perencanaan yang diambil sesuai dengan berbagai tipe perangkat lunak yang dibangun – seberapa baik perencanaan telah dilakukan Evidence: wawancara, observasi, dan review dokumentasi 3b. Control Tujuan: – Mengawasi progress selama siklus pengembangan – Memastikan bahwa produk otentik, akurat, dan lengkap Teknik: WBS (Work Breakdown Structure), Gantt charts, PERT (Program Evaluation and Review Technique), prosedur review dan kontrol akses. Auditor mengevaluasi: – Apakah karakteristik aktivitas kontrol sesuai dengan berbagai tipe perangkat lunak yang dibangun – Apakah prosedur kontrol telah dilakukan dan dapat diandalkan 3c. Design Di tahap desain, programmer menentukan struktur dan operasi dari program yang paling sesuai untuk memenuhi kebutuhan sistem. Auditor mengevaluasi: – apakah pendekatan yang digunakan oleh programmer sudah sistematis dan sesuai dengan kebutuhan sistem. – mencari bukti proses pengendalian kualitas selama tahap perancangan perangkat lunak Evidence: wawancara, observasi dan review dokumen. 3d. Coding Jika ada perangkat lunak yang perlu dibangun/ dikembangkan, programmer menulis dan mendokumentasikan source code dalam bahasa pemrograman tertentu sesuai dengan rancangan. Auditor mengevaluasi: – Apakah pemilihan strategi implementasi dan integrasi sudah tepat – Apakah strategi coding yang dipilih sudah terstruktur dan diikuti dengan baik – Apakah ada fasilitas otomatis yang digunakan, misal CASE – Apakah dokumentasi program berkualitas baik 3e. Testing Pada tahap ini, program yang ada dievaluasi untuk menentukan apakah kebutuhan sistem telah tercapai. – Mengidentifikasi error dari rancangan atau kode program, bahkan spesifikasi yang tidak akurat/ tidak lengkap. Audit fokus pada efektivitas dan efisiensi, sehingga tahap testing berkaitan erat dengan sasaran audit. Level pengujian: – Unit testing: menguji modul secara individual – Integration testing: menguji sekelompok modul terkait – Whole-of-program testing: menguji secara keseluruhan Auditor dapat melakukan wawancara, observasi, dan review dokumen 3f. Operation and Maintenance Saat program sudah digunakan dalam operasional harian, auditor berkepentingan untuk mengevaluasi apakah performansi program diawasi dengan tepat. Pemeliharaan dapat berupa: 1. Perbaikan: jika ditemukan kesalahan 2. Adaptasi: jika ada perubahan yang diperlukan 3. Penyempurnaan: untuk meningkatkan efektivitas dan efisiensi Auditor harus memastikan bahwa ada laporan rutin terkait operasionalisasi dan pemeliharaan program yang terkendali dengan baik. Organizing the programming team Struktur organisasi yang tepat dapat mempengaruhi performansi tim. Contoh struktur organisasi: Chief Programmer Support Support programmer programmer – Chief programmer Librarian Backup programmer Project leader – Adaptive team – Controlled-decentralized team Senior prog Programmer (temporary leader) Programmer Programmer Programmer Junior prog Senior prog Junior prog Senior prog Junior prog Programmer Junior prog Junior prog Controls over Programmers Programmer biasa dibedakan dalam 2 kelompok: – Programmer aplikasi – Programmer sistem (mengelola OS, DBMS, dll) Meskipun sulit, auditor harus menerapkan kontrol dengan cara: 1. Pekerjakan staf dengan kualitas tinggi 2. Sebisa mungkin lakukan separation of duty 3. Tentukan dan dokumentasikan metode serta standar performansi 4. Batasi ‘kekuasaan’ programmer sistem 5. Catat aktivitas programmer (dalam log otomatis) 6. Lakukan evaluasi dengan melibatkan konsultan eksternal 7. Programmer aplikasi secara periodik mengevaluasi programmer sistem 4. Data Resource Management Controls Introduction Berbagai organisasi menyadari pentingnya data sebagai sumber daya kritis yang harus dikelola dengan baik. Sasaran: 1. 2. 3. 4. Shareability. Pengguna harus dapat berbagi data Availability. Data harus tersedia pada waktu, tempat dan dalam bentuk yang tepat Evolvability. Data harus mudah dimodifikasi sesuai perubahan kebutuhan pengguna Integrity. Integritas data harus terjamin Solusi: – Teknis: DBMS dan data repository system (DRS) – Administratif: data administration (DA) dan DBA DA/ DBA Responsibilities Fungsi DA DBA Defining data Merencanakan data strategis, kebutuhan pengguna, skema konseptual dan eksternal. Menentukan skema internal (berbasis komputer). Creating data Menyarankan prosedur pengumpulan data oleh user, kriteria validasi dan perubahan. Mempersiapkan program untuk create data, mendampingi pengumpulan data dalam basis data. Redefining/ restructuring data Menentukan skema konseptual dan eksternal baru, menyarankan user untuk menyesuaikan diri dengan definisi baru. Menentukan skema internal baru, mengubah basis data sesuai dengan skema baru. Retiring data Menentukan kebijakan retirement. Menerapkan kebijakan retirement. Making DB available to users Menentukan kebutuhan end-user tentang tools DB, menguji dan mengevaluasi tools tersebut. Menentukan kebutuhan programmer dari tools DB, menentukan optimisasi yang diperlukan, menguji dan evaluasi programmer serta tools optimisasi . Informing and servicing users Menjawab end-user queries, mengedukasi end-user, memberikan informasi tentang skema konseptual dan eksternal. Menjawab programmer queries, mengedukasi programmer, menyediakan informasi skema internal. Maintaining DB integrity Menyusun strandar organisasi, mendampingi end-user menformulasi kontrol aplikasi. Menerapkan kontrol DB, mendampingi programmer untuk merancang dan menerapkan kontrol aplikasi. Monitoring operations Mengawasi pola penggunaan DB oleh enduser. Mengawasi pola penggunaan DB oleh programmer, mengumpulkan statistik performansi, tuning DB. Importance of DA and DBA on Audit Auditor harus memahami fungsi DA dan DBA. Alasan: 1. Jika DA dan DBA tidak menjalankan fungsinya dengan baik, sulit ditentukan apakah pengamanan aset, integritas data, efektivitas dan efisiensi sistem dalam DB. 2. DA dan DBA adalah sumber penting informasi kelebihan dan kekurangan lingkungan DB. 3. DA dan DBA menyediakan informasi penting administratif dan teknis yang perlu diketahui oleh auditor. How to Audit DA and DBA Functions (#1) 1. Defining, creating, redefining, and retiring data – Wawancara serta observasi langsung DA dan DBA untuk mengetahui performansi mereka – Mengevaluasi sampel dokumen (kualitas desain skema, kontrol perubahan skema, dan kebijakan data retirement) – Wawancara pengguna tentang seberapa baik performansi DA dan DBA 2. Making the DB available to users – Wawancara DA dan DBA tentang aktivitas untuk ketersediaan data – Wawancara pengguna tentang kepuasan dalam akses dan penggunaan DB – Evaluasi machine logs dan manual logs sebagai bukti penggunaan – Jika perlu, lakukan pengujian detail tentang sistem aplikasi yang menggunakan DB, apakah beroperasi dengan efektif dan efisien atau tidak How to Audit DA and DBA Functions (#2) 3. Informing and servicing users – Wawancara DA dan DBA tentang prosedur dalam menyampaikan informasi dan melayani pengguna – Evaluasi kualitas sistem komunikasi, dokumentasi dan messaging – Wawancara sampel pengguna untuk konfirmasi kepuasan terhadap performansi DA dan DBA 4. Maintaining DB integrity – Wawancara DA dan DBA tentang kontrol yang diterapkan untuk mengelola integritas DB – Wawancara pengguna DB tentang awareness terhadap kontrol tsb – Observasi pengguna saat mengakses dan mengubah DB – Jika perlu, lakukan pengujian detail tentang aplikasi DB yang digunakan How to Audit DA and DBA Functions (#3) 5. Monitoring operations – Wawancara DA dan DBA tentang prosedur yang digunakan untuk mengawasi DB – Evaluasi dokumentasi terkait statistik yang dikumpulkan dan aksi yang dilakukan untuk meningkatkan performansi – Wawancara/ sebarkan kuesioner ke sampel pengguna untuk konfirmasi apakah sistem telah berjalan efektif dan efisien – Jika perlu, lakukan pengujian detail untuk memastikan bahwa sasaran perlindungan aset dan integritas data telah diupayakan Placement of the DA Role Di organisasi strategic atau turnaround, SI memegang peran penting untuk keberhasilan organisasi. DA cocok ditempatkan di posisi dengan kekuasaan cukup besar (a). Di organisasi support atau factory, DA sebaiknya diletakkan di bahwa kontrol orang yang bertanggung jawab atas fungsi SI (b). Placement of DBA Role Posisi DBA tidak bergantung pada karakteristik organisasi. DBA harus punya posisi di bawah orang yang mengendalikan fungsi SI. DBA harus bekerja dekat dengan DA, dan dapat berkomunikasi langsung dengan DA. Effects of Decentralization of the IS Function DB management VS desentralisasi – Sasaran DB management adalah perencanaan dan kontrol data secara terpusat – Desentralisasi menyebar fungsi SI agar dekat dengan pengguna Solusi: – Data dibagi dalam 2 set: data pusat dan data lokal – DA dan DBA ada di level korporat (pusat) dan di divisi (lokal) Data Repository System (DRS) Sasaran DB management: – Memfasilitasi evolusi DB – Mengelola integritas data DRS berfungsi untuk menyimpan DB definition yang otentik, akurat, lengkap, konsisten, dan up-to-date bagi: – Aplikasi yang mengakses dan memanipulasi DB – Pengguna yang harus menjalankan aktivitas harian Masalah yang dihadapi dalam implementasi DRS: – DRS biasanya terkait dengan PL lain (DBMS, CASE tool, application generator, dll) – Pengelolaan DRS tunggal jadi sulit jika fungsi SI terdistribusi – Sulit membangun DRS yang mendukung semua kebutuhan penggunaan secara efektif dan efisien Audit Aspects of DRS Jika organisasi menerapkan DRS: – Keandalan kontrol terhadap data dan sistem aplikasi meningkat – Organisasi bergantung pada DD dan DRS agar tidak hilang/ corrupted – DRS memfasilitasi proses audit Data definition (DD) dan DRS dapat digunakan dalam audit: 1. 2. 3. 4. DD dapat diakses untuk menentukan layout catatan Auditor dapat memperoleh kriteria validasi terkait data items yang diaudit Jika auditor menemukan bahwa data items hilang/ corrupted, DRS dapat digunakan untuk mencari tahu file mana yang terpengaruh Auditor dapat mengakses DD untuk menentukan prosedur backup and recovery dari file tertentu Controls over the DA and DBA Tipe-tipe temuan terkait peran DA dan DBA: 1. Kompetensi dan performansi peran yang rendah 2. Peluang terjadinya kecurangan meningkat karena kekuasaan DA dan DBA yang terpusat 3. Penyalah gunaan tools untuk melanggar hak akses Solusi untuk menghindarinya: – Terapkan senioritas dalam peran DA dan DBA, untuk memastikan kompetensi dan tingkat kepercayaan terhadap DA dan DBA – Berikan pelatihan yang cukup agar DA dan DBA dapat bekerja secara efektif dan efisien, serta mengurangi kemungkinan kesalahan – Tentukan pemisahan tugas yang tepat dan jelas bagi DA dan DBA – Gunakan log manual dan otomatis untuk mencatat aktivitas DA dan DBA THANK YOU