View
218
Download
0
Category
Preview:
Citation preview
8/19/2019 model sistem perangkat lunak.docx
1/13
Modul Sistem Perangkat Lunak
BAB I
PENGEMBANGAN SISTEM PERANGKAT LUNAK
Pengembangan sistem perangkat lunak dapat didefnisikan sebagai
proses representasi abstrak pada sistem perangkat lunak secara signifkandan bertahap. Setiap pengembangan sebuah sistem perangkat lunak
terdapat peningkatan dalam sistem sebuah perangkat lunak tersebut.
Seperti kecepat dan keakurat dalam mendeskripsikan solusi dan
mengembangkan sistemperangkat lunak akan semakin meningkat, juga
hasilnya mudah dikembangkan dan dipelihara.
terdapat metodologi khusus dalam pengembangan sistem perangkat
lunak. Dengan adanya metodologi pengembangan sistem perangkat
lunak, proses pengumpulan metode dan konvensi notasi dapat
didefnisikan untuk mengembangkan sistem perangkat lunak secara
terorganisir. Berikut batu landasan yang menopang rekayasa perangkat
lunak menurut Rogers S. Pressman:
b.!
!
perangkat
metode
proses
"ocus kualitas
8/19/2019 model sistem perangkat lunak.docx
2/13
#etodologi pengembangan sistem perangkat lunak adalah suatu strategipengembangan yang memadukan proses, metode, dan perangkat.
#etode$metode rekayasa perangkat lunak, memberikan teknik untuk
membangun perangkat lunak. Berkaitan dengan serangkaian tugas yang
luas yang menyangkut analisis kebutuhan, konstruksi program, desain,
pengujian, dan pemeliharaan %Rogers S. Pressman:&''&(.
)ntuk menyelesaikan masalah pada pengembangan sistem perangkat
lunak, tim perekayasa harus menganalisa dan menyusunan
perkembangan yang mencakup lapisan proses, metode, dan perangkat
sehingga menghasilkan suatu metode yang dapat mengembangkan
sistem perangkat lunak tersebut. Pengembangan di mulai dengan
menentukan #odel rekayasa perangkat lunak dipilih berdasarkan si*at
aplikasi dan proyek tertentu, metode dan perangkat yang akan dipakai,
dan control serta penyampaian yang dibutuhkan.
BAB II
MODEL SISTEM PERANGKAT LUNAK
! Model Sekuensial Linier atau "ater#all De$elo%ment
Model
#odel Sekuensial +inier atau disebut #odel Pengembangan ir
-erjun, merupaka perkembangan perangkat lunak yang sistematik
dan sekunsial yang dimulai pada tingkat dan kemajuan sistem pada
seluruh tahapan analisis, desain, kode, pengujian, dan
&
8/19/2019 model sistem perangkat lunak.docx
3/13
8/19/2019 model sistem perangkat lunak.docx
4/13
o Dokumen pengembangan sistem sangat terorganisir, karena
setiap *ase harus terselesaikan dengan lengkap sebelum
melangkah ke *ase berikutnya.
Kekurangan Model Sekuensial Linear ( "ater#all
De$elo%ment Model )o Proyek yang sebenarnya jarang mengikuti alur sekuensial
seperti diusulkan, sehingga perubahan yang terjadi dapat
menyebabkan hasil yang sudah didapatkan tim pengembang
harus diubah kembali2iterasi sering menyebabkan masalah
baru.o -erjadinya pembagian proyek menjadi tahap$tahap yang tidak
4eksibel, karena komitmen harus dilakukan pada tahap a0al
proses.o Sulit untuk mengalami perubahan kebutuhan yang diinginkan
oleh customer2pelanggan.o Pelanggan harus sabar untuk menanti produk selesai, karena
dikerjakan tahap per tahap, dan proses pengerjaanya akan
berlanjut ke setiap tahapan bila tahap sebelumnya sudah
benar$benar selesai.o Perubahan ditengah$tengah pengerjaan produk akan
membuat bingung tim pengembang yang sedang membuat
produk.o danya 0aktu kosong %menganggur( bagi pengembang,
karena harus menunggu anggota tim proyek lainnya
menuntaskan pekerjaannya.
*! Model Protot+%e
#odel Prototype merupakan suatu metode generasi selanjutnya yang
tidak hanya sekedar evolusi dalam dunia pengembangan perangkat
lunak, tetapi juga merevolusi metode pengembangan perangkat lunak
yang lama yaitu sistem sekuensial.
5
8/19/2019 model sistem perangkat lunak.docx
5/13
#ekanisme model prototype dijalankan melalui sistem perangkat lunak
yang telah diatur agar pelanggan dapat memberi tambahan masukkan
kedalam sistem perangkat lunak sehingga kualitas sistem semakin
bertambah.
-ahapan model prototype:
• Pengum%ulan ke&utu'an
Pelanggan dan pengembang bersama$sama mendefnisikan
*ormat seluruh perangkat lunak, mengidentifkasikan semua
kebutuhan, dan garis besar sistem yang akan dibuat.
• Mem&angun %rotot+%ing
#embangun prototyping dengan membuat perancangansementara yang ber*okus pada penyajian kepada pelanggan
%misalnya dengan membuat input dan *ormat output(.
• E$aluasi %roto%t+%ing
6valuasi ini dilakukan oleh pelanggan, apakah prototyping yang
sudah dibangun sudah sesuai dengan keinginan pelanggan atau
belum. 7ika sudah sesuai, maka langkah selanjutnya akan
diambil. 8amun jika tidak, prototyping direvisi dengan
mengulang langkah$langkah sebelumnya.• Mengkodekan sistem
Dalam tahap ini prototyping yang sudah di sepakati
diterjemahkan ke dalam bahasa pemrograman yang sesuai.
• Mengu,i sistemSetelah sistem sudah menjadi suatu perangkat lunak yang siap
pakai, kemudian dilakukan proses Pengujian. Pengujian ini
dilakukan dengan hite Bo9, Black Bo9, Basis Path, pengujian
arsitektur, dll.• E$aluasi Sistem
Pelanggan mengevaluasi apakah perangkat lunak yang sudah
jadi sudah sesuai dengan yang diharapkan . 7ika ya, maka proses
akan dilanjutkan ke tahap selanjutnya, namun jika perangkat
lunak yang sudah jadi tidak2belum sesuai dengan apa yang
diharapkan, maka tahapan sebelumnya akan diulang.
• Menggunakan sistem
Perangkat lunak yang telah diuji dan diterima pelanggan siap
untuk digunakan. #odel Prototyping ini sangat sesuai diterapkan
8/19/2019 model sistem perangkat lunak.docx
6/13
untuk kondisi yang beresiko tinggi di mana masalah$masalah
tidak terstruktur dengan baik, terdapat 4uktuasi kebutuhan
pemakai yang berubah dari 0aktu ke 0aktu atau yang tidak
terduga, bila interaksi dengan pemakai menjadi syarat mutlakdan 0aktu yang tersedia sangat terbatas sehingga butuh
penyelesaian yang segera. #odel ini juga dapat berjalan dengan
maksimal pada situasi di mana sistem yang diharapkan adalah
yang inovati* dan mutakhir sementara tahap penggunaan
sistemnya relati* singkat.
• Contoh Penerapan Metode Prototype.
Sebuah rumah sakit ingin membuat aplikasi sistem database
untuk pendataan pasiennya. Seorang atau sekelompok
programmer akan melakukan identifkasi mengenai apa saja
yang dibutuhkan oleh pelanggan, dan bagaimana model kerja
program tersebut. /emudian dilakukan rancangan program yang
diujikan kepada pelanggan. ;asil2penilaian dari pelanggan
dievaluasi, dan analisis kebutuhan pemakai kembali di lakukan.
• Kele&i'an Model Protot+%e )
8/19/2019 model sistem perangkat lunak.docx
7/13
o Pelanggan berpartisipasi aktif dalam pengembangan sistem, sehingga
hasil produk pengembangan akan semakin mudah disesuaikan dengan
keinginan dan kebutuhan pelanggan.o Penentuan kebutuhan lebih mudah di0ujudkan.o #empersingkat 0aktu pengembangan produk perangkat
lunak.o danya komunikasi yang baik antara pengembang dan
pelanggan.o Pengembang dapat bekerja lebih baik dalam menentukan
kebutuhan pelanggan.o +ebih menghemat 0aktu dalam pengembangan sistem.
o Penerapan menjadi lebih mudah karena pelanggan
mengetahui apa yang diharapkannya.
• Kekurangan Model Protot+%e )
o Proses analisis dan perancangan terlalu singkat.o Biasanya kurang 4eksibel dalam mengahadapi perubahan.
o alaupun pemakai melihat berbagai perbaikan dari setiap
versi prototype, tetapi pemakai mungkin tidak menyadari
bah0a versi tersebut dibuat tanpa memperhatikan kualitas
dan pemeliharaan jangka panjang.o Pengembang kadang$kadang membuat kompromi
implementasi dengan menggunakan sistem operasi yang
tidak relevan dan algoritma yang tidak efsien.
-! Model Ra%id A%%li.ation De$elo%ment /RAD0
Rapid plication Development %RD( adalah sebuah model proses
perkembangan sistem perangkat lunak sekuensial linier yang
menekankan siklus perkembangan yang sangat pendek %kira$kira kecepatan tinggi? dari model sekuensial linier dimana
perkembangan cepat dicapai dengan menggunakan pendekatan
konstruksi berbasis komponen.
@
8/19/2019 model sistem perangkat lunak.docx
8/13
-ahapan A tahapan #odel Rapid pplication Development %RD(:
• Bussiness Modeling
"ase ini untuk mencari aliran in*ormasi yang dapat menja0abpertanyaan berikut:
o n*ormasi apa yang menegndalikan proses bisnisCo n*ormasi apa yang dimunculkanCo Di mana in*ormasi digunakan Co Siapa yang memprosenya C
• Data Modeling
liran in*ormasi yang didefnisikan sebagai bagian dari *ase
bussiness modeling disaring ke dalam serangkaian objek data
yang dibutuhkan untuk menopang bisnis tersebut.
/arakteristik %atribut( masing$masing objek diidentifkasi dan
hubungan antar objek$objek tersebut didefnisikan.
• Proses Modeling
liran in*ormasi yang didefnisikan di dalam *ase data
modeling ditrans*ormasikan untuk mencapai aliran in*ormasi
yang perlu bagi implementasi sebuah *ungsi bisnis. ambaran
pemrosesan diciptakan untuk menambah, memodifkasi,
menghapus, atau mendapatkan kembali sebuah objek data.
• A%li.ation Generation
Selain menggunakan bahasa pemrograman generasi ketiga,
RD juga memakai komponen program yang telah ada atau
menciptakan komponen yang bisa dipakai lagi. la$alat bantu
bisa dipakai untuk mem*asilitasi konstruksi perangkat lunak.
• Testing dan Turno$er
/arena proses RD menekankan pada pemakaian kembali,
banyak komponen program telah diuji. ;al ini mengurangi
keseluruhan 0aktu pengujian. -etapi komponen baru harus
diuji dan semua inter*ace harus dilatih secara penuh.
8/19/2019 model sistem perangkat lunak.docx
9/13
• Kelebihan Model RAD :
o Lebih efektif dari Pengembangan Model waterfall/sequential linear dalam
menghasilkan sistem yang memenuhi kebutuhan langsung dari pelanggan.
o 1ocok untuk proyek yang memerlukan 0aktu yang singkat.o #odel RD mengikuti tahap pengembangan sistem seperti
pada umumnya, tetapi mempunyai kemampuan untuk
menggunakan kembali komponen yang ada sehingga
pengembang tidak perlu membuatnya dari a0al lagi
sehingga 0aktu pengembangan menjadi lebih singkat dan
efsien.
• Kekurangan Model RAD :
o Model R! menuntut pengembangan dan pelanggan memiliki komitmen
di dalam akti"itas rapid#fire yang diperlukan untuk melengkapi sebuah
sistem, di dalam kerangka waktu yang sangat diperpendek. $ika komitmen
tersebut tidak ada, proyek R! akan gagal.
o -idak semua aplikasi sesuai untuk RD, bila system tidak
dapat dimodulkan dengan teratur, pembangunan
komponen penting pada RD akan menjadi sangat
bermasalah.o RD tidak cocok digunakan untuk sistem yang mempunyai
resiko teknik yang tinggi.o #embutuhkan -enaga kerja yang banyak untuk
menyelesaikan sebuah proyek dalam skala besar.o 7ika ada perubahan di tengah$tengah pengerjaan maka
harus membuat kontrak baru antara pengembang dan
pelanggan.
=
8/19/2019 model sistem perangkat lunak.docx
10/13
1! Model E$olutionar+ De$elo%ment ( E$olutionar+
So#t2are Pro.ess Models
#odel 6volutionary Development bersi*at iterati* %mengandung
perulangan(. ;asil prosesnya berupa produk yang makin lama
makin lengkap sampai versi terlengkap dihasilkan sebagai produk
akhir dari proses. #odel 6volutionary Development 2 6volutionary
So*t0are Process terbagi menjadi &, yaitu :
Model Incremental
#odel ncremental merupakan hasil kombinasi elemen$elemendari model 0ater*all yang diaplikasikan secara berulang, atau
bisa disebut gabungan dari #odel linear sekuensial %0ater*all(
dengan #odel Prototype. 6lemen$elemen tersebut dikerjakan
hingga menghasilkan produk dengan spesifkasi tertentu
kemudian proses dimulai dari a0al kembali hingga muncul hasil
yang spesifkasinya lebih lengkap dari sebelumnya dan tentunya
memenuhi kebutuhan pemakai.
#odel ini ber*okus pada penyampaian produk operasional dalam Setiappertambahanya. Pertambahan a0al ada di versi stripped do0n dari produk
!'
8/19/2019 model sistem perangkat lunak.docx
11/13
akhir, tetapi memberikan kemampuan untuk melayani pemakai dan juga
menyediakan plat*orm untuk evaluasi oleh pemakai. #odel ini cocok
dipakai untuk proyek kecil dengan anggota tim yang sedikit dan
ketersediaan 0aktu yang terbatas.
Pada proses Pengembangan dengan #odel ncremental, perangkat lunak
dibagi menjadi serangkaian increment yang dikembangkan secara
bergantian.
• Kelebihan Model Incremental :
o Personil bekerja optimal.
o mampu mengakomodasi perubahan secara 4eksibel, dengan
0aktu yang relati* singkat dan tidak dibutuhkan anggota2tim
kerja yang banyak untuk menjalankannya.o Pihak konsumen dapat langsung menggunakan dahulu bagian$
bagian yang telah selesai dibangun. 1ontohnya pemasukan
data karya0an.o #engurangi trauma karena perubahan sistem. /lien
dibiasakan perlahan$lahan menggunakan produknya setiap
bagian demi bagian.o #emaksimalkan pengembalian modal investasi konsumen.
• Kekurangan Model Incremental :
o %idak cocok untuk proyek berukuran besar &lebih dari '((.((( baris coding).
o Sulit untuk memetakan kebutuhan pemakai ke dalam rencana
spesifkasi tiap$tiap hasil dari increament.
. Model S%iral ( Model Boe'm
#odel ini mengadaptasi dua model perangkat lunak yang ada
yaitu model prototyping dengan pengulangannya dan model
0ater*all dengan pengendalian dan sistematikanya. #odel ini
dikenal dengan sebutan Spiral Boehm. Pengembang dalam
model ini memadupadankan beberapa model umum tersebut
!!
8/19/2019 model sistem perangkat lunak.docx
12/13
untuk menghasilkan produk khusus atau untuk menja0ab
persoalan$persoalan tertentu selama proses pengerjaan
proyek.
-ahap$tahap model spiral :• Tahap Liaon:
pada tahap ini dibangun komunikasi yang baik dengan calon
pengguna/pemakai.
• Tahap Planning !perencanaan": pada tahap ini ditentukan
sumber$sumber in*ormasi, batas 0aktu dan in*ormasi$
in*ormasi yang dapat menjelaskan proyek.
• Ta'a% Analisis Resiko)mendefnisikan resiko, menentukan
apa saja yang menjadi resiko baik teknis maupun
manajemen.
• Ta'a% Reka+asa /engineering0)pembuatan prototipe.
• Ta'a% Konstruksi dan Pele%asan /release0)pada tahap
ini dilakukan pembangunan perangkat lunak yang
dimaksud, diuji, diinstal dan diberikan sokongan$sokongan
tambahan untuk keberhasilan proyek.
!&
8/19/2019 model sistem perangkat lunak.docx
13/13
• Ta'a% E$aluasi)Pelanggan2pemakai2pengguna biasanya
memberikan masukan berdasarkan hasil yang didapat dari
tahap engineering dan instalasi.
•
Kele&i'an model iniadalah sangat mempertimbangkanresiko kemungkinan munculnya kesalahan sehingga sangat
dapat diandalkan untuk pengembangan perangkat lunak
skala besar. Pendekatan model ini dilakukan melalui
tahapan$tahapan yang sangat baik dengan menggabungkan
model 0ater*all ditambah dengan pengulangan$
pengulangan sehingga lebih realistis untuk mencerminkan
keadaan sebenarnya. Baik pengembang maupun pemakai
dapat cepat mengetahui letak kekurangan dan kesalahan
dari sistem karena proses$prosesnya dapat diamati dengan
baik.
• Kekurangan model iniadalah 0aktu yang dibutuhkan
untuk mengembangkan perangkat lunak cukup panjang
demikian juga biaya yang besar. Selain itu, sangat
tergantung kepada tenaga ahli yang dapat memperkirakan
resiko. -erdapat pula kesulitan untuk mengontrol proses.
Sampai saat ini, karena masih relati* baru, belum ada bukti
apakah metode ini cukup handal untuk diterapkan.
!3
Recommended