Selasa, 26 Februari 2019

Post-Test Tools Lain Untuk Melakukan Audit TI



Definisi Audit Teknologi Informasi (IT AUDIT)
Audit teknologi informasi (Inggris: information technology (IT) audit atau information systems (IS) audit) adalah bentuk pengawasan dan pengendalian dari infrastruktur teknologi informasi secara menyeluruh. Audit teknologi informasi ini dapat berjalan bersama-sama dengan audit finansial dan audit internal, atau dengan kegiatan pengawasan dan evaluasi lain yang sejenis. Pada mulanya istilah ini dikenal dengan audit pemrosesan data elektronik, dan sekarang audit teknologi informasi secara umum merupakan proses pengumpulan dan evaluasi dari semua kegiatan sistem informasi dalam perusahaan itu. Istilah lain dari audit teknologi informasi adalah audit komputer yang banyak dipakai untuk menentukan apakah aset sistem informasi perusahaan itu telah bekerja secara efektif, dan integratif dalam mencapai target organisasinya. –Wikipedia
Secara umum Audit IT adalah suatu proses kontrol pengujian terhadap infrastruktur teknologi informasi dimana berhubungan dengan masalah audit finansial dan audit internal. Audit IT lebih dikenal dengan istilah EDP Auditing (Electronic Data Processing), biasanya digunakan untuk menguraikan dua jenis aktifitas yang berkaitan dengan komputer. Salah satu penggunaan istilah tersebut adalah untuk menjelaskan proses penelahan dan evaluasi pengendalian-pengendalian internal dalam EDP. Jenis aktivitas ini disebut sebagai auditing melalui komputer. Penggunaan istilah lainnya adalah untuk menjelaskan pemanfaatan komputer oleh auditor untuk melaksanakan beberapa pekerjaan audit yang tidak dapat dilakukan secara manual. Jenis aktivitas ini disebut audit dengan komputer.
Audit IT sendiri merupakan gabungan dari berbagai macam ilmu, antara lain Traditional Audit, Manajemen Sistem Informasi, Sistem Informasi Akuntansi, Ilmu Komputer, dan Behavioral Science. Audit IT bertujuan untuk meninjau dan mengevaluasi faktor-faktor ketersediaan (availability), kerahasiaan (confidentiality), dan keutuhan (integrity) dari sistem informasi organisasi.

IT Audit Tools (Software)
Tool-tool yang dapat digunakan untuk membantu pelaksanaan Audit Teknologi Informasi. Tidak dapat dipungkiri, penggunaan tool-tool tersebut memang sangat membantu Auditor Teknologi Informasi dalam menjalankan profesinya, baik dari sisi kecepatan maupun akurasinya.
Berikut beberapa software yang dapat dijadikan alat bantu dalam pelaksanaan audit teknologi informasi
a.    ACL
ACL (Audit Command Language) merupakan sebuah software CAAT (Computer Assisted Audit Techniques) yang sudah sangat populer untuk melakukan analisa terhadap data dari berbagai macam sumber.
ACL for Windows (sering disebut ACL) adalah sebuah software TABK (TEKNIK AUDIT BERBASIS KOMPUTER) untuk membantu auditor dalam melakukan pemeriksaan di lingkungan sistem informasi berbasis komputer atau Pemrosesan Data Elektronik.
b.   Picalo
Picalo merupakan sebuah software CAAT (Computer Assisted Audit Techniques) seperti halnya ACL yang dapat dipergunakan untuk menganalisa data dari berbagai macam sumber.Picalo bekerja dengan menggunakan GUI Front end, dan memiliki banyak fitur untuk ETL sebagai proses utama dalam mengekstrak dan membuka data, kelebihan utamanya adalah fleksibilitas dan front end yang baik hingga Librari Python numerik.
Berikut ini beberapa kegunaannya :
·      Menganalisis data keungan, data karyawan
·      Mengimport file Excel, CSV dan TSV ke dalam database
·      Analisa event jaringan yang interaktif, log server situs, dan record sistem login
·      Mengimport email kedalam relasional dan berbasis teks database
·      Menanamkan kontrol dan test rutin penipuan ke dalam sistem produksi.

