Rabu, 01 November 2017

STRATEGI PENGUJIAN PERANGKAT LUNAK

STRATEGI PENGUJIAN PERANGKAT LUNAK

1.     Pengujian unit program
Pengujian difokuskan pada unit terkecil dari suatu modul program. Dilaksanakan dengan menggunakan driver dan stub. Driver adalah suatu program utama yang berfungsi mengirim atau menerima data kasus uji dan mencetak hasil dari modul yang diuji. Stub adalah modul yang menggantikan modul sub-ordinat dari modul yang diuji.
2.   Pengujian integrasi
Pengujian terhadap unit-unit program yang saling berhubungan (terintegrasi) dengan focus pada masalah interfacing. Dapat dilaksanakan secara top-down integration atau bottom-up integration.
3.   Pengujian validasi
Pengujian ini dimulai jika pada tahap integrasi tidak ditemukan kesalahan. Suatu validasi dikatakan sukses jika perangkat lunak berfungsi pada cara yang diharapkan oleh pemakai.
4.   Pengujian sistem
Pengujian yang dilakukan sepenuhnya pada sistem berbasis komputer. Jenis pengujian yang dilakukan pada saat melakukan pengujian sistem, yaitu :
·         Recovery testing
Pengujian dilakukan dimana sistem diusahakan untuk gagal, kemudian diuji
kenormalannya.
·         Security testing
Dilakukan untuk menguji mekanisme proteksi
·         Stress testing
Pengujian yang dirancang untuk menghadapkan suatu perangkat lunak kepada
situasi yang tidak normal.
·         Performance testing
Pengujian dilakukan untuk mengetahui kinerja dari sistem

Hal-hal yang diujikan selama pengujian :
1.     Antarmuka modul
2.     Struktur Data Lokal
3.     Kondisi Batas
4.     Jalur-jalur Bebas
5.     Jalur-jalur penanganan kesalahan



Faktor pengujian perangkat lunak

1.     Pengujian Tahapan Analisis
Pengujian pada tahapan ini lebih menekankan pada validasi terhadap kebutuhan perangkat lunak, untuk menjamin bahwa kebutuhan telah dispesifikasikan dengan benar. Tujuan pengujian pada tahap ini adalah untuk mendapatkan kebutuhan yang layak dan untuk memastikan apakah kebutuhan tersebut sudah dirumuskan dengan baik. Faktor-faktor pengujian yang dilakukan meliputi :
·         Kebutuhan yang berkaitan dengan metodelogi
·         Pendefinisian spesifikasi fungsional
·         Penentuan spesifikasi kegunaan
·         Penentuan kebutuhan portabilitas
·         Pendefinisian antar muka sistem.

2.      Pengujian Tahapan Desain
Pengujian pada tahapan ini bertujuan untuk menguji struktur perangkat lunak yang diturunkan dari kebutuhan perangkat, kebutuhan yang bersifat umum dirinci menjadi bentuk yang lebih spesifik. Faktor-faktor pengujian yang dilakukan meliputi :
·         Perancangan yang berkaitan dengan kebutuhan
·         Kesesuaian perancangan dengan metodologi dan teori.
·         Portabilitas rancangan
·         Perancangan yang dirawat
·         Kebenaran rancangan berkaitan dengan fungsi dan aliran data.
·         Kelengkapan perancangan antar muka.

3.     Pengujian Tahapan Implementasi
Merupakan pengujian unit-unit yang dibuat sebelum diintegrasikan mejadi aplikasi secara keseluruhan. Faktor-faktor pengujian tahap implementasi meliputi :
·         Kendali integritas data
·         Kebenaran program
·         kemudahan pemakaian
·         Sifat coupling
·         Pengembangan prosedur operasi.

4.        Pengujian Tahapan Pengujian
Pengujian pada tahapan ini dilakukan untuk menilai apakah spesifikasi program telah ditulis menjadi instruksi-instruksi yang dapat dijalankan pada mesin/komputer. Selain itu, juga untuk menilai apakah instruksi yang ditulis tersebut telah sesuai dengan spesifikasi program. Faktor-faktor pengujian tahap ini meliputi :
·         Pengujian fungsional
·         Dukungan manual

