BAB I
PENDAHULUAN
A.
Latar
Belakang Masalah
Dalam dunia teknologi sekarang
pengembangan dalam bidang informatikan telah mengalami perkembangan yang sangat
pesat. Dengan perkembangan ini, dalam bidang informatika tidak hanya
menghasilkan hanya dalam pengembangan program perangkat lunak saja, melainkan
pengambangan dalam bidang suatu permodelan yang bersifat komplek.
Dalam pembuatan sebuah perangkat
lunak yang haruslah memiliki Teknik analisa kebutuhan dan teknik permodelan
yang baik, supaya terwujudnya suatu perangkat lunak yang baik. Dengan hal tersebut
maka perlulah suatu pengenalan mengenai permodelan dalam suatu pembangunan Perangkat
Lunak (Software). Berdasarkan tugas yang kami peroleh, kami hanya
membatasi penjelasan mengenai permodelan ini.
B. Perumusan Masalah
a)
Model
proses pengembangan Perangkat lunak ?
b)
Model
air terjun (Model Waterfall) ?
c)
Model Prototyping ?
d)
Model
RAD (Rapid
Aplication Development) ?
e)
Model 4GT ?
C. Tujuan Pembuatan
Adapun tujuan pembuatan makalah
ini adalah :
a)
Supaya
kita bisa memahami model proses pengembangan perangkat lunak.
b)
Supaya
kita bisa menyajikan karakteristik berbagai metode pengembangan perangkat
lunak.
BAB II
PEMBAHASAN
A. Pengertian Proses Pengembangan Perangkat Lunak
Proses
pengembangan perangkat lunak (Software Process / Development Paradigm) adalah
sekumpulan tahap, tugas dan aktivitas yang dibutuhkan untuk secara effisien
mentransformasikan kebutuhan pemakai ke suatu solusi perangkat lunak yang
efektif.
Pemodelan
proses perangkat lunak (Software Process Modeling) bertujuan untuk
merepresentasikan aktivitas yang terjadi selama pembuatan perangkat lunak dan
perubahan-perubahannya (evolusi). Latar belakang penggunaan model-model
tersebut adalah kebutuhan untuk menghasilkan suatu sistem yang benar sedini
mungkin didalam proses pengembangannya.
Alasan utama
adalah biaya, Semakin dini suatu kesalahan bisa dideteksi dalam pengembangan
sistem, biaya perbaikannya semakin rendah.
B.
Model-Model Proses Pengembangan
Perangkat Lunak.
1)
Model
air terjun (Model Waterfall) ?
2)
Model Prototyping ?
3)
Model
RAD (Rapid
Aplication Development) ?
4)
Spiral Model/Spiral Boehm
5)
Model 4GT ?
C.
Pengertian Model Proses Pengembangan
Perangkat Lunak.
1. Model
air terjun (Model Waterfall).
Model ini adalah model klasik yang
mengusung pengembangan perangkat lunak yang sistematis,
berurutan/sekuensial dimulai pada tingkat dan kemajuan system pada seluruh
persyaratan dalam analisis, perancangan (desain), pengkodean, pengujian
(testing), hingga ke tahap pemeliharaan dalam membangun software (perangkat
lunak).
Berikut ini gambaran dari Linear
Sequential Model / waterfall model.
Pada setiap tahapan dianalogikan bak
air yang mengalir dari tempat tinggi ke tempat yang lebih rendah, artinya
sebuah proses baru bias dilanjutkan setelah satu tahap awal selesai dengan
sempurna.
Penjelasan tentang setiap tahapan
dapat diringkas sebagai berikut:
a) Tahap
analisis: pada tahap ini berlangsung proses pengumpulan kebutuhan secara
lengkap untuk dianalisis dan didefinisikan kebutuhan apa saja yang harus
dipenuhi oleh program yang akan dibuat, seperti memahami domain permasalahan,
tingkah laku, unjuk kerja dan interface (antar muka).
b) Tahap
desain: proses ini melibatkan empat atribut sebuah program yaitu struktur data,
arsitektur, perangkat lunak, representasi interface, dan detail (algoritma)
prosedural.
c) Tahap
pengkodean: proses penterjemahan desain ke dalam bentuk bahasa mesin yang dapat
dilakukan secara mekanis.
d) Tahap
pengujian: proses ini dikerjakan setelah kode dirancang dan difokuskan pada
fungsi dan jumlah kesalahan untuk diperbaiki.
e) Tahap
pemeliharaan: meliputi penyesuaian atau perubahan yang berkembang seiring
dengan adaptasi perangkat lunak dengan kondisi atau situasi sebenarnya setelah
disampaikan kepada konsumen atau pelanggan.
Kelebihan metode ini antara lain
mudah diaplikasikan karena urutan-urutan pengerjaan sudah sering dipakai;
selain itu juga cocok untuk software berskala besar dan yang bersifat umum;
yang paling penting, karena langkah-langkahnya sangat sekuensial, pengerjaan
proyek akan mudah dikontrol dan terjadwal dengan baik.
Namun, terdapat pula beberapa
kelemahan yang menjadi kekurangan dari metode waterfall ini, seperti kurang
fleksibel, dikarenakan rincian prosesnya harus benar-benar jelas dan tidak
boleh diubah-ubah. Apabila dikerjakan dengan melampaui tahap yang seharusnya
maka proses desain yang sebelumnya itu akan berubah total dan memakan waktu
yang banyak jika harus mengulang proses.
Model waterfal ini sangat sesuai
digunakan dalam pengembangan sistem perangkat lunak dan hardware yang luas dan
apabila kebutuhan pengguna telah dimengerti dengan baik. Selain itu, juga
apabila waktu yang tersedia juga masih cukup banyak.
2.
Prototyping Model
Metode ini menyajikan gambaran yang
lengkap dari sistem, terdiri atas model kertas, model kerja dan program. Pihak
pengembang akan melakukan identifikasi kebutuhan pemakai, menganalisa sistem
dan melakukan studi kelayakan serta studi terhadap kebutuhan pemakai, meliputi
model interface, teknik prosedural dan teknologi yang akan dimanfaatkan.
Secara ringkas, tahapan-tahapan
dalam model prototyping adalah:
a) Tahap
Pengumpulan kebutuhan: pada tahap ini, pelanggan dan pengembang saling bantu
dalam mendefinisikan format seluruh perangkat lunak, menentukan keperluan dan
garis besar sistem yang akan dirancang.
b) Tahap Quick
design: membangun rancangan global sebagai contoh bagi user.
c) Tahap
Pembangunan Prototipe: proses perancangan sementara yang fokusnya kepada
penyajian kepada pelanggan, termasuk pengujian dan penyempurnaan.
d) Tahap
Evaluasi Pelanggan: di mana pelanggan melakukan pengujian terhadap prototipe
yang ada dan pengembang memperhalus analisis kebutuhan pemakai.
e) Tahap
Pembuatan dan Implementasi: tahap ini termasuk proses desain (rancang),
pengkodean dan testing.
Keunggulan model ini adalah sifatnya
yang sangat interaktif sehingga pengembang dan pengguna (pemakai) dapat terus
berinteraksi selama pengerjaan tahapan-tahapan tersebut. Peran aktif pemakai
ini dapat menghemat waktu dalam pengembangan sistem dan bila terdapat kesalahan
atau ketidaksesuaian keinginan, pemakai dapat segera memberitahukannya sehingga
pengembang dapat secepatnya melakukan penyesuaian.
Kelemahan model ini antara lain,
akibat adanya quick design, kadang pemakai tidak menyadari bahwa perangkat
lunak yang ditunjukkan masih berupa blue print sehingga tidak ada jaminan
terhadap kualitas secara keseluruhan dan pemeliharaan jangka panjangnya. Dari
sisi pengembang, karena ingin menyegerakan selesainya proyek, sering
menggunakan bahasa pemrograman yang sederhana dalam membuat prototipe tanpa
memikirkan lebih lanjut program yang lebih kompleks untuk membangun sistem yang
sebenarnya.
Model Prototyping ini sangat sesuai
diterapkan untuk kondisi yang beresiko tinggi di mana masalah-masalah tidak
terstruktur dengan baik, terdapat fluktuasi kebutuhan pemakai yang berubah dari
waktu ke waktu atau yang tidak terduga, bila interaksi dengan pemakai menjadi
syarat mutlak dan waktu yang tersedia sangat terbatas sehingga butuh
penyelesaian yang segera. Model ini juga dapat berjalan dengan maksimal pada
situasi di mana sistem yang diharapkan adalah yang inovatif dan mutakhir
sementara tahap penggunaan sistemnya relatif singkat.
3. Model
RAD (Rapid
Aplication Development) ?
RAD adalah proses pembangunan
Perangkat Lunak yang menekankan pada siklus pengembangan yang pendek dan
singkat. Model ini mengawinkan model waterfall dan model component based
construction.
Secara
ringkas, tahapan-tahapan RAD adalah sebagai berikut.
a) Tahap
Pemodelan Bisnis: dibuat agar dapat menjawab pertanyaan-pertanyaan berikut:
informasi apa yang mengontrol proses bisnis? Informasi apa yang didapat? Siapa
yang mendapatkannya? Untuk siapa informasi itu ditujukan? Siapa yang akan
memprosesnya?
b) Tahap
Pemodelan Data: informasi-informasi yang dipadu dari pemodelan bisnis
dipilah-pilah ke menjadi sekumpulan objek data yang masing-masing objek diidentifikasikan
dan ditentukan hubungan antara objek-objek tersebut.
c) Tahap
Pemodelan Proses: aliran informasi yang didapat dalam proses pemodelan data
diolah sedemikian untuk dapat menopang fungsi-fungsi bisnis. Prosesnya
dikreasikan untuk menambah, memodifikasi, menghapus dan atau mendapatkan
kembali sebuah objek data.
d) Tahap
Pembuatan Aplikasi: RAD dapat saja memakai kembali komponen program yang sudah
ada bila dimungkinkan, atau membuat komponen yang dapat digunakan lagi bila
diperlukan di masa mendatang. RAD juga diasumsikan menggunakan teknik generasi
keempat (4GT).
e) Tahap
Pengujian dan Pergantian: Proses RAD menekankan pada pemakaian kembali yang
memungkinkan berkurangnya keseluruhan waktu pengujian, namun komponen harus
diuji dan harus dilatih secara penuh dan terintegrasi.
Kelebihan model RAD: tahap-tahap RAD
membuatnya mampu untuk menggunakan kembali komponen yang ada (reusable object),
karena setiap komponen software dikerjakan secara terpisah dengan tim-tim
tersendiri sehingga dapat digunakan juga untuk aplikasi lain yang pada akhirnya
akan menghemat waktu. Penggunaan tim yang terpisah untuk mengerjakan
pekerjaan yang berbeda membuat pekerjaan lebih cepat dalam proses integrasi dan
efisien terhadap waktu tanpa mengacaukan aplikasi.
Kelemahan model RAD: Tidak begitu
cocok untuk proyek dengan skala besar karena dibutuhkan sumber daya manusia
yang semakin banyak seiring dengan semakin banyaknya komponen yang dikerjakan,
selain itu, semakin besar proyek, semakin kompleks pula koordinasi yang
dibutuhkan. Dalam waktu yang singkat, rasanya sulit untuk pengembang dan
pemakai berkomitmen untuk melaksanakan berbagai kegiatan untuk melengkapi
sistem. Apalagi bila sistem ternyata tidak dapat dimodularisasi sementara
sistem mempunyai resiko teknik yang tinggi.
Model RAD sangat tepat diterapkan
untuk sistem yang telah jelas dan lengkap kebutuhannya, di mana terdapat
komponen-komponen yang dapat dipakai kembali dalam proyek yang berskala kecil
dengan waktu pengembangan perangkat lunak yang singkat.
4.
Spiral Model/Spiral Boehm
Model ini mengadaptasi dua model
perangkat lunak yang ada yaitu model prototyping dengan pengulangannya dan
model waterfall dengan pengendalian dan sistematikanya.
Model ini dikenal dengan sebutan
Spiral Boehm. Pengembang dalam model ini memadupadankan beberapa model umum
tersebut untuk menghasilkan produk khusus atau untuk menjawab
persoalan-persoalan tertentu selama proses pengerjaan proyek.
Tahap-tahap model ini dapat
dijelaskan secara ringkas sebagai berikut.
a) Tahap
Liason: pada tahap ini dibangun komunikasi yang baik dengan calon
pengguna/pemakai.
b) Tahap
Planning (perencanaan): pada tahap ini ditentukan sumber-sumber informasi,
batas waktu dan informasi-informasi yang dapat menjelaskan proyek.
c) Tahap
Analisis Resiko: mendefinisikan resiko, menentukan apa saja yang menjadi resiko
baik teknis maupun manajemen.
d) Tahap
Rekayasa (engineering): pembuatan prototipe
e) Tahap
Konstruksi dan Pelepasan (release): pada tahap ini dilakukan pembangunan
perangkat lunak yang dimaksud, diuji, diinstal dan diberikan sokongan-sokongan
tambahan untuk keberhasilan proyek.
f) Tahap
Evaluasi: Pelanggan/pemakai/pengguna biasanya memberikan masukan berdasarkan
hasil yang didapat dari tahap engineering dan instalasi.
Kelebihan model ini adalah sangat
mempertimbangkan resiko 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
waterfall 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 ini adalah waktu
yang dibutuhkan untuk mengembangkan perangkat lunak cukup panjang demikian juga
biaya yang besar. Selain itu, sangat tergantung kepada tenaga ahli yang dapat
memperkirakan resiko. Terdapat pula kesulitan untuk mengontrol proses. Sampai
saat ini, karena masih relatif baru, belum ada bukti apakah metode ini cukup
handal untuk diterapkan.
Model Boehm sangat cocok diterapkan
untuk pengembangan sistem dan perangkat lunak skala besar di mana pengembang
dan pemakai dapat lebih mudah memahami kondisi pada setiap tahapan dan bereaksi
terhadap kemungkinan terjadinya kesalahan. Selain itu, diharapkan juga waktu
dan dana yang tersedia cukup memadai.
5.
MODEL 4GT
Istilah Fourth Generation Techniques
(4GT) mencakup seperangkat peralatan perangkat lunak yang berfungsi sebagai
perangkat bantu yang memudahkan seorang pengembang software mengaplikasi
beberapa karakteristik software pada tingkat yang tinggi, yang akan
menghasilkan source code dan object code secara otomatis sesuai dengan
spesifikasi (persyaratan khusus) yang dibuat oleh sang pengembang perangkat
lunak.
Dewasa ini, 4GT tools dipakai
sebagai bahasa non prosedur untuk DataBase Query, Pembentukan laporan (Report
Generation), Manipulasi data, Definisi dan interaksi layar (screen),
Pembentukan object dan source ( Object and source generation ), Kemampuan
grafik yang tinggi, dan Kemampuan spreadsheet.
Tahapan-tahapan model 4GT dapat
diringkas sebagai berikut.
a) Tahap
Pengumpulan Kebutuhan: tahap ini dimulai dengan mengumpulkan serangkaian
kebutuhan yang nantinya akan diterjemahkan ke dalam prototipe. Namun, apabila
pelanggan tidak yakin dengan apa yang diperlukan dan fakta-fakta tidak jelas
diketahui maka prototipe tidak dapat dikerjakan oleh peralatan 4GT.
b) Tahap
Merancang Strategi: tahap ini dibutuhkan untuk proyek besar yakni dengan
menterjemahkan kebutuhan menjadi prototipe operasional agar tidak timbul
masalah yang sama jika dibuat dengan model konvensional. Namun, untuk proyek
skala kecil tahap ini dapat dihilangkan dengan langsung melakukan
implementasi dengan menggunakan bahasa generasi keempat (4GT).
c) Tahap
Implementasi Menggunakan Bahasa Keempat: untuk skala kecil tahap ini dapat
langsung dilakukan ketika kebutuhan telah jelas, dan untuk proyek besar tahapan
ini dijalankan setelah dirancang prototipe operasional. Implementasi yang
menggunakan 4GT memudahkan pengembang software untuk menjelaskan hasil yang
diharapkan yang nantinya akan diterjemahkan ke dalam bentuk kode sumber dan
kode objek.
d) Tahap
Produksi: Tahap ini merupakan langkah terakhir yakni mengubah implementasi
4GT ke dalam hasil akhir berupa produk.
Kelebihan model ini adalah
pengurangan waktu dan peningkatan produktivitas yang besar.
Kekurangan model ini adalah
kemungkinan akan sulit memanfaatkan alat bantu/peralatan/tools 4GT dibandingkan
dengan menggunakan bahasa pemrograman yang konvensional, selain itu terdapat
juga masalah dalam hal kode sumber yang tidak efisien. Di samping itu,
pemeliharaan sistem software besar yang dikembangkan oleh 4GT juga masih sedang
dalam proses pengkajian.
Model ini diaplikasikan untuk
mengembangkan perangkat lunak yang memakai bentuk bahasa khusus atau notasi
grafik yang dieksekusi/diselesaikan dengan syarat atau ketentuan yang dipahami
oleh pemakai/pengguna/kustomer.
BAB III
PENUTUP
A. Kesimpulan
Proses
pengembangan perangkat lunak (Software Process / Development Paradigm) adalah
sekumpulan tahap, tugas dan aktivitas yang dibutuhkan untuk secara effisien
mentransformasikan kebutuhan pemakai ke suatu solusi perangkat lunak yang
efektif.
Pemodelan proses
perangkat lunak (Software Process Modeling) bertujuan untuk merepresentasikan
aktivitas yang terjadi selama pembuatan perangkat lunak dan perubahan-perubahannya
(evolusi).
Model-Model
Proses Pengembangan Perangkat Lunak.
1)
Model
air terjun (Model Waterfall) ?
2)
Model Prototyping ?
3)
Model
RAD (Rapid
Aplication Development) ?
4)
Spiral Model/Spiral Boehm
5)
Model 4GT ?
B.
Pesan
Jangan pernah bangga atas
ilmu yang anda dapatkan sekarang, terus belajar dan cari ilmu sebanyak mungkin,
penulis berharap pembaca bisa mengembangkan makalah ini.
DAFTAR
PUSTAKA
A.S
Rosa,Shalahuddin.M.2009.”Modul Rekayasa Perangkat Lunak (Terstruktur dan
Berorientasi Objek).Bandung:Modula Bandung.
Davor Gornik ,
IBM Rational Unified Process : Best Practices for Software Development Teams.
terima kasih banyak gan, sangat membantu untuk tugas saya :D
BalasHapusJadi kesimpulannya gimana..?
BalasHapus