c.    Powertech Compliance Assessment
Powertech Compliance Assessment merupakan automated audit tool yang dapat dipergunakan untuk mengaudit dan mem-benchmark user access to data, public authority to libraries, user security, system security, system auditing dan administrator rights (special authority) sebuah serverAS/400.
d.   Nipper
Nipper merupakan audit automation software yang dapat dipergunakan untuk mengaudit dan mem-benchmark konfigurasi sebuah router.
Nipper (Jaringan Infrastruktur Parser) adalah alat berbasis open source untuk membantu profesional TI dalam mengaudit, konfigurasi dan mengelola jaringan komputer dan perangkat jaringan infrastruktur.
e.    Nessus
Nessus merupakan sebuah vulnerability assessment software, yaitu sebuah software yang digunakan untuk mengecek tingkat vulnerabilitas suatu sistem dalam ruang lingkup keamanan yang digunakan dalam sebuah perusahaan
f.     Metasploit
Metasploit Framework merupakan sebuah penetration testing tool, yaitu sebuah software yang digunakan untuk mencari celah keamanan.


g.    NMAP
NMAP merupakan open source utility untuk melakukan security auditing. NMAP atau Network Mapper, adalah software untuk mengeksplorasi jaringan, banyak administrator sistem dan jaringan yang menggunakan aplikasi ini menemukan banyak fungsi dalam inventori jaringan, mengatur jadwal peningkatan service, dan memonitor host atau waktu pelayanan. Secara klasik Nmap klasik menggunakan tampilan command-line, dan NMAP suite sudah termasuk tampilan GUI yang terbaik dan tampilan hasil (Zenmap), fleksibel data transfer, pengarahan ulang dan tools untuk debugging (NCAT) , sebuah peralatan untuk membandingan hasil scan (NDIFF) dan sebuah paket peralatan analisis untuk menggenerasikan dan merespon (NPING)
h.   Wireshark
Wireshark merupakan aplikasi analisa netwrok protokol paling digunakan di dunia, Wireshark bisa mengcapture data dan secara interaktif menelusuri lalu lintas yang berjalan pada jaringan komputer, berstandartkan de facto dibanyak industri dan lembaga pendidikan.


Pre Test tentang Apa Itu COBIT ?



COBIT (Control Objectives for Information and Related Technology) adalah sebuah proses model yang dikembangkan untuk membantu perusahaan dalam pengelolaan sumber daya teknologi informasi (IT). Proses model ini difokuskan pada pengendalian terhadap masing-masing dari 34 proses IT, meningkatkan tingkatan kemapanan proses dalam IT dan memenuhi ekspektasi bisnis dari IT.

COBIT menciptakan sebuah jembatan antara manajemen TI dan para eksekutif bisnis. COBIT mampu menyediakan bahasa yang umum sehingga dapat dipahami oleh semua pihak. Adopsi yang cepat dari COBIT di seluruh dunia dapat dikaitkan dengan semakin besarnya perhatian yang diberikan terhadapcorporate governance dan kebutuhan perusahaan agar mampu berbuat lebih dengan sumber daya yang sedikit meskipun ketika terjadi kondisi ekonomi yang sulit.

Fokus utama dari COBIT ini adalah harapan bahwa melaui adopsi COBIT ini, perusahaan akan mampu meningkatkan nilai tambah melalui penggunaan TI dan mengurangi resiko-resiko inheren yang teridentifikasi didalamnya.

COBIT dikembangkan oleh IT Governance Institute (ITGI), yang merupakan bagian dari Information Systems Audit and Control Association (ISACA). Saat ini pengembangan terbaru dari standar ini adalah COBIT Edisi 5.0.

Manfaat yang diberikan oleh informasi dan teknologi pada perusahaan :
1.    Menjaga kualitas informasi untuk mendukung pengambilan keputusan bisnis.
2.  Menghasilkan nilai bisnis dari investasi pemanfaatan IT , yaitu mencapai tujuan strategis dan  merealisasikan manfaat bisnis melalui penggunaan IT yang efektif dan inovatif.
3.   Mencapai keunggulan operasional melalui penerapan teknologi yang handal dan efisien.
4. Menjaga resiko yang behubungan dengan penerapan pada tingkat yang masih bisa ditoleransi mengoptimalkan biaya penggunaan it service dan teknologi

Komponen-Komponen COBIT
COBIT memiliki komponen-komponen sebagai berikut :
a.    Executive Summary
b.   Framework
c.    Control Objective
d.   Audit Guidelines
e.    Management Guidelines
f.     Control Practices

Cobit memiliki 4 Cakupan Domain :

1. Perencanaan dan Organisasi (Plan and Organise)
       Domain ini mencakup strategi dan taktik yang menyangkut identifikasi tentang bagaimana TI dapat memberikan kontribusi terbaik dalam pencapaian tujuan bisnis organisasi sehingga terbentuk sebuah organisasi yang baik dengan infrastruktur teknologi yang baik pula.