·         Kemudahan operasi

Metode Pengujian dalam Perangkat Lunak

1.     White box testing
Adalah cara pengujian dengan melihat ke dalam modul untuk meneliti kode-kode program yang ada, dan menganalisis apakah ada kesalahan atau tidak. Jika ada modul yang menghasilkan output yang tidak sesuai dengan proses bisnis yang dilakukan, maka baris-baris program, variabel, dan parameter yang terlibat pada unit tersebut akan dicek satu persatu dan diperbaiki, kemudian di-compile ulang.
Pengujian white box
Menggunakan metode desain test case yang menggunakan struktur control desain procedural untuk memperoleh test case. Disebut juga pengujian glassbox. Dengan pengujian whitebox, perekayasa dapat melakukan :
·         Memberikan jaminan bahwa semua jalur independen pada suatu modul telah digunakan paling tidak satu kali.
·         Menggunakan semua keputusan logis pada sisi true and false.
·         Mengeksekusi semua loop pada batasan mereka dan pada batas operasional mereka.
·         Menggunakan struktur data internal untuk menjamin validitasnya.
Dengan meenggunakan metode white box, analis sistem akan dapat memperoleh test case yang:
·         menjamin seluruh independent path di dalam modul yang dikerjakan sekurang-kurangnya sekali.
·         mengerjakan seluruh keputusan logikal.
·         mengerjakan seluruh loop yang sesuai dengan batasannya.
·         mengerjakan seluruh struktur data internal yang menjamin validitas.

Keunggulan dan Kekurangan White Box
Keunggulan
·         Kebenaran program dalam mendefinisikan algoritma dapat diketahui secara langsung dengan pengolahan path.
·         Menentukan kualitas pekerjaan coding dan pengaruhnya untuk standar coding.
Kekurangan
·         Jumlah biaya untuk white box testing lebih besar daripada biaya yang dibutuhkan untuk black box, untuk ukuran software yang sama.
·         Belum mampu melakukan tes ketersediaan, kehandalan, daya tahan beban dan testing – testing lain yang berhubungan dengan kebutuhan faktor – faktor untuk operasi, revisi dan transisi.

2.     Black box testing
Adalah metode pengujian perangkat lunak yang tes fungsionalitas dari aplikasi yang bertentangan dengan struktur internal atau kerja (lihat pengujian white-box).
Pengujian black box

Berfokus pada persyaratan fungsional perangkat lunak. Disebut juga pengujian behavioral atau pengujian partisi. Pengujian black box memungkinkan perekayasa perangkat lunak mendapatkan serangkaian input yang sepenuhnya menggunakan semua persyaratan fungsional untuk suatu program. Pengujian black box berusaha menemukan :
• Fungsi-fungsi yang tidak benar atau hilang
• Kesalahan interface
• Kesalahan dalam struktur data atau akses database eksternal.
• Kesalahan kinerja
• Inisialisasi dan kesalahan terminasi.
• Kesalahan performansi
• Kesalahan inisialisasi dan tujuan akhir
Dengan mengaplikasikan teknik black box, maka kita menarik serangkaian test case yang
memenuhi kriteria berikut :
• Test case yang mengurangi, dengan harga lebih dari satu, jumlah test case tambahan yang harus  didesain untuk mencapai pengujian yang dapat
dipertanggungjawabkan.
•Test case yang member tahu kita sesuatu mengenai kehadiran atau ketidakhadiran
kelas kesalahan, daripada member tahu kesalahan yang berhubungan hanya
dengan pengujian spesifik.

Keunggulan dan Kekurangan Black Box:
Keunggulan
·         Black box testing dapat menguji keseluruhan fungsionalitas perangkat lunak.
·         Black box testing dapat memilih subset test yang secara efektif dan efisien dapat menemukan cacat. Dengan cara ini black box testing dapat membantu memaksimalkan testing investment.
Kekurangan
·         Ketika tester melakukan black box testing, tester tidak akan pernah yakin apakah perangkat lunak yang diuji telah benar-benar lolos pengujian.

1.     Gray box testing

Adalah metode pengujian perangkat lunak yang adalah kombinasi dari Black box testing dan White box testing. Dalam Black box testing, struktur internal dari item yang sedang diuji tidak diketahui tester dan White box testing struktur internal di dikenal. Dalam pengujian Gray box testing, struktur internal sebagian dikenal. Ini melibatkan memiliki akses ke internal data struktur dan algoritma untuk tujuan merancang uji kasus, tetapi pengujian pada pengguna, atau tingkat Black box. Grey-box, berusaha menggabungkan kedua metode diatas, mengambil kelebihan keduanya, mengurangi kekurangan keduanya. Teknik verifikasi modern menerapkan combine-method ini.

SDLC (Systems Development Life Cycle)

Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiipzJZcaEmTt5RPTmHGk_CniYm9dT9Vv2hskxwrM_Qpmt2rrQd92DhBIVWCkfNgaKVjGjSXT6bxNP5ot76bbGApVgmiTJKG1Fss5zkXv_-XhnamI1c6IvywuuNxRclrSIUWk6ug9anRiRV/s200/graphic_sdlc-300x296.pngSDLC (Systems Development Life Cycle)

SDLC adalah proses pembuatan dan pengubahan sistem serta model dan metodologi yang digunakan untuk mengembangkan sistem-sistem tersebut. Konsep ini umumnya merujuk pada sistem komputer atau informasi. SDLC juga merupakan pola yang diambil untuk mengembangkan sistem perangkat lunak, yang terdiri dari tahap-tahap:
1. Analisis sistem, yaitu membuat analisis aliran kerja manajemen yang sedang berjalan
2. Spesifikasi kebutuhan sistem, yaitu melakukan perincian mengenai apa saja yang dibutuhkan dalam pengembangan sistem dan membuat perencanaan yang berkaitan dengan proyek sistem
3. Perancangan sistem, yaitu membuat desain aliran kerja manajemen dan desain pemrograman yang diperlukan untuk pengembangan sistem informasi
4. Pengembangan sistem, yaitu tahap pengembangan sistem informasi dengan menulis program yang diperlukan
5. Pengujian sistem, yaitu melakukan pengujian terhadap sistem yang telah dibuat
6. Implementasi dan pemeliharaan sistem, yaitu menerapkan dan memelihara sistem yang telah dibuat
Siklus SDLC dijalankan secara berurutan, mulai dari langkah pertama hingga langkah keenam. Setiap langkah yang telah selesai harus dikaji ulang, kadang-kadang bersama expert user, terutama dalam langkah spesifikasi kebutuhan dan perancangan sistem untuk memastikan bahwa langkah telah dikerjakan dengan benar dan sesuai harapan. Jika tidak maka langkah tersebut perlu diulangi lagi atau kembali ke langkah sebelumnya. Kaji ulang yang dimaksud adalah pengujian yang sifatnya quality control, sedangkan pengujian di langkah kelima bersifat quality assurance. Quality control dilakukan oleh personal internal tim untuk membangun kualitas, sedangkan quality assurance dilakukan oleh orang di luar tim untuk menguji kualitas sistem. Semua langkah dalam siklus harus terdokumentasi. Dokumentasi yang baik akan mempermudah pemeliharaan dan peningkatan fungsi sistem

JENIS JENIS SDLC

·         Waterfall model

adalah suatu metodologi pengembangan perangkat lunak yangmengusulkan pendekatan kepada perangkat lunak sistematik dan sekuensial

·         Model RAD

adalah model proses pembangunan perangkat lunak yang tergolong dalamteknik bertingkat.

·         V model

adalah perluasan dari model waterfall. Jika dalam model waterfall proses dijalankansecara linear, maka dalam model v proses dilakukan bercabang.


