Pre Test Manajemen Kontrol Programming
Pre Test V-class Mata Kuliah Analisis Kinerja Sistem
Tahapan Pengembangan Program
Pembuatan dan pengembangan program adalah merupakan tahap penting dalam siklus hidup pengembangan sistem. Tujuan utama tahap ini adalah untuk menghasilkan dan menenerapkan program yang berkualitas. Terdapat 5 tahapan pengembangan program, yaitu :
1. Perencanaan (Planning)
Tugas utama dari manajemen dalam tahap ini adalah
untuk memperkirakan kebutuhan besarnya sumber daya (khususnya jam kerja) yang
dibutuhkan dalam pengembangan, pengadaan, dan penerapan software. Jika, sebagai
contoh, s/w 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.
Jika suatu software akan dikembangkan dan
diimplementasikan secara in-house, manajemen harus memanfaatkan lima teknik
perencanaan biaya yang di buat oleh Boehm (1984) sbb :
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 Judgment (penilaian seorang
ahli) : seorang ahli dapat memperkirakan kebutuhan sumber daya yang diperlukan
dalam proyek/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 terlebih dahulu, kebutuhan sumber
daya untuk masing-masing dapat diperkirakan dan disatukan / dikumpulkan untuk
keperluan seluruh kebutuhan proyek.
Selain memperkirakan kebutuhan sumber daya, manajemen
juga harus memutuskan tujuan dari keputusan penting yang dibuat selama fase
perencanaan seperti:
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), dengan teknik ini kita dapat mengidentifikasi tugas-tugas yang spesifik untuk pengembangan, pengadaan, dan implementasi s/w yang dibutuhkan. (Mc.Leod and Smith 1996).
Untuk memonitor agar kontrol tidak bertentangan dengan rencana awal, beberapa teknik dapat digunakan seperti :
a. Work Breakdown Structures (WBS), dengan teknik ini kita dapat mengidentifikasi tugas-tugas yang spesifik untuk pengembangan, pengadaan, dan implementasi s/w yang dibutuhkan. (Mc.Leod and Smith 1996).
Gambar 1. Pemecahan
Struktur Untuk Order-Entry Sistem
b. Gantt Chart, dapat
digunakan untuk membantu mengatur tugas (schedule). Teknik ini akan menunjukan
kapan tugas harus dimulai dan diselesaikan, tugas apa yang harus dibuat
bersama-sama, dan tugas apa yang harus dihasilkan secara serial.
Gambar 2. Gantt Chart untuk order-entry system
c. Program Evaluation and Review Technique (PERT), menunjukan tugas-tugas yang harus diselesaikan,
bagaimana hubungannya, kebutuhan sumber daya apa untuk setiap tugas-tugasnya.
Gambar 3. PERT Chart untuk order-entry system
Peran Auditor
Seorang auditor harus mempunyai dua perhatian khusus pada kendali, pada tahap kontrol ini yaitu :
1.
Auditor harus dapat mengevaluasi apakah fungsi dari aktivitas kontrol dapat
diterapkan juga pada software yang berbeda.
2.
Seorang auditor harus dapat mengumpulkan bukti apakah prosedur dari suatu
kontrol sudah dijalankan dengan benar dan dapat dipercaya.
2.
Design
Dalam tahap desain, seorang programmer bertugas untuk
menspesifikasikan struktur dan operasi dari program untuk menemukan artikulasi
yang dibutuhkan selama tahap proses informasi sistem desain dari pengembangan
sistem.
Peran Auditor
Selama tahap 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. Coding
Tahap
koding (pengetikan/penulisan program) dilakukan pada saat s/w akan dibuat atau dimodifikasi.
Selama tahap ini, programmer akan menulis, dan mendokumentasikan source code (program sumber) dalam
bahasa pemrograman untuk mengimplementasikan desain program.
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.
Peran Auditor
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 jugadapat
menguji dokumentasi program untuk memperoleh bukti tipe strategi yang telah di adopsi
(di pilih).
4.
Testing dan Implementasi
Testing adalah
proses menjalankan sebuah program dengan tujuan untuk menemukan kesalahan
sebelum pengiriman ke end user.
Tipe pengujian
1. Pengujian statis (Static Testing)
· Pengujian terhadap satu unit tanpa melakukan eksekusi terhadap unit tersebut
· Pengujian terhadap satu unit tanpa melakukan eksekusi terhadap unit tersebut
2. Pengujian dinamis
(Dynamic Testing)
· Pengujian dengan mengeksekusi unit dengan menggunakan data uji.
· Pengujian dengan mengeksekusi unit dengan menggunakan data uji.
· White box dan
black box
Static Testing
1. Code
Walktrough
•
Kode program dan dokumentasi di-review oleh tim
•
Fokus ada pada kode program
•
Informal
•
Dipimpin oleh programmer
Code
Inspection
• Kode program dan dokumentasi di-review oleh tim
dengan suatu daftar rujukan
• Definisi dan struktur data
• Algoritma
• Interface antar komponen
• Prakiraan unjuk kerja program à penggunaan memori,
kecepatan pengolahan
• Fokus ada pada kode program
• formal
• Dipimpin oleh moderator BUKAN programmer
Dynamic Testing
• Seluruh independent path diuji
Menguji semua pernyataan untuk nilai ‘true’ dan
‘false’
• Mengesekusi semua kalang (loop) untuk
kondisi-kondisi batas.
• Memeriksa struktur data internal
• Menganalisa rancangan prosedural
• Mendefinisikan basis set dari execution paths
• Test cases untuk basis set mengeksekusi setiap
statemen program minimal satu kali.
Integrated Testing
• Fokus deteksi fault pada sekelompok komponen/unit,
seperti fungsi, kelas, packages.
• Dua atau lebih komponen diintegrasikan dan diuji.
• Jika tidak ada, maka komponen lain ditambahkan dan
diuji.
System Testing
• Dilakukan setelah komponen-komponen diintegrasikan.
• Menjamin bahwa sistem yang lengkap sesuai dengan
kebutuhan fungsional dan non fungsional sistem.
• Pada tahap ini fault yang terjadi pada komponen
telah teridentifikasi dan dikoreksi.
5.
Operation and Maintanance
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.
Peran Auditor
Pada fase operation & maintenance adalah untuk memastikan
bahwa fase ini berjalan dengan efektif dan pelaporan secara berkala dapat dilakukan,
serta proses perawatan bisa di kontrol dengan baik.
Auditor harus bisa mencari bukti bawa manajemen telah
meninjau sistem dengan baik dan bertanggungjawab didalam monitoring status dari
operasional program. Caranya dengan melakukan interview (wawancara), observasi,
tinjauan pada dokumen yang menunjukkan bahwa sistem telah beroperasi dengan
baik. Selanjutnya mereka harus fokus pada kualitas dari kontrol proses
maintenance.
Sumber :
http://liapsa.staff.gunadarma.ac.id/Downloads/folder/0.5
Komentar
Posting Komentar