2. Pengadaan dan Implementasi (Acquire and Implement)
       Untuk mewujudkan strategi TI, solusi TI perlu diidentifikasi, dibangun atau diperoleh dan kemudian diimplementasikan dan diintegrasikan dalam proses bisnis.
3. Pengantaran dan Dukungan (Deliver and Support)
       Domain ini berhubungan dengan penyampaian layanan yang diinginkan, yang terdiri dari operasi pada security dan aspek kesinambungan bisnis sampai dengan pengadaan training.
4. Pengawasan dan Evaluasi (Monitor and Evaluate)
      Semua proses TI perlu dinilai secara teratur dan berkala bagaimana kualitas dan kesesuaiannya dengan kebutuhan kontrol.
    Keempat domain tersebut diatas kemudian dijabarkan menjadi 34 faktor resiko yang harus dievaluasi jika ingin diperoleh suatu kesimpulan mengenai seberapa besar kepedulian manajemen terhadap teknologi informasi, serta bagaimana teknologi informasi dapat memenuhi kebutuhan manajemen akan informasi.


Jumat, 11 Januari 2019

15 Area Pengendalian dalam Kendali dan Audit Sistem Informasi


Pengendalian TI didefinisikan sebagai suatu pernyataan hasil yang diinginkan atau maksud yang dicapai oleh prosedur pengendalian implementasi dalam kegiatan TI khusus.

Terdapat 15 area pengendalian :

1. Integritas Sistem
a. Ketersediaan dan kesinambungan sistem komputer untuk user
b. Kelengkapan, Keakuratan, Otorisasi, serta proses yg auditable
c. Persetujuan dari user atas kinerja sistem yang di inginkan
d. Preventive maintenance agreements untuk seluruh perlengkapan
e. Kesesuaian kinerja antara S/W dan jaringan dengan yang diharapkan
f. Serta adanya program yang disusun untuk operasi secara menyeluruh

2. Manajemen Sumber Daya
a. Faktor-faktor yang melengkapi integritas sistem
b. Yaitu meyakini kelangsungan (ongoing) H/W, S/W, SO, S/W aplikasi, dan komunikasi jaringan komputer, telah di pantau dan dikelola pada kinerja yang maksimal namun tetap dengan biaya yang wajar.
c. Hal-hal tersebut di dokumentasikan secara formal, demi proses yang berkesinambungan

3. Pengendalian Perubahan S/W Aplikasi dan S/W sistem
a. Menentukan adanya keterlibatan dan persetujuan user dalam hal adanya perubahan terhadap s/w aplikasi dan s/w sistem
b. Setiap pengembangan dan perbaikan aplikasi harus melalui proses formal dan di dokumentasikan serta telah melalui tahapan-tahapan pengembangan sistem yang dibakukan dan disetujui.

4. Backup dan Recovery
a. Demi kelangsungan usaha, harus tersedia data processing disaster recovery planning (rencana pemulihan data dan pusat sistem informasi apabila terjadi kehancuran)
b. Baik berupa backup dan pemulihan normal, maupun rencana contingency untuk kerusakan pusat SI (lokasi gedung, peralatanya, SDM-nya maupun manualnya).

5. Contigency Planning
a. Perencanaan yang komprehenshif di dalam mengantisipasi terjadinya ancaman
b. terhadap fasilitas pemrosesan SI
c. Dimana sebagian besar komponen utama dari disaster recovery plan telah dirumuskan dengan jelas, telah di koordinasikan dan disetujui, seperti critical application systems, identifikasi peralatan dan fasilitas penunjang H/W, sistem S/W dan sebagainya.

6. System S/W Support
a. Pengukuran pengendalian dalam pengembangan, penggunaan, dan pemeliharaan dari S/W SO, biasanya lebih canggih dan lebih cepat perputarannya dibandingkan dengan S/W aplikasiDengan ketergantungan yang lebih besar kepada staf teknik untuk integritas fungsionalnya
b. Pengukuran kendali pengamanan aplikasi individu maupun pengamanan logika sistem secara menyeluruh (systemwide logical security)

7. Dokumentasi
a. Integritas dan ketersediaan dokumen operasi, pengembangan aplikasi, user dan S/W sistem
b. Diantaranya dokumentasi program dan sistem, buku pedoman operasi dan schedule operasi,
c. Untuk setiap aplikasi sebaiknya tersedia dokumentasi untuk tiap jenjang user.

