MaKALAH
TESTING DAN IMPLEMENTASI
SISTEM
Disusun oleh:
Kelompok 2
Nama kelompok :
v
Happetang
v
Isna
susanti
v
nirwana
v
mira
santika
v
muliana
JURUSAN :SISTEM INFORMASI
STIMIK
LAMAPPAPOLEONRO SOPPENG
Tahun ajaran 2014/2015
A. Pengujian / Testing
Pengujian dilakukan
untuk menjamin kualitas dan juga mengetahui kelemahan dari perangkat lunak. Tujuan dari pengujian ini adalah untuk
menjamin bahwa perangkat lunak yang dibangun
memiliki kualitas yang handal, yaitu mampu
merepresentasikan kajian pokok dari spesifikasi, analisis, perancangan dan pengkodean dari perangkat lunak itu sendiri.
Ada dua
komponen yang harus diperhatikan dalam strategi pengujian,yaitu :
1. Faktor Pengujian yang merupakan hal-hal
yang harus diperhatikan selama melakukan pengujian. Faktor pengujian ini
dipilih sesuai dengan system yang akan diuji.
2. Tahapan pengujian yang merupakan
langkah-langkah dalam melakukan
pengujian.
Ø
Sasaran-sasaran pengujian
Beberapa
sasaran pengujian diantaranya :
1. Pengujian adalah proses eksekusi suatu
program dengan maksud menemukan kesalahan
2. Test case yang baik adalah test case yang
memiliki probabilitas tinggi untuk menemukan kesalahan yang belum pernah ditemukan sebelumnya
3. Pengujian yang sukses adalah pengujian
yang mengungkap semua kesalahan yang belum pernah ditemukan sebelumnya.
Ø Prinsip Pengujian
Prinsip
Pengujian meliputi :
·
Semua pengujian harus dapat ditelusuri sampai ke
persyaratan pelanggan.
Sebagaimana telah kita ketahui, sasaran pengujian
perangkat lunak adalah untuk mengungkapkan kesalahan. Hal ini memenuhi kriteria bahwa cacat yang
paling fatal (dari titik pandang pelanggan) adalah cacat yang menyebabkan program gagal
memenuhi persyaratannya.
·
Pengujian harus direncanakan lama sebelum pengujian
itu mulai.
Perencanaan
pengujian dapat dimulai segera setelah model pernyaratan
dilengkapi. Definisi detail mengeani test case dapat dimulai segera setelah model desain
diteguhkan. Dengan demikian, semua pengujian dapat direncanakan dan dirancang sebelum
semua kode dibangkitkan.
·
Prinsip Pareto berlaku untuk pengujian perangkat
lunak.
Secara
singkat prinsip Paretomengimplikasikan bahwa 80 persen dari semua kesalahan
yang ditemukan selama pengujian sepertinya akan dapat ditelusuri sampai 20 persen dari
semua modul program. Masalahnya,bagaimana mengisolasi modul yang dicurigai dan
mengujinya dengan teliti.
·
Pengujian harus mulai “dari yang kecil” dan berkembang
ke pengujian “yang besar”.
Pengujian
pertama yang direncanakan dan dieksekusi biasanya berfokus pada modul program individual. Selagi pengujian
berlangsung maju, pengujian mengubah fokus dalam usaha menemukan kesalahan pada cluster modul yang
terintegrasi dan akhirnya pada system secara keseluruhan.
·
Pengujian yang mendalam tidak mungkin.
Jumlah
jalur permutasi untuk program yang berukuran menengah-pun sangat besar. Karean itulah
tidak mungkin untuk mengeksekusi setiap kombinasi jalus skema pengujian. Tetapi
dimungkinkan untuk secara tepat mencakup logika program dan memastikan bahwa semua
kondisi dalam desai prosedural telah diuji.
·
Untuk menjadi paling efektif, pengujian harus
dilakukan oleh pihak ketiga yang independent.
Yang
dimaksud dengan kata “yang paling efektif” adalah pengujian yang memiliki probabilitas tertinggi di dalam menemukan
kesalahan (sasaran utama pengujian). Karena perekayasa perangkat lunak yang membuat sistem
tersebut bukanlah orang yang paling tepat untuk melakukan semua pengujian bagi perangkat
lunak.
B.
PENGUJIAN SYSTEM
Definisi Pengujian Sistem
·
Suatu proses yang
dilakukan untuk menilai apakah yang dirancang telah sesuai dengan apa yang diharapkan
·
Suatu kegian untuk
mengevaluasi keunggulan dan kelermahan terhadap sesuatu yang diuji (kwalitas
produk)
·
Mengevaluasi terhadap
urutan kegiatan yang sistematis dalam mencapai tujuan system
·
Mengevaluasi
keseimbangan jumlah pelaksanaan kegiatan dengan beban kerja dalam sesuatu
prosedur kegiatan
Pengujian Sistem
·
Melakukan proses
evaluasi terhadap system yang sudah ada apakah system sudah sesuai yang
dharapkan user
·
Menilai dan
mengevaluasi terhadap output atau ahasil system
·
Menguji terhadpa input,
pengelolaan (proses)dan output system
·
Melakukan penilaian
dan evaluasi terhadpat komponen system prosedur pelaksanaan kegiatan dan mutu
atau kwalitas hasil system
Sistem
pengujian untuk memastikan kualitas dan keandalan sistem langkah kunci dalam
proses pengembangan sistem adalah analisis sistematis pada desain sistem dan
pelaksanaan review akhir.Berdasarkan uji konsep dan tujuan sistem informasi
selama tes harus mengikuti prinsip-prinsip dasar.
·
Sesegera mungkin dan terus
diuji.Pengujian tidak dalam pengembangan aplikasi dilakukan setelah
selesai.Karena kompleksitas asli masalah, keragaman tahap perkembangan serta
koordinasi antara peserta dan faktor lainnya, membuat rambut di semua tahapan
pembangunan mungkin mengalami kesalahan.Oleh
karena itu, tes yang harus dijalankan melalui berbagai tahap perkembangan
secepat mungkin untuk memperbaiki kesalahan, menghilangkan bahaya yang
tersembunyi.
·
Harus dihindari oleh orang-orang asli yang
bekerja atau komitmen kelompok, di satu sisi, pengembang sering enggan untuk
memanggil pekerjaan mereka diakui, dan percaya bahwa perangkat lunak mereka
sendiri dikembangkan tidak ada kesalahan; sisi lain, pengembang kesalahan
adalah pada sayamenguji, mudah untuk program sesuai dengan ide mereka sendiri
untuk mengembangkan ide-ide pengujian, memiliki keterbatasan.Pengujian harus
dilakukan oleh personel khusus untuk melaksanakan, akan lebih obyektif dan
lebih efektif
·
Melakukan sesuai dengan rencana uji ketat,
untuk menghindari uji sewenang-wenang.Rencana pengujian harus mencakup konten
pengujian, penjadwalan, staf, lingkungan pengujian, alat-alat tes dan informasi
tes.Ketat sesuai dengan rencana pengujian
dapat; kemajuan sertifikasi, sehingga semua pihak dapat dikoordinasikan.
·
Jauhkan rencana uji, uji kasus,
sebagai bagian dari dokumentasi perangkat lunak, untuk pemeliharaan kenyamanan
·
Uji kasus secara hati-hati
dirancang, dapat kembali pengujian atau pengujian tambahan dengan mudah.Ketika
Zi benar sebelum uji kasus, atau memodifikasi dasar, dan kemudian menguji.
Sebuah
proses pengujian standar biasanya meliputi kegiatan uji berikut dasar.
ü
menyiapkan rencana uji.Dalam rencana uji, kita sepenuhnya harus
mempertimbangkan waktu keseluruhan proyek pembangunan dan pengembangan ke anak
serta beberapa faktor manusia dan kondisi obyektif, membuat rencana uji layak.Utama isi isi rencana uji, penjadwalan
lingkungan pengujian, uji dan persyaratan yang dibutuhkan untuk menguji
pengaturan pelatihan.
ü
penyusunan kerangka uji.Uji garis didasarkan pada ujian.Ini jelas menetapkan secara rinci sistem
dalam tes untuk fitur atau fitur dari masing-masing harus menyelesaikan item
tes dasar dan kriteria uji penyelesaian.
ü
Menurut garis besar rancangan dan
pengujian untuk menghasilkan uji kasus.Bila
dalam desain uji kasus, kasus uji dapat disajikan di depan teknik pemanfaatan
dan desain, sehingga dalam dokumentasi pengujian desain dan isinya diukur item,
data input, proses pengujian, output yang diharapkan dan sebagainya. untuk melaksanakan ujian.Tahap
implementasi dari tes ini adalah terdiri dari serangkaian siklus uji.Dalam setiap siklus uji, penguji dan
pengembang akan didasarkan pada program persiapan pra-tes dan menyiapkan ujian
yang baik, perangkat lunak uji, atau peralatan untuk tes lengkap.
ü
membuat laporan uji.Test selesai, untuk membentuk laporan pengujian
yang sesuai, utama garis-garis besar tes yang ditetapkan kesimpulan tes yang
cacat dan kesalahan, juga memberikan beberapa saran, seperti metode modifikasi
dapat digunakan, perubahan beban kerja yang diproyeksikandan memodifikasi
petugas yang bertanggung jawab.
Pengujian terhadap system
Ø Personil
· Personil ditempakan sudah sesuai dengan skill atau kemampuan yang
dimilikinya
· Beban kerja yang optimum untuk masing masing personil
· Loyalitas atau kemamuan bekerja sama untuk menyelesaikan suatu kegiatan
· Kemampuan personil dalam menyelesaikan masalah
Ø Pengujian kegiatan
· Prosedur dan system kerja yang sistematis
· Perencanaan yang terkontrol dan terjadwal
· Arah tujuan atau target ang dapat dilaksanakan sesuai dengan perencanaan
· Hasil kegiatan yang terukur
· Kesemimbangan kegiatan dengan bersarnya biaya yang digunakan
Ø Pengujian misi atau tujuan
· Adanya integrasi antara personil yang terlibat dengan kegiatan yang
dilaksanakn dalam mencapai target system
· Kwalitas dari kegiatan yang mewujudkan tujuan system
C.
PENGUJIAN PERANGKAT LUNAK
Pengujian perangkat lunak adalah elemen kritis dari jaminan
kualitas perangkat lunak danmerepresentasikan spesifikasi, desain dan
pengkodean.Meningkatnya visibilitas (kemampuan) perangkat lunak sebagai suatu
elemen sistem dan “biaya” yang muncul akibat kegagalan perangkat lunak,
memotivasi dilakukannya perencanaan yang baik melalui pengujian yang teliti.
Pada dasarnya, pengujian merupakan satu langkah dalam proses rekayasa perangkat
lunak yang dapat dianggap sebagai hal yang merusak daripada membangun.
Dalam melakukan uji coba ada 2 masalah penting yang akan dibahas, yaitu :
A. Teknik Uji Coba Perangkat Lunak
Pada dasarnya, pengujian merupakan suatu
proses rekayasa perangkat lunak yg dapat dianggap (secara psikologis) sebagai
hal yg destruktif daripada konstruktif.
·
SASARAN PENGUJIAN
(Glen Myers) :
1.
Pengujian adalah proses eksekusi
suatu program dengan maksud menemukan kesalahan.
2.
Test case yang baik adalah test
case yg memiliki probabilitas tinggi untuk menemukan kesalahan yang belum
pernah ditemukan sebalumnya.
3.
Pengujian yang sukses adalah pengujian yg
mengungkap semua kesalahan yang belum pernah ditemukan sebelumnya.
·
PRINSIP PENGUJIAN (diusulkan
Davis) :
1.
Semua pengujian harus dapat
ditelusuri sampai ke persyaratan pelanggan.
2.
Pengujian harus direncanakan lama
sebelum pengujian itu dimulai.
3.
Prinsip Pareto berlaku untuk pengujian
perangkat lunak. Prinsip Pareto mengimplikasikan 80% dari semua kesalahan yg
ditemukan selama pengujian sepertinya akan dapat ditelusuri sampai 20% dari
semua modul program.
4.
Pengujian harus mulai "dari
yg kecil" dan berkembang ke pengujian "yang besar".
5.
Pengujian yg mendalam tidak mungkin.
6.
Paling efektif, pengujian
dilakukan oleh pihak ketiga yg independen.
·
TESTABILITAS
Testabilitas perangkat lunak
adalah seberapa mudah sebuah program komputer dapat diuji.Karena pengujian
sangat sulit, perlu diketahui apa yang dapat dilakukan untuk membuatnya menjadi
mudah. Kadang-kadang
pemrogram beresedia melakukan hal-hal yang akan membantuproses pengujian dan
checklist mengenai masalah-masalah desai yang mudah, fitur dan lain sebagainya yang berguna dalam bernegosiasi
dengan mereka.
Checklist
berikut memberikan serangkaian karakteristik yang membawa kepada perangkat lunak yang dapat diuji :
v Operabilitas. “Semakin baik dia bekerja,
semakin efisien dia dapat diuji”
1) Sistem memiliki beberapa bug
(bug menambah analisis dan biaya pelaporan keproses pengujian).
2) Tidak ada bug yang memblok
eksekusi pengujian
3) Produk berkembang di dalam
tahapan fungsional (memungkinkan pengemabngandan pengujian secara simultan)
v Observabilitas. “Apa yang Anda lihat adalah
apa yang Anda uji”
1) Output yang berbeda
dikeluarkan oleh masing-masing input.
2) Tahap dan variabel sistem
dapat dilihat atau diantrikan selama eksekusi.
3) Sistem dan variabel yang lalu
dapat dilihat atau diantrikan (misal : log transaksi)
4) Semua faktor yang mempengaruhi
output dapat dilihat.
5) Kesalahan itnernal dideteksi secara otomatis
melalui mekanisme selftesting.
6) Kesalahan internal dilaporkan
secara otomatis.
7) Kode sumber dapat diakses
v Kontrolabilitas. “Semakin baik kita dapat
mengontrol perangkat luank, semakin banyak
pengujian
yang dapat diotomatisasi dan dioptimalkan”
1) Semua output yang mungkin
dapat dimnculkan melalui beberapa kombinasi input.
2) Semua kode dapat dieksekusi
melalui berbagai kombinasi input.
3) Keadaan dan varibale perangkat lunak dan
perangkat keras dapat dikontrol secara langsung oleh perekayasa pengujian.
4) Format input dan output
konsistem dan terstruktur.
5) Pengujian dapat dispesifikasi,
dioptimasi dan direproduksi dengan baik.
v Dekomposabilitas. “Dengan mengontrol ruang
lingkup pengujian, kita dapat dengan lebih cepat mengisolasi masalah dan melakuakn pengujian
kembali secara lebih halus”
1) Sistem perangkat luank
dibangun dari modul-modul independen.
2) Modul-modul perangkat lunak
dapat diuji secara independen.
v Kesederhanaan. “Semakin sedikit yang diuji,
semakin cepat kita dapat mengujinya”
1) Kesederhanaan fungsional
(seperti, kumpulan fitur adalah kebutuhan minimum
untuk memenuhi persyaratan).
2)
Kesederhanaan struktural (seperti, arsitektur dimodularisasi
untuk membatasi
penyebaran kesalahan)
3)
Kesederhanaan kode (seperti, standar pengkodean
diadopsi demi kemduahan
inspeksi dan pemeliharaan).
v Stabilitas. “Semakin sedikti perubahan,
semakin sedikit ganggunan dalam pengujian”
1) Pengujian ke perangkat lunak
tidak sering.
2) Perubahan ke perangkat lunak
terkontrol.
3) Perubahan ke perangkat lunak
memvalidasi pengujian yang sudah ada.
4) Kegagalan perangkat lunak
dapat diperbaiki dengan baik
v Kemampuan untuk dapat dipahami. “Semakin banyak informasi
yang kita miliki, semakin halus pengujian yang akan dilakukan”
1) Desain dipahami dengan baik.
2) Ketergantungan di antara
komponen internal, eksternal dan yang dipakai bersama,dipahami dengan baik.
3) Perubahan ke desai
dikomunikasikan.
4) Dokumentasi teknik dapat
diakses dengan cepat.
5) Dokumentasi teknis
diorganisasikan dengan baik.
6) Dokumentasi teknis spesifik
dan detail.
7) Dokumentasi teknis akurat
·
ATRIBUT PENGUJIAN YG BAIK :
Berikut
adalah atribut-atribut pengujian yang baik:
*Memiliki probabilitas yg tinggi menemukan kesalahan.
* Tidak redundan.
* Harusnya ‘jenis terbaik’.
* Tidak boleh terlalu sederhana atau terlalu kompleks.
1.
Pengujian yang
baik memiliki probabilitas yang tinggi untuk menemukan kesalahan. Untuk
mencapai hal ini, penguji harus memahami perangkat lunak dan berusaha
mengembangkan gambaran mental mengenai bagaimana perangkat lunak dapat gagal.
Idealnya kelas-kelas kegagalan itu diselidiki. Sebagai contoh, kelas kegagalan
potensial pada GUI adalah kegagalan untuk mengenali posisi mouse yang sesuai. Serangkaian
pengujian akan dirancang untuk menguji mouse untuk memperlihatkan kesalahan
didalam pengenalan posisi mouse.
2.
Pengujian yang
baik tidak redudan. Waktu pengujian dan sumber daya terbatas. Tidak ada
manfaatnya melakukan pengujian dengan tujuan yang sama dengan pengujian
lainnya. Setiap pengujian harus memiliki tujuan yang berbeda.
3.
Pengujian yang
baik seharusnya “jenis terbaik”. Dalam suatu kelompok pengujian yang memiliki
tujuan yang serupa, batasan waktu dan
sumber daya dapat menghalagi eksekusi hanya
kelompok kecil dari pengujian tersebut. pada kasus semacam ini maka pengujian
yang memiliki kemungkinan paling besar
untuk mengungkap seluruh kelas kesalahan yang tinggi harus digunakan.
4.
Pengujian yang
baik tidak boleh terlalu sederhana atau terlalu kompleks. Secara umum
masing-masing test case harus dieksekusi secara terpisah.
·
DESAIN TEST CASE:
I.
Pengujian white-box
II.
pengujian black-box
III. Pengujian graph-based.
IV.
Integrasi Bottom-Up
V.
Integrasi Top-Down.
VI.
Uji Sistem.
I.
Pengujian white-box
Berfokus pada struktur control program. Test case
dilakukan untuk memastikan bahwa semua statemen pada program telah dieksekusi
paling tidak satu kali selama pengujian dan bahwa semua kondisi logis telah
diuji. Pengujian basic path, tehnik pengujian white-box, menggunakan grafik
(matriks grafiks) untuk melakukan serangkaian pengujian yang independent secara
linear yang akan memastikan cakupan.
Pengujian aliran data dan kondisi lebih lanjut menggunakan logika program
dan pengujian loop menyempurnakan tehnik white-box yang lain dengan memberikan
sebuah prosedur untuk menguji loop dari tingkat kompleksitas yang bervariasi. Pengujian black-box didesain untuk mengungkap kesalahan pada persyaratan
fungsional tanpa mengabaikan kerja internal dari suatu program.
II.
Pengujian black-box.
Berfokus pada
domain informasi dari perangkat lunak, dengan melakukan test case dengan
menpartisi domain input dari suatu program dengan cara yang memberikan cakupan
pengujian yang mendalam.
gambar perbandingan pengujian black box dan whitebox
III.
Pengujian graph-based.
Mengeksplorasi hubungan antara dan tingkah laku
objek-objek program. Partisi ekivalensi membagi domain input ke dalam kelas
data yang mungkin untuk melakukan fungsi perangkat lunak tertentu. Analisis
nilai batas memeriksaa kemampuan program untuk menangani data pada batas yang
dapat diterima.Metode pengujian yang terspesialisasi meliputi sejumlah luas
kemampuan perangkat lunak dan area aplikasi. GUI, arsitektur client/ server,
dokumentasi dan fasilitas help dan sistem real time masing-masing membutuhkan
pedoman dan tehnik khusus untuk pengujian perangkat lunak.
IV.
Pengujian Integrasi
Top-Down
Adalah pendekatan incremental dengan menggerakkan ke
bawah melalui hirarki control, dimulai dengan control utama. Strategi intergrasi
top-down memeriksa control mayor atau keputusan pada saat awal di dalam proses
pengujian. Pada struktur program yang difaktorkan dengan baik, penarikan
keputusan terjadi pada tingkat hirarki yang lebih tinggi sehingga terjadi lebih
dulu.
Strategi top-down kelihatannya tidak sangat rumit,
tetapi di dalam praktenya banyak menimbulkan masalah logistic. Biasanya masalah
ini terjadi jika dibutuhkan pemrosesan di dalam hirarki pada tingkat rendah
untuk menguji secara memadai tingkat yang lebih tinggi.
V.
Pengujian Integrasi
Bottom-up.
Memulai konstruksi dan pengujian dengan modul atomic
(modul pada tingkat paling rendah pada struktur program). Karena modul
diintegrasikan dari bawah ke atas, maka pemrosesan yang diperlukan untuk modul
subordinate ke suatu tuingkat yang diberikan akan selalu tersedia dan kebutuhan
akan stub dapat dieliminasi. Strategi integrasi bottom-up dapat diimplementasi
dengan langkah-langkah:
- modul tingkat rendah digabung ke dalam cluster (build) yang
melakukan subfungsi perangkat lunak spesifik.
- Driver (program control untuk pengujian) ditulis untuk
mengkoordinasi input dan output test case
- cluster diuji.
- driver diganti dan cluster digabungkan dengan menggerakkannya ke
atas di dalam struktur program.
VI.
Uji Sistem.
Uji sistem: Sistem software diuji keseluruhan. Ini
memverifikasi semua elemen secara langsung untuk memastikan bahwa semua fungsi
dan performance sistem diterima dalam lingkungan target.
Terbagi
menjadi 4 bagian yaitu:
1.
Recovery Testing :
sistem tes yang menekan software untuk gagal dengan cara yang bervariasi dan
memverifikasi perbaikan sendiri dengan baik
2.
Security Testing :
usaha untuk memverifikasi mekanisme perlindungan yang dibuat dalam sistem
apakah akan melindunginya dengan semestinya.
3.
Stress Testing :
didesain untuk menghadapi program dengan situasi abnormal.
4.
Pengujian instalasi :
didesain untuk menguji prosedur instalasi dan software pendukungnya
Area fokus adalah:
— Fungsi dan performance system
— Reliability(ketersediaan) dan recoverability (kemampuan menutup/recovery
test) system
— Instalasi (uji instalasi) system
— Perilaku pada kondisi tertentu (uji tekanan dan load) system
— Operasi user (acceptance test/alpha test/) system
— Integrasi dan kolaborasi hardware dan software
— Integrasi software eksternal dan sistem
B.STRATEGI UJI COBA PERANGKAT LUNAK
Strategi uji coba perangkat lunak
memudahkan para perancang untuk menentukan keberhasilan system yg telah
dikerjakan. Hal yang harus diperhatikan adalah langkah-langkah perencanaan dan
pelaksanaan harus direncanakan dengan baik dan berapa lama waktu, upaya dan
sumber daya yg diperlukan.
Strategi uji coba mempunyai karakteristik sbb
:
* Pengujian mulai pada tingkat modul yg
paling bawah, dilanjutkan dgn modul di atasnya kemudian hasilnya dipadukan.
* Teknik pengujian yang berbeda mungkin
menghasilakn sedikit perbedaan (dalam hal waktu)
* Pengujian dilakukan oleh pengembang
perangkat lunak dan (untuk proyek yang besar) suatu kelompok pengujian yang
independen.
* Pengujian dan debugging
merupakan aktivitas yang berbeda, tetapi debugging termasuk dalam strategi
pengujian.
Pengujian perangkat lunak adalah
satu elemen dari topik yang lebih luas yang sering diacu sebagai verifikasi dan
validasi (V& V).
Verifikasi : Kumpulan aktifitas yg
menjamin penerapan perangkat lunak benar-benar sesuai dgn fungsinya.
Validasi : Kumpulan aktivitas yang
berbeda yang memastikan bahwa perangkat lunak yang dibangun dapat memenuhi
keperluan pelanggan.
1. PENGUJIAN UNIT
Unit testing (uji coba unit)
fokusnya pada usaha verifikasi pada unit terkecil dari desain perangkat lunak,
yakni modul. Uji coba unit selalu berorientasi pada white box testing dan dapat
dikerjakan paralel atau beruntun dengan modul lainnya.
2. PENGUJIAN INTEGRASI
Pengujian terintegrasi adl teknik
yg sistematis untuk penyusunan struktur program, pada saat bersamaan dikerjakan
uji coba untuk memeriksa kesalahan yg nantinya digabungkan dengan interface.
Metode pengujian
a) top down integration
b) buttom up integration
a)
Pengujian
integrasi top down(top down integration)
Top down integration adalah pendekatan incremental dengan menggerakkan ke bawah melalui hirarki control, dimulai dengan control utama. Strategi intergrasi top-down memeriksa control mayor atau keputusan pada saat awal di dalam proses pengujian. Pada struktur program yang difaktorkan dengan baik, penarikan keputusan terjadi pada tingkat hirarki yang lebih tinggi sehingga terjadi lebih dulu.
Strategi
top-down kelihatannya tidak sangat rumit, tetapi di dalam praktenya banyak
menimbulkan masalah logistic. Biasanya masalah ini terjadi jika dibutuhkan
pemrosesan di dalam hirarki pada tingkat rendah untuk menguji secara memadai
tingkat yang lebih tinggi.
b) Pengujian Integrasi Bottom-up (buttom up integration)
Bottom up integration memulai konstruksi dan pengujian dengan modul atomic (modul pada tingkat paling rendah pada struktur program). Karena modul diintegrasikan dari bawah ke atas, maka pemrosesan yang diperlukan untuk modul subordinate ke suatu tuingkat yang diberikan akan selalu tersedia dan kebutuhan akan stub dapat dieliminasi. Strategi integrasi bottom-up dapat diimplementasi dengan langkah-langkah:
1.
Modul tingkat rendah digabung ke
dalam cluster (build) yang melakukan subfungsi perangkat lunak spesifik.
2.
Driver (program control untuk
pengujian) ditulis untuk mengkoordinasi input dan output test case
3.
Cluster diuji
4.
Driver diganti dan cluster
digabungkan dengan menggerakkannya ke atas di dalam struktur program.
Karakteristik utama dari pengujian perangkat lunak :
- Formal-Rencana uji perangkat lunak merupakan bagian dari
pengembangan proyek dan rencana mutu, dijadwalkan di
muka dan item sentral muncul dalam perjanjian pembuatan perangkat lunak
yang ditandatangani antara pelanggan dan pengembang. Dengan kata lain,
pengujian perangkat lunak secara ad hoc oleh rekan atau pemeriksaan
berkala oleh pemimpin tim pemrograman tidak dapat dianggap sebagai tes
perangkat lunak.
- Tim penguji khusus – Sebuah tim independen atau eksternal konsultan
yang mengkhususkan diri dalam pengujian ditugaskan untuk melaksanakan
tugas ini terutama dalam rangka untuk menghilangkan bias dan untuk
menjamin pengujian yang efektif oleh para profesional terlatih. Selain
itu, secara umum diterima bahwa tes yang dilakukan oleh pengembang sendiri
akan menghasilkan hasil yang buruk, sebagai individu yang mengembangkan
produk asli akan menemukan kesulitan untuk mengungkapkan kesalahan yang
mereka tidak diidentifikasikan lebih awal. Namun, unit test terus
dilakukan oleh pengembang di banyak organisasi.
- Menjalankan program – Segala bentuk kegiatan jaminan kualitas yang
tidak melibatkan menjalankan perangkat lunak, untuk pemeriksaan contoh
kode, tidak dapat dianggap sebagai kegiatan ujian
- Prosedur pengujian disetujui – Proses pengujian yang dilakukan
berdasarkan suatu rencana uji dan prosedur pengujian yang telah disetujui
sebagai sesuai dengan prosedur SQA diadopsi oleh organisasi yang
berkembang
- Uji kasus disetujui – kasus uji yang akan diperiksa didefinisikan
secara penuh oleh rencana uji. Tidak ada kelalaian atau penambahan
diharapkan terjadi selama pengujian. Dengan kata lain, sekali proses telah
dimulai, Penguji tidak diperkenankan untuk menerapkan kebijaksanaan dengan
menghilangkan batu ujian jika dianggap berlebihan atau dengan menambahkan
ujian baru, meskipun mungkin menjanjikan.
D. LANGKAH-LANGKAH PENGUJIAN
1.
Langkah-langkah yang
seharusnya dilakukan ketika melakukan pengujian, adalah :
Menentukan apa yang akan diukur melalui pengujian
Menentukan apa yang akan diukur melalui pengujian
2.
Menentukan
bagaimana pengujian akan dilaksanakan
3.
Membangun
suatu kasus uji (test case), yaitu sekumpulan data atau situasi yang akan
digunakan dalam pengujian.
4.
Menentukan
hasil yang diharapkan atau hasil sebenarnya
5.
Menjalankan
kasus pengujian
6.
Membandingkan
hasil pengujian dan hasil yang diharapkan.
Ketika akan melakukan pengujian terdapat beberapa hal yang harus diperhatikan,
yaitu:
1.
Menspesifikasikan
kebutuhan (requirement) produk dalam bentuk yang dapat diukur (quantifiable)
jauh sebelum pengujian dimulai.
2.
Menyatakan
tujuan pengujian secara eksplisit.
3.
Memahami
pengguna perangkat lunak dan membuat profil dari tiap kategori pengguna.
4.
Membuat
rencana pengujian yang menekankan pada rapid cycle testing.
5.
Membuat
perangkat lunak robust yang dapat menguji dirinya sendiri.
6.
Menggunakan
formal technical review sebagai penyaring sebelum pengujian dilakukan.
7.
Menggunakan
formal technical review untuk menilai strategi pengujian dan kasus uji.
8.
Mengembangkan
ancangan peningkatan berlanjut untuk proses pengujian.
Di awal
melakukan pengujian, hal pertama yang harus dilakukan adalah membuat
rencana pengujian, yang mencakup hal-hal berikut :
rencana pengujian, yang mencakup hal-hal berikut :
·
Proses testing : Mendeskripsi fase-fase
utama dalam pengujian
·
Pelacakan
Kebutuhan : Menentukan
semua kebutuhan user yang akan diujikan secara individu
·
Item yg diuji : Menspesifikasi
komponen sistem yang diuji
·
Jadwal testing
·
Prosedur
Pencatatan Hasil dan Prosedur
·
Kebutuhan akan
Hardware dan Software
·
Kendala-kendala
E. TUJUAN PENGUJIAN
Ø Testing dilakukan untuk memastikan mutu dari suatu
produk yaitu menguji apakah produk (dalam hal ini system informasi) yang
dihasilkan telah sesuai dengan mutu yang dipersyaratkan. Testing dilakukan
untuk memastikan atau menjaga mutu suatu produk
Ø Testing merupakan proses analisa dan entitas software,
pada testing ini bertujuan untuk mendeteksi adanya perbedaan antrar kondisi
software yang ada dengan kondisi yang diinginkan, untuk melihat kerusakan suatu
produk melakukan evaluasi fitur fitur dari software.
Tujuan
Langsung :
- Untuk
mengidentifikasi dan mengungkapkan sebagai kesalahan sebanyak
mungkin dalam perangkat lunak yang diuji.
- Untuk membawa
perangkat lunak diuji, setelah memperbaiki kesalahan yang diidentifikasi
dan melakukan pengujian ulang, pada tingkat kualitas yang memadai.
- Untuk melakukan
tes yang diperlukan secara efisien dan efektif, dalam keterbatasan
anggaran dan penjadwalan.
Tujuan Tidak
Langsung :
- Untuk menyusun
catatan kesalahan perangkat lunak untuk digunakan dalam pencegahan
kesalahan (dengan tindakan perbaikan dan pencegahan).
DAFTAR PUSTAKA
1.
B.
Beizer,1990,Software Testing techniques,2nd Edition, Van Nostrand
Reinhold.
2.
Glen
Myers,1979,The Art of Software Testing,Wiley
4.
Testing (Pengujian
Perangkat Lunak), http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=3&cad=rja&uact=8&ved=0CCoQFjAC&url=http%3A%2F%2Fdosen.amikom.ac.id%2Fdownloads%2Fmateri%2FTESTING%2520PERANGKAT%2520LUNAK.doc&ei=Nm5PVKjVNqXImwXTtICABA&usg=AFQjCNHAFqsDq-1s1C2xMWkNT5uZhYBDog&sig2=SkCv8CaESjkgCzTdlQR1DQ&bvm=bv.77880786,d.dGY , 14/10/2014
5.
Testing dan
implementasi - SlideShare, http://www.slideshare.net/fatonitkj/testing-dan-implementasi, 17/10/2014
7.
Testing Dan
Implementasi Perangkat Lunak, http://rekayasaperangkat.blogspot.com/2008/12/pengujian-dan-implementasi-perangkat.html, 18/10/2014
8.
TEKNIK
PENGUJIAN PERANGKAT LUNAK , http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CB0QFjAA&url=http%3A%2F%2Fkarmila.staff.gunadarma.ac.id%2FDownloads%2Ffiles%2F31319%2FTEKNIK%2BPENGUJIAN%2BPERANGKAT%2BLUNAK.pdf&ei=03RPVMPYMaeSmwXj2oLIDg&usg=AFQjCNGTqTUdqQlt2tY0HIfFd0KwvOpArQ&sig2=Ml0U5W3W26-lykLQtlm-xw&bvm=bv.77880786,d.dGY, 18/10/2014
terimakasih telah berbagi...
BalasHapuslasonu
BalasHapusterima kasih, sangat bermanfaat
BalasHapusKomentar ini telah dihapus oleh pengarang.
BalasHapusKomentar ini telah dihapus oleh pengarang.
BalasHapusKomentar ini telah dihapus oleh pengarang.
BalasHapusHalo kak, terimakasih artikelnya... ini sangat membantu saya dalam menyelesaikan tugas kuliah saya. oh ya kak, perkenalkan nama saya Nurhamimah dan jangan lupa kunjungi website kampus saya ISB Atma Luhur
BalasHapus