A. System Development Life Cycle (SDLC)
SDLC(System Development Life Cycle) yaitu proses atau metode pembuatan dan
pengubahan sistem yang digunakan untuk mengembangkan sistem.
Pada SDLC terdapat beberapa tahapan yang dilakukan yaitu:
1. Systems Planning (Perencanaan Sistem)
Kegiatan yg menyangkut
estimasi dr kebutuhan-kebutuhan fisik, tenaga kerja & dana yang
dibutuhkan untuk mendukung pengembangan sistem serta untuk mendukung operasinya
setelah diterapkan
Aktivitas-aktivitas
yang ada meliputi :
¾
Membuat tim
pengembang.
¾
Mendefinisikan tujuan
dan ruang lingkup pengembangan.
¾
Mengidentifikasi
apakah masalah-masalah yang ada.
¾
Evaluasi strategi yang
akan digunakan dalam pengembangan sistem.
2. Systems Analysis (Analisis Sistem)
Analisa sistem adalah
tahap di mana dilakukan beberapa aktivitas berikut:
¾
Melakukan studi
literatur untuk menemukan suatu kasus yang bisa ditangani oleh sistem.
¾
Brainstorming dalam tim pengembang mengenai
kasus mana yang paling tepat dimodelkan dengan sistem.
¾
Mengklasifikasikan
masalah, peluang, dan solusi yang mungkin diterapkan untuk kasus tersebut.
¾
Analisa kebutuhan pada
sistem dan membuat batasan sistem.
¾
Mendefinisikan
kebutuhan sistem.
3. Systems Design (Perancangan Sistem)
Pada tahap ini
mendeskripsikan secara detail feature dan operasi yang dilakukan pada sistem.
Aktivitas-aktivitas yang dilakukan pada tahap ini adalah:
¾
Menganalisa fungsi
pada sistem.
¾
Menganalisa data dan membuat
database.
¾
Merancang user
interface atau kebutuhan user.
4. Systems Implementation (Implementasi Sistem)
Tahap implementasi
yaitu tahap yang mengimplementasikan rancangan dari tahap-tahap sebelumnya dan
melakukan uji coba.
Aktivitas-aktivitas
pada Implementasi yaitu:
¾
Pembuatan database
sesuai skema rancangan.
¾
Pembuatan aplikasi
berdasarkan desain sistem.
¾
Pengujian dan
perbaikan pada aplikasi (debugging).
5. Systems Maintenance (Pemeliharaan Sistem)
Pemeliharaan sistem ini dilakukan oleh admin yang ditunjuk untuk menjaga sistem
tersebut tetap beroperasi secara benar.
Berikut beberapa
metodologi dari SDLC yaitu :
- Waterfall
Model ini paling banyak dipakai didalam Software Engineering
(SE). Model ini juga melakukan pendekatan secara sistematis dan urut mulai dari
level kebutuhan sistem lalu menuju ke tahap analisis, desain, coding, testing /
verification, dan maintenance. Disebut dengan waterfall karena tahap demi tahap
yang dilalui harus menunggu selesainya tahap sebelumnya dan berjalan secara
berurutan
- RAD
(Rapid Application Development)
RAD (Rapid Application Development) adalah model proses
pembangunan perangkat lunak yang tergolong dalam teknik incremental
(bertingkat). RAD menekankan pada siklus pembangunan pendek, singkat, dan
cepat. Waktu yang singkat adalah batasan yang penting untuk model ini. Rapid
application development menggunakan metode iteratif (berulang) dalam
mengembangkan sistem dimana working model (model bekerja) sistem
dikonstruksikan di awal tahap pengembangan dengan tujuan menetapkan kebutuhan
(requirement) user.
- Agile
Jenis pengembangan sistem jangka pendek yang memerlukan adaptasi
cepat dan pengembang terhadap perubahan dalam bentuk apapun. Dalam Agile
Software Development interaksi dan personel lebih penting dari pada proses dan
alat, software yang berfungsi lebih penting daripada dokumentasi yang lengkap,
kolaborasi dengan klien lebih penting dari pada negosiasi kontrak, dan sikap
tanggap terhadap perubahan lebih penting daripada mengikuti rencana.
- Prototype
Prototyping adalah salah satu pendekatan dalam rekayasa
perangkat lunak yang secara langsung mendemonstrasikan bagaimana sebuah perangkat
lunak atau komponen-komponen perangkat lunak akan bekerja dalam lingkungannya
sebelum tahapan konstruksi aktual dilakukan
B. KONSEP DAN PENGUJIAN PERANGAT LUNAK
Pengujian menyajikan
anomali yang menarik bagi perekayasa perangkat lunak. Pada proses perangkat
lunak, perekayasa pertama-tama berusaha membangun perangkat lunak dari konsep
abstrak ke implementasi yang dapat dilihat, baru dilakukan pengujian. Perekayasa
menciptakan sederetan test case yang dimaksudkan untuk “membongkar”
perangkat lunak yang sudah dibangun. Pada dasarnya pengujian merupakan salah
satu langkah dlam proses rekayasa perangkat lunak yang dianggap sebagai hal
yang destruktif daripada konstruktif.
1.
Sasaran
- Sasaran Pengujian
Dalam buku klasiknya
mengenai pengujian perangkat lunak, Glen Myers menyatakan sejumlah aturan yang
berfungsi sebagai sasaran pengujian:
·
Pengujian adalah
proses eksekusi suatu program dengan meksud menemukan kesalahan.
¾
Test case yang
baik adalah test case yang memiliki probabilitas tinggi untuk
menemukan kesalahan yang belum Semua pengujian harus dapat ditelusuri sampai
kepesyaraan pelanggan.
¾
Pengujian harus
direncanakan lama sebelum pengujian itu mulai.
¾
Prinsip pareto berlaku
untuk pengujian perangkat lunak.
¾
Pengujian harus mulai
dari yang kecil dan yang berkembang kepengujian yang lebih besar.
¾
Pengujian yang
mendalam tidak mungkin.
¾
Untuk menjadi paling
efektif pengujian harus dilakukan oleh pihak ketiga yang independen.
·
ditemukan
sebelumnya.
·
Pengujian yang sukses
adalah pengujian yang mengungkap semua kesalahan yang belum pernah ditemukan
sebelumnya.
2.
Prinsip
Pengujian
Sebelum
mengaplikasikan metode untuk mendesain test case yang efektif,
perekayasa harus memahami prinsip dasar yang menuntun pengujian perangkat
lunak. Davis mengusulkan serangkaian prinsip-prinsip pengujian
diantaranya:
3.
Testabilitas
Testibilitas perangkat
lunak adalah seberapa mudah program computer dapat diuji. Karena pengujian
sulitk, maka perlu diketahui apa yang harus dilakukan agar manjadi lebih
mudah. Cheklist berikut ini memberikan serangkaian karakteristik yag
membawa peragkat lunak yang dapat diuji.
¾
Operabilitas, “semakin
baik dia bekerja, semakin efisien dia diuji”.
¾
Observabilitas, “apa
yanganda lihat adalah apa yang anda uji”.
¾
Kontrabilitas, semakin
baik kita dapat mengontrol perangkat lunak semakin banyak pengujian yang
diotomatisasi dan dioptimalkan”.
¾
Dekomposabilitas, “dengan
mengontrol ruang lingkup pengujian, kita dapat lebih cepat mengisolasi masalah
dan melakukan pengujian kembali secara lebih halus”.
¾
Kesederhanaan,
“semakin cepat yang diuji, semakin sedikit kita dapat mengujinya”.
¾
Stabilitas, “semakin
sedikit perubahan, semakin gagguan dalam pengujian”.
¾
Verifikasi, mengacu
kepada rangkaian aktivitas yang memastikan bahwa perangkat lunak secara
tepatmengimplementasikan suatu fungsi terentu.
¾
Validasi, mengacu
pada rangkaian aktivitas berbeda yang memastikan bahwa prangkat lunak yang
dibangun dapat ditelusuri kepersyaratan pelanggan. “Apakah kita membangun
produk yang benar”.
Karakteristik yang
membawa perangkat lunak dapat diuji :
1.Operabilitas, yaitu
: Semakin baik dia berkerja, semakin efisien dia dapat diuji.
2. Obsaikeyabilitas,
yaitu :”Apa yang anda lihat adalah apa yang anda uji”.
3.Kontralabilitas,
yaitu :”Semakin baik kita dapat mengontrol perangkat lunak, semakin banyak
pengujian yang dapat diotomasisasikan dan dioptimalkan”.
4.Dekomposabilitas,
yaitu :”Dengan mengontrol ruang lingup pengujian, kita dapat dengan lebih cepat
mengisolasi masalah dan melakukan pengujian kembali secara lebih halus”.
5.Kesederhanaan,
yaitu:”Semakin sedikit yang kita uji,semakin cepat kita dapat mengujinya”.
6.Stabilitas, yaitu:”Semakin
sedikit perubahan, semakin sedikit pula gangguan dalam pengujian”.
7.Kemampuan untuk
dapat dipahami,yaitu : “Semakin banyak informasi yang kita miliki, semakin
halus pengujian yang akan dilakukan”.
C. Faktor
faktor pengujian perangkat lunak
·
Faktor-faktor
pengujian yang dilakukan meliputi :
·
Kebutuhan yang
berkaitan dengan metodelogi
·
Pendefinisian spesifikasi
fungsional
·
Penentuan spesifikasi
kegunaan
·
Penentuan kebutuhan
portabilitas
·
Pendefinisian antar
muka sistem
D. TEKNIK PENGUJIAN
PERANGKAT LUNAK
1.Pengujian White-Box
Pengujian
White-Box adalah metode desaintest case yang menggunakan struktur kontrol
desain prosedural untuk memperoleh test case. Dengan menggunakan metode
pengujian white box, perekayasa sistem dapat melakukan test case yang :
¾
Memberikan jaminan
bahwa semua jalur independen pada suatu modal telah digunakan paling tidak satu
kali.
¾
Menggunakan semua
keputusan logis pada sisi true dan false
¾
Mengeksekusi semua
loop pada batasan mereka dan baas operasional mereka
¾
Menggunakan struktur
data internal untuk menjamin validitasnya
¾
Pengujian
Black-Box
¾
Pengujian Black Box
digunakan untuk menguji fungsi-fungsi khusus dari Perangkat Lunak yang
dirancang.
¾
Pada teknik
ini,kebenaran Perangkat Lunak yang diuji hanya dilihat berdasarkan keluaran
yang dihasilkan dari data atau kondisi masukan yang diberikan untuk fungsi yang
ada tanpa melihat bagaimana proses untuk mendapatkan keluaran tersebut.
Dari keluaran yang
dihasilkan ,kemampuan program dalam memenuhi kebutuhan pemakai dapat diukur
sekaligus dapat diketahui kesalahan-kesalahannya. Beberapa jenis keasalahan yang dapat diidentifikasi
:
Fungsi tidak benar atau hilang.
¾
Kesalahan antar
muka.
¾
Kesalahan pada
struktur data (pengaksesan Basis Data).
¾
Kesalahan Inisiasi dan
akhir program
¾
Kesalahan Performansi.
2.Pengujian Struktur Kontrol
Pengujian
Kondisi Adalah sebuah metode disain test case yang menggunakan kondisi
logis yang ada pada suatu program.
3.Pengujian Basis PATH
Uji coba basis path adalah teknik uji coba
white box yg diusulkan Tom McCabe. Metode ini memungkinkan perancang test case
mendapatkan ukuran kekompleksan logical dari perancangan prosedural dan
menggunkan ukuran ini sbg petunjuk untuk mendefinisikan basis set dari jalur
pengerjaan. Test case yg didapat digunakan untuk mengerjakan basis set yg
menjamin pengerjaan setiap perintah minimal satu kali selama uji coba.
Faktor - Faktor
Pengujian Perangkat Lunak
Faktor-faktor pengujian yang dilakukan adalah :
¾
Kebutuhan yang
berkaitan dengan metodelogi
¾
Pendefinisian
spesifikasi fungsional
¾
Penentuan spesifikasi
kegunaan
¾
Penentuan kebutuhan
portabilitas
¾
Pendefinisian antar
muka system
E. Strategi pengujian
perangkat lunak.
¾
Pengujian Unit
¾
Pengujian Integrasi
¾
Pengujian Validasi
¾
Pengujian Sistem
No comments:
Post a Comment