8. Pelatihan atau Training
a. Adanya penjenjagan berdasarkan kemampuan untuk seluruh lapisan manajemen dan staf, dalam hal penguasaannya atas aplikasi-aplikasi dan kemampuan teknisnya
b. Serta rencana pelatihan yang berkesinambungan

9. Administrasi
a. Struktur organisasi dan bagannya, rencana strategis, tanggungjawab fungsional, job description, sejalan dengan metoda job accounting dan/atau charge out yang digunakan
b. Termasuk didalamnya pengukuran atas proses pengadaan dan persetujuan untuk semua sumber daya SI.

10. Pengendalian Lingkungan dan Keamanan Fisik
a. Listrik, peyejuk udara, penerang ruangan, pengaturan kelembaban, serta kendali akses ke sumber daya informasi
b. Pencegahan kebakaran, ketersediaan sumber listrik cadangan,
c. Juga pengendalian dan backup sarana telekomunikasi

11. Operasi
a. Diprogram untuk merespon permintaan/keperluan SO
b. Review atas kelompok SO berdasarkan job schedulling, review yang terus-menerus terhadap operator, retensi terhadap console log message, dokumentasi untuk run/restore/backup atas seluruh aplikasi
c. Daftar personel, dan nomor telepon yang harus dihubungi jika muncul masalah SO, penerapan sistem sift dan rotasi serta pengambilan cuti untuk setiap operator.

12. Telekomunikasi
a. Review terhadap logical and physical access controls,
b. Metodologi pengacakan (encryption) terhadap aplikasi electronic data interchange (EDI)
c. Adanya supervisi yang berkesinambungan terhadap jaringan komputer dan komitmen untuk ketersediaan jaringan tersebut dan juga redundansi saluran telekomunikasi.

13. Program Libraries
a. Terdapat pemisahan dan prosedur pengendalian formal untuk application source code dan compiled production program code dengan yang disimpan di application test libraries development
b. Terdapat review atas prosedur quality assurance.

14. Application Support
a. Bahwa proses tetap dapat berlangsung walaupun terjadi kegagalan sistem
b. Sejalan dengan kesinambungan proses untuk inisiasi sistem baru, manajemen
c. proyek, proses pengujian yang menyeluruh antara user dan staf SI
d. Adanya review baik formal maupun informal terhadap tingkat kepuasan atas SDLC yang digunakan.

15. Microcomputer Controls
a. Pembatasan yang ketat dalam pengadaan, pengembangan aplikasi, dokumentasi atas aplikasi produksi maupun aplikasi dengan misi yang kritis, sekuriti logika, dan fisik terhadap microcomputer yang dimiliki,
b. Serta pembuatan daftar inventaris atas H/W, S/W, serta legalitas dari S/W untuk menghindari tuntutan pelanggaran hak cipta.


Konsep Proses Pencarian Tujuan dalam Kendali dan Audit Sistem Informasi

Apakah maksud dari konsep 'Proses Pencapaian Tujuan' tersebut?

Pengendalian internal telah mengalami perubahan dari konsep ketersediaan pengendalian ke konsep proses pencapaian tujuan Berdasarkan perkembangan di bidang manajemen SDM, konsep pengendalian intern juga mengalami perubahan dari konsep ketersediaan pengendalian intern beralih ke konsep proses pencapaian tujuan.

Dengan konsep baru tersebut disadari bahwa intelektualitas tidak lagi terletak pada pucuk pimpinan, tetapi terletak dilapisan bawah. Mereka yang dekat dengan konsumen yang paling mengerti dengan kebutuhan pasar. Pengorganisasian yang paling tepat untuk kondisi seperti ini adalah seperti pengorganisasian orkes simponi. Organisasi ini sepenuhnya akan digerakan oleh dinamika para pekerja (ujung tombak) sesuai spesialisai masing-masing. Untuk menjaga kekompakan agar terjadi irama yang serasi dibutuhkan seorang manajer yang berfungsi sebagai konduktor. Manajer tersebut tidak lagi harus memiliki pengetahuan teknis seperti yang dimiliki pemain orkesnya, tetapi yang diperlukan hanya seorang yang mampu mengatur tempo dan menguasai tingkatan nada.



Kamis, 13 Desember 2018

Struktur tim yang digunakan untuk mengorganisasikan para programmer


Cara seorang programmer dalam menangani pekerjaan mereka sangat berpengaruh pada kualitas software yang mereka buat alternatifnya, para programmer bisa diorganisasikan sebagai satu kesatuan tim. Mereka bekerja untuk periode waktu tertentu untuk menyelesaikan suatu proyek. dimana keputusannya dibicarakan diantara anggotanya. Hal ini sangat bermanfaat bila proyek yang ditangani sangat komplek dan tidak jelas.
Proses pengembangan, penerapan,dan implementasi dari software, untuk saat ini banyak dilakukan secara team. Dari segi audit, perhatian/tujuan utamanya adalah bahwa manajemen telah memilih struktur team dengan hati-hati dilihat dari segi proyek, tingkat kompleksitasnya, dan tingkat keterlambatan dari jadwal proyek agar kemampuan dan kualitas mereka bisa diorganisasikan dalam bentuk team dimana mereka harus bekerja.

Untuk itu ada 3 struktur team yang digunakan untuk mengorganisasikan para programmer:

1. Chief Programmer Teams
Chief programmer teams atau bisa disebut Ketua Tim Programmer memiliki struktur organisasi yang dapat dilihat pada gambar 1.

Gambar 1 Struktur Organisasi Chief Programmers Team
Berikut ini adalah tabel untuk ciri-ciri dan fungsi dari setiap bagian ketua tim programmer diatas.
Tabel 1 Fungsi dan Ciri Ketua tim programmer
Ciri-Ciri
Fungsi
Chief Programmer
1. Bertanggung jawab secara total/penuh untuk sistem dimana team bekerja
2. Harus seorang ahli
3. Seorang programmer yang sangat produktif
4. Bertanggungjawab dalam mendesain, coding, dan mengintegrasikan bagian yangkritis dalam sistem
5. Memberikan perintah kerja pada bagian back-up dan support programmers.
Back-up Programmers
1. Seorang programmer senior yang bertanggungjawabdalam memberikan dukungan penuh pada chief programmer
2. Harus bisa mengambil alih tugas chief programmer setiap saat
Support Programmers
1. Diperlukan pada saat proyek besar yang tidak bisa dikerjakan oleh chief programmer dan back-up programmer saja.
2. Menyediakan dukungan
3. Bekerja dalam pembuatan coding dan uji coba modul tingkat rendah ( testing lowerlevel)
Librarian (penyedia data)
1. Bertanggungjawab dalam perawatan program production library.
2. Menyediakan input dan mengumpulkan keluaran untuk para programmer, file output dari hasil kompilasi dan ujicoba, mempertahankan agar source code dan object-code library tetap up to date.

2. Adaptives Teams
Adaptive Teams atau bisa disebut dengan Penyesuaian Tim. Struktur ini diperuntukan untuk melayani 2 kebutuhan, yaitu:
1. Keinginan organisasi untuk meningkatkan kualitas program
2. Memenuhi kebutuhan sosial/ psikologi dari setiap anggota programmer dalam team.

Gambar 2 Struktur organisasi adaptive team

Perbedaan dari struktur ini dengan struktur sebelumnya adalah:
1. Adaptive team tidak punya tigkat otoritas, dimana kepemimpinan dalam team ada di tangan para anggota.
2. Dalam Adaptive team, tugas diberikan pada anggota dari team daripada ditentukan lewat posisi.
3. Adaptive team tidak mempunyai aturan formal librarian (penyedia data) dalam mengkoordinasikan fungsi team.
3. Controlled-Decentralized Teams
Struktur ini mempunyai junior programmer yang akan melaporkan hasil program pada senior programmer, kemudian oleh senior programmer dilaporkan juga pada ketua proyek.
Tabel 2 Keuntungan & Kerugian Controlled-Decentralized Teams
Keuntungan
dapat memecahkan masalah yang kompleks, dimana struktur dari grup ini akan memfasillitasi pemecahan masalah.
Kerugian
strukur ini tidak bisa bekerja dengan baik apabila tugas dari programmer tersebut tidak bisa di bagi-bagi, dan dengan waktu deadline yang sangat ketat.

Berikut ini adalah struktur organisasi dari Controlled-Decentralized Teams.



Gambar 3 Struktur organisasi Controlled-Decentralized Teams

Pengelolaan Kelompok Sistem Programming
Para programmer sering diklasifikasikan menurut aplikasi programmer atau sistem programmer. Dahulu, programmer membangun dan merawat program untuk system aplikasinya. Tetapi kini, membangun dan merawat sistem software. Seperti sistem operasi, sistem manajemen database, dan komunikasi software.
Mengontrol Masalah
Mengontrol sistem programmer adalah tugas yang berat, mereka biasanya memiliki keahlian yang tinggi dan sering bekerja sendiri atau ada di dalam grup yang kecil. Dengan menerapkan kontrol secara tradisional pada aktivitas mereka seperti pemisahan tugas, sangatlah sulit. Mereka biasanya bekerja pada situasi yang kritis.
Mengukur Sistem Kontrol
Meskipun sulit unuk mengontrol sistem programmer, beberapa hal ini dapat di implementasikan untuk mengontrolnya:
1. Pekerjakan staf sistem programming yang mempunyai kualitas yang tinggi.
2. Pisahkan tugas seluas mungkin, contohnya tanggung jawab untuk desain dan coding sistem program dipisah dari tanggung jawab untuk uji coba program.
3. Buat metode dokumen standar
4. Batasi wewenang sistem programmer, jadi seorang programmer hanya bekerja sesuai dengan aplikasi yang dikuasainya.
5. Jauhkan prosedur petunjuk manual dan kunci mesin dari aktivitas sistem programmer. Hal ini dimaksudkan agar aktivitas yang tidak diinginkan / sesuai dengan tugasnya tidak terjadi.
6. Pekerjakan konsulan dari luar untuk mengevaluasi pekerjaan programming.
7. Perintahkan programmer aplikasi untuk mengevaluasi pekerjaan sistem programmer secara berkala agar dapat dihasilkan program yang berkualitas.

Sumber :
http://liapsa.staff.gunadarma.ac.id/Downloads/folder/0.5

5 Tahapan Pengembangan Program

Dalam Pembuatan dan pengembangan program merupakan tahap penting dalam siklus hidup pengembangan sistem. Tujuan utama tahap ini adalah untuk menghasilkan dan menenerapkan program yang berkualitas. Terdapat 5 tahapan untuk pengembangan program, diantaranya :

1. Perencanaan (planning)
Ada 5 teknik perencanaan yang harus dimanfaatkan oleh manajemen untuk perencanaan biaya yang dibuat oleh Boehm pada tahun 1984, diantaranya :

1. Algorithmic Models (Model Algoritma)
Model ini akan memperkirakan jumlah sumber daya yang dibutuhkan berdasar pada faktor biaya, sebagai contoh memperkirakan jumlah instruksi yang harus di ketik (di tulis), bahasa pemrograman yang digunakan, dan perubahan pada permintaan kebutuhan. Dengan menggunakan model COCOMO (Boehm’s (1981)).
2. Expert Judgement
Seorang ahli dapat memperkirakan kebutuhan sumber daya yang diperlukan dalam proyek atau pembuatan program. Menurut penelitian Vicinanza et el’s (1991), seorang ahli dapat menjadi pembuat perkiraan yang lebih baik untuk menentukan sumber daya jika dibanding dengan model algoritma.
3. Analogy (Analogi)
Jika proyek software yang sama pernah dibuat, penentuan sumber daya yang dibutuhkan dapat di dasarkan pada pengalaman sebelumnya.
4. Top-Down Estimation (Perkiraan atas-bawah)
Proyek di pecah kedalam beberapa tugas (pekerjaan), dan penentuan sumber daya yang dibutuhkan oleh setiap tugas tersebut baru dibuat.
5. Bottom-Up Estimation (Perkiraan bawah-atas)
Jika tugas-tugas sudah di buat terlebihdahulu, kebutuhan sumber daya untuk masing-masing dapat diperkirakan dan disatukan atau dikumpulkan untuk keperluan seluruh kebutuhan proyek.

   Dari penjelasan tentang perencanaan diatas, lalu apakah tugas/keterlibatan para auditor pada tahapan perencanaan ini ?.
         Tugas para auditor pada tahapan perencanaan ialah untuk memperkirakan kebutuhan besarnya sumber daya (khususnya jam kerja) yang dibutuhkan dalam pengembangan, pengadaan, dan penerapan software. Sebagai contoh, software yang  di buat di rumah (in house), manajemen harus berusaha untuk memperkirakan berapa jumlah baris kode (program) yang di ketik atau banyaknya fungsi yang di buat.
     Selain memperkirakan kebutuhan sumber daya, manajemen juga harus memutuskan tujuan dari keputusan penting yang dibuat selama fase perencanaan seperti :

Tabel 1 keputusan dalam fase perencanaan

    Pengendalian (Control)
Pada tahap kontrol ini, ada dua tujuan utama yaitu :
1. Untuk memonitor kemajuan dan beberapa tahap pada siklus hidup s/w agar tidak bertentangan dengan rencana awal.
2. Mengontrol tugas pengembangan, pengadaan dan implementasi s/w, agar s/w dapat di produksi secara autentik, akurat dan lengkap.
Untuk memonitor agar kontrol tidak bertentangan dengan rencana awal, beberapa teknik dapat digunakan seperti :
a. Work Breakdown Structures (WBS)
Teknik ini dapat mengidentifikasi tugas-tugas yang spesifik untuk pengembangan, pengadaan, dan implementasi s/w yang dibutuhkan.
b. Gantt Chart
Teknik ini dapat digunakan untuk membantu mengatur tugas (schedule).
c. Program Evaluation and review technique (PERT)
Menunjukan tugas-tugas yang harus diselesaikan, bagaimana hubungannya, kebutuhan sumber daya apa untuk setiap tugastugasnya.

       Tugas dari seorang auditor yaitu harus mempunyai perhatian khusus pada kendali dan tahap kontrol ini. Yang harus diberikan perhatian khusus yaitu auditor diharuskan dapat mengevaluasi apakah fungsi dari aktivitas kontrol dapat diterapkan juga pada software yang berbeda. Hal kedua yang harus diberikan perhatian khusus oleh auditor harus dapat mengumpulkan bukti apakah prosedur dari suatu kontrol sudah dijalankan dengan benar dan dapat dipercaya.

2. Perancangan (Design)
       Pada tahapan perancangan, seorang programmer bertugas untuk menspesifikasikan struktur dan operasi dari program untuk menemukan artikulasi yang dibutuhkan selama tahap proses informasi sistem desain dari pengembangan sistem.
       Pada tahapan perancangan ini, perhatian utama seorang auditor adalah untuk menentukan apakah programmer menggunakan suatu tipe khusus dari pendekatan sistematik untuk desain. Auditor harus mengubah keinginannya berdasarkan beberapa faktor seperti ukuran dan bahan dari suatu program. Seorang auditor juga dapat memperoleh bukti dari proses desain dengan melakukan interview, observasi, dan review dari dokumentasi. Mereka dapat berkomunikasi dengan programmer, apakah mereka dapat memahami tentang kebutuhan dengan menggunakan pendekatan yang sistematik untuk desain, jika ya, bagaimana menggunakannya. Auditor juga dapat mengamati apakah programmer menggunakan pendekatan sistematik untuk mendesain program. Mereka juga dapat meninjau dokumentasi program, apakah memiliki struktur chart sebagai bukti programmer menggunakan pendekatan yang sistematik untuk mendesain.

3. Pengkodean (Coding)
Pada tahapan pengkodean atau biasa disebut dengan koding, adalah menuliskan program (software) yang akan dibuat atau dimodifikasi. Selama tahap ini, programmer akan menulis dan mendokumentasikan source code (program sumber) dalam bahasa pemrograman untuk mengimplementasikan desain program.
Strategi Implementasi modul dan integrasi
Tiga strategi utama dari implementasi modul dan integrasi adalah sbb :

1. Top-Down
Strategi ini digunakan jika, modul level atas (high-level modules) dibuat (coding), di test, dan diintegrasikan sebelum modul level bawah (low-level modules).  Keuntungannya adalah kesalahan pada modul level atas dapat teridentifikasi lebih dini, kerugiannya adalah pada saat uji coba program akan menemui kesulitan ketika modul level bawah menemukan kesalahan fungsi input-output yang sangat sulit.
2. Bottom up
Strategi ini digunakan jika, modul level bawah di buat (coding), di test, dan diintegrasikan sebelum modul level atas di buat. Keuntungannya adalah modul level rendah yang merupakan operasi yang paling sulit di implementasikan dan diuji terlebih dahulu. Kerugiannya adalah pendekatan ini sangat sulit untuk di teliti seluruh operasinya, sebelum programnya selesai dibuat.
3. Threads (rangkaian / untaian)
Strategi ini digunakan jika, keputusan dibuat terlebih dahulu untuk fungsi program yang akan dibuat, kemudian modul yang akan mendukungnya baru dibuat dan kemudian diimplementasikan untuk menghasilkan fungsi yang penting. Keuntungannya adalah fungsi yang paling penting di implementasikan terlebih dahulu. Kerugiannya adalah integrasi dari modul yang  berikutnya mungkin akan lebih sulit, jika dibandingkan dengan pendekatan top-down atau bottom-up.

Auditor perlu mencari bukti yang benar dengan cara uji coba oleh manajemen program dalam memilih strategi implementasi modul dan integrasi. Khususnya pada program yang besar, penggunaan strategi yang salah (jelek) dapat mengakibatkan program yang dihasilkan menjadi kurang berkualitas.
Auditor dapat melakukan wawancara untuk menguji apakah manajemen menggunakan pendekatan sistematik untuk memilih strategi implementasi modul dan integrasi. Mereka juga dapat menguji dokumentasi program untuk memperoleh bukti tipe strategi yang telah di adopsi (di pilih).
Strategi Coding
Menurut konvensi (kesepakatan) program terstruktur, terdapat tiga dasar struktur utama dalam struktur kontrol yaitu :
1. Urutan sederhana (simple sequence - SEQUENCE)
2. Pemilihan dengan seleksi (selection based on a test – IF-THEN-ELSE)
3. Pengulangan kondisi (conditional repetition-DO WHILE)
   Auditor dapat mencari bukti untuk memastikan apakah manajemen programming di jamin di buat oleh programmer mengikuti struktur programming yang telah di sepakati. Mereka dapat melakukan wawancara dengan manager atau programmer tentang tugas dan cara yang dilakukannya dalam membuat program.
   Auditor juga dapat mengecek apakah programmer dalam membuat programnya menyediakan fasilitas otomatis sebagai alat bantu untuk mereka.
Strategi Dokumentasi
Pedoman untuk menghasilkan dokumentasi yang berkualiatas adalah sbb :
1. Sediakan petunjuk yang menunjukan proes pembuatan program ke dalam beberapa tahap dan komponen secara keseluruhan dan hubungan antara komponen-komponen tersebut.
2. Gunakan baris komentar dalam program secara bebas untuk menerangkan jalannya (logika)program.
3. Beri nama untuk variabel, konstanta tipe, paragraf, modul, dan seksi yang berarti kepada parapembaca source-code program.
4. Buat lay-out dari source-program sehingga mudah untuk dibaca.
5. Kelompokan tipe kode yang saling berhubungan.

4. Pengujian (Testing)
 Proses menganalisa suatu entitas software untuk mendeteksi perbedaan antara kondisi yang ada dengan kondisi yang diinginkan (defect / error / bugs) dan mengevaluasi fitur-fitur dari entitas software (standar IEEE1059). Testing akan melakukan Verifikasi, Deteksi Error, Validasi.
Verifikasi adalah pengecekan atau pengetesan entitas-entitas, termasuk software, untuk pemenuhan dan konsistensi dengan melakukan evaluasi hasil terhadap kebutuhan yang telah ditetapkan.
Validasi melihat kebenaran sistem, apakah proses yang telah ditulis dalam spesifikasi adalah apa yang sebenarnya diinginkan atau dibutuhkan oleh pengguna.
Deteksi error: Testing seharusnya berorientasi untuk membuat kesalahan secara intensif, untuk menentukan apakah suatu hal tersebut terjadi bilamana tidak seharusnya terjadi atau suatu hal tersebut tidak terjadi dimana seharusnya mereka ada.
Manfaat Testing
•         Meningkatkan kepercayaan, tingkat resiko yang dapat diterima
•         Menyediakan informasi untuk deteksi error secara dini
•         Menyediakan informasi yang dapat mencegah terjadinya error
•         Mencari error dan kelemahan sistem
•         Mencari sejauh apa kemampuan dari sistem
•         Menyediakan informasi untuk kualitas produk software

5. Pengoperasian dan Pemeliharaan (Operation and Maintenance)
Dalam sudut pandang Sistem Audit, perhatian utama pada operasional program adalah bagaimana performance program tersebut dapat dimonitor setiap saat. Seseorang harus bertanggung jawab untuk mengidentifikasi apabila program perlu perawatan, kemungkinan lain adalah identifikasi dari kebutuhan perawatan mungkin tidak terjadi. Akibatnya, bisa terjadi kekeliruan pada database program, kegagalan dalam pencapaian keinginan user, atau operasi program tidak efisien. Mekanisme formal dalam monitoring status operasional program sangat diperlukan, ketika pengguna dari program adalah seluruh anggota organisasi yang terdiri dari berbagai macam latar belakang.
Ada 3 macam tipe dari perawatan (maintenance) yang diperlukan agar program tetap beroperasi:
1. Repair-maintenance-errors, perawatan dengan cara memperbaiki kesalahan.
2. Adaptive maintenance-users needs, perawatan dengan mengadaptasi pada keinginan user.
3. Perfective maintenance, perawatan dengan maksud agar diperoleh program yang sempurna.


Sumber :