·         Prototype model

adalah proses pembuatan model sederhana software yang mengijinkan pengguna memiliki gambaran dasar tentang program serta melakukan pengujian awal.

·         agile methods
adalah sekelomok metodologi pengembangan software yang didasarkan pada prinsip-prinsip yang sama.


·         Analis sistem
adalah seseorang yang bertanggung jawab atas penelitian, perencanaan, pengkoordinasian, dan merekomendasikan pemilihan perangkat lunakdan sistem yang palingsesuai dengan kebutuhan organisasi bisnis atau perusahaan

·         Sistem software engineer

adalah Ilmu yang mempelajari tehnik pembuatan software yang baik dengan pendekatan tehnik

·         Rekayasa proses bisnis

adalah perancangan ulang secara pada proses bisnis yang berjalansaat ini dengan penekanan pada pengurangan biaya dan waktu siklus agar terjadi peningkatankepuasan pelanggan.

·         Spiral model
Adalah model proses software yang evolusioner yang merangkai sifat iterative dari prototype dengan cara control dan aspek sistematis dari model sekuensial linier













Selasa, 31 Oktober 2017

Audit Command Language

Manfaat ACL menggunakan ACL
v  Dapat membantu dalam mengakses data baik langsung (direct) kedalam sistenm jaringan ataupun indirect (tidak langsung) melalui media lain seperti softcopy dalam bentuk text file/report.
v  Menempatkan kesalahan dan potensial “fraud” sebagai pembanding dan menganalisa file-file menurut aturan-aturan yang ada.
v  Mengidentifikasi kecenderungan/gejala-gejala, dapat juga menunjukan dengan tepat sasaran pengecualian data dan menyoroti potensial area yang menjadi perhatian.
v  Mengidentifikasi proses perhitungan kembali dan proses verifikasi yang benar.
v  Mengidentifkasi persoalan sistem pengawasan dan memastikan terpenuhinya permohonan dengan aturan-aturan yang telah ditetapkan.
v  Aging dan menganalisa account receivable/payable atau beberapa transaksi lain dengan menggunakan basis waktu yang sensitive.

5 SIKLUS DATA ACL
•         Perencanaan
Rencanakan pekerjaan anda sebelum memulai sebuah project. Dengan merumuskan jelas tujuanya sebelum mulai analisis, dengan mengembangkan strategi dan waktu serta sumber daya.

•         Akses Data
Langkah berikutnya adalah mengakses data yang digariskan dalam rencana strategis. Dengan mencari, meminta, dan mentransfer data sebelumnya untuk membacanya dengan ACL.
•         Integritas data Verifikasi Data

Setelah menerima data, maka diperlukan untuk menguji integritas. Jika anda memulai project anda tanpa harus diverifikasi terlebih dahulu data yang integritas, ada kemungkinan tidak lengkap

atau tidak benar.
•         Analisis Data
Dalam analisis tahap melakukan tes yang diperlukan untuk mencapai tujuan. Anda mungkin akan menggunakan kombinasi perintah, filter, dan hitungan dalam analisis Anda.
•         Pelaporan Hasil
Tergantung pada proyek tersebut, Anda mungkin perlu membuat laporan dari yang dihasilkan. ACL dapat membuat berbagai jenis laporan, termasuk multiline, detail, dan ringkasan laporan

Rabu, 11 Oktober 2017

PENGERTIAN AUDIT SISTEM INFORMASI

Audit Sistem Informasi (Informatin System Audit) atau EDP Audit (Electronic Data Processing Audit) atau computer audit  adalah proses pengumpulan data dan pengevaluasian bukti-bukti untuk menentukan apakah suatu sistem aplikasi komputerisasi telah menetapkan dan menerapkan sistem pengendalian internal yang memadai, semua aktiva dilindungi dengan baik atau disalahgunakan serta terjaminnya integritas data, keandalan serta efektifitas dan efesiensi penyelenggaraan sistem informasi berbasis komputer (Ron Weber 1999:10).

Jenis-jenis Audit Sistem Informasi
Audit sistem informasi dapat digolongkan dalam tipe atau jenis-jenis audit sebagai berikut.

a. Audit Laporan Keuangan (Financial Statement Audit)
Adalah audit yang dilakukan untuk mengetahui tingkat kewajaran laporan keuangan yang disajikan oleh perusahaan (apakah sesuai dengan standar akuntansi keuangan serta tidak menyalahi uji materialitas). Apabila sistem akuntansi organisasi yang diaudit merupakan sistem akuntansi berbasis komputer, maka dilakukan audit terhadap sistem informasi akuntansi apakah proses/mekanisme sistem dan program komputer telah sesuai, pengendalian umum sistem memadai dan data telah substantif.

b. Audit Operasional (Operational Audit)
Audit terhadap aplikasi komputer terbagi menjadi tiga jenis, antara lain:

1. Post implementation Audit (Audit setelah implementasi)
Auditor memeriksa apakah sistem-sistem aplikasi komputer yang telah diimplementasikan pada suatu organisasi/perusahaan telah sesuai dengan kebutuhan penggunanya (efektif) dan telah dijalankan dengan sumber daya optimal (efisien). Auditor mengevaluasi apakah sistem aplikasi tertentu dapat terus dilanjutkan karena sudah berjalan baik dan sesuai dengan kebutuhan usernya atau perlu dimodifikasi dan bahkan perlu dihentikan.
Pelaksanaan audit ini dilakukan oleh auditor dengan menerapkan pengalamannya dalam pengembangan sistem aplikasi, sehingga auditor dapat mengevaluasi apakah sistem yang sudah diimplementasikan perlu dimutakhirkan atau diperbaiki atau bahkan dihentikan apabila sudah tidak sesuai kebutuhan atau mengandung kesalahan.
2. Concurrent audit (audit secara bersama)
Auditor menjadi anggota dalam tim pengembangan sistem (system development team). Mereka membantu tim untuk meningkatkan kualitas pengembangan sistem yang dibangun oleh para sistem analis, designer dan programmer dan akan diimplementasikan. Dalam hal ini auditor mewakili pimpinan proyek dan manajemen sebagai quality assurance.
3. Concurrent Audits (audit secara bersama-sama)
Auditor mengevaluasi kinerja unit fngsional atau fungsi sistem informasi (pusat/instalasi komputer) apakah telah dikelola dengan baik, apakah kontrol dalam pengembangan sistem secara keseluruhan sudah dilakukan dengan baik, apakah sistem komputer telah dikelola dan dioperasikan dengan baik.
Dalam mengaudit sistem komputerisasi yang ada, audit ini dilakukan dengan mengevaluasi pengendalian umum dari sistem-sistem komputerisasi yang sudah diimplementasikan pada perusahaan tersebut secara keseluruhan.
Saat melakuan pengujian-pengujian digunakan bukti untuk menarik kesimpulan dan memberikan rekomendasi kepada manajemen tentang hal-hal yang berhubungan dengan efektifitas, efisiensi, dan ekonomisnya sistem.


Tujuan Audit Sistem Informasi
Tujuan audit sistem informasi menurut Ron Weber (1999:11-13) secara garis besar terbagi menjadi empat tahap, yaitu:


a. Pengamanan Aset
Aset informasi suatu perusahaan seperti perangkat keras (hardware), perangkat lunak (software), sumber daya manusia, file data harus dijaga oleh suatu sistem pengendalian intern yang baik agar tidak terjadi penyalahgunaan aset perusahaan. Dengan demikian sistem pengamanan aset merupakan suatu hal yang sangat penting yang harus dipenuhi oleh perusahaan.

b. Menjaga integritas data
Integritas data (data integrity) adalah salah satu konsep dasar sistem inforamasi. Data memeiliki atribut-atribut tertentu seperti: kelengkapan, keberanaran, dan keakuratan. Jika integritas data tidak terpalihara, maka s