Anda di halaman 1dari 10

TUGAS MATA KULIAH

REKAYASA PERANGKAT LUNAK

Oleh :
Anugerah Ashary Samaila (1915051078)

UNIVERSITAS PENDIDIKAN GANESHA


FAKULTAS TEKNIK DAN KEJURUAN
PENDIDIKAN TEKNIK INFORMATIKA
2020
1. Tahap-tahap dalam siklus hidup perangkat lunak model klasik (waterfall model)
a) Requirement
Di tahap ini pengembang harus mengetahui seluruh informasi tentang kebutuhan
software, seperti kegunaan software yang diinginkan oleh pengguna dan batasan
software.

Informasi tersebut biasanya didapatkan dari wawancara, survey, ataupun diskusi.


Setelah itu informasi dinalisis sehingga didapatkannya data-data yang lengkap
mengenai kebutuhan pengguna akan software yang mau dikembangkan.

b) Design

Desain merupakan tahapan yang ke dua, desain dilakukan sebelum proses koding
dimulai. Hal ini ditujukan untuk memberikan gambaran lengkap mengenai apa yang
harus dikerjakan dan bagaimana tampilan dari sebuah sistem yang diinginkan .

Sehingga dapat membantu kebutuhan yang lebih spesifik mengenai hardware dan
sistem, juga mendefinisikan arsitektur sistem yang akan dibuat secara keseluruhan.

c) Implementation

Proses penulisan code ada di tahap ini. Pembuatan software akan dipecah menjadi
modul-modul kecil yang nantinya akan digabungkan dalam tahap selanjutnya.

Dalam tahap ini juga akan dilakukan pemeriksaan lebih dalam terhadap modul
yang sudah dibuat, apakah sudah memenuhi fungsi yang diinginkan atau belum.

d) Integration & Testing

Pada tahap keempat ini akan dilakukan penggabungan modul-modul yang sudah
dibuat sebelumnya.
Setelah itu akan dilakukan pengujian yang bertujuan untuk mengetahui apakah
software sudah sesuai desain yang diinginkan dan apakah masih ada kesalahan
atau tidak.
e) Operation & Maintenance
Operation & Maintenance adalah tahapan terakhir dari metode pengembangan
waterfall. Di sini software yang sudah jadi akan dijalankan atau dioperasikan oleh
penggunanya. Disamping itu dilakukan pula pemeliharaan yang termasuk :
 perbaikan kesalahan
 perbaikan implementasi unit sistem
 peningkatan jasa sistem sesuai kebutuhan baru
2. Masalah yang dapat terjadi apabila pengembang perangkat lunak tidak mengikuti salah
satu model siklus pengambangan perangkat lunak?
 Masalah yang timbul pada pendekatan waterfall apabila pengembang perangkat
lunak tidak mengikuti salah satu model siklus pengambangan perangkat lunak
yang ada ketika mengembangkan perangkat lunak adalah ketidakluwesan
pembagian project ke dalam langkah yang nyata/jelas.
 Sistem yang disampaikan kadang‐kadang tidak dapat digunakan sesuai keinginan
pelanggan. Namun demikian model waterfall mencerminkan kepraktisan
engineering. Konsekuensinya, model proses perangkat lunak yang berdasarkan
pada pendekatan ini digunakan dalam pengembangan sistem perangkat lunak dan
hardware yang luas
3. Jelaskan dua peran utama analis sistem!
A. Menyusun laporan dari sistem yang telah berjalan dan mengevaluasi kekurangan-
kekurangan pada sistem tersebut dan melaporkan semua kekurangan tersebut kepada
pemakai sistem.
B. Menganalisis dan menyusun perkiraan biaya yang diperlukan untuk sistem yang baru
dan memberikan argumen tentang keuntungan yang dapat diperoleh dari pemakaian
sistem yang baru tersebut.
4. Jelaskan alasan mengapa siklus hidup pengembangan perangkat lunak model klasik dapat
dikatakan tidak bisa benar-benar dapat diterapkan dalam proyek pengembangan
perangkat lunak yang nyata!
a. SDLC mencakup pengembangan sistem keseluruhan, yang memerlukan komponen-
komponen lain disamping perangkat lunak.
b. Dalam sistem yang memerlukan pengembangan perangkat lunak yang didasarkan
pada rancangan system yang diciptakan oleh SDLC, SWDLC akan diinisiasi.
c. Apabila SWDLC menjadi berperan, maka SWDLC seperti halnya SDLC yang
berbasis lebih luas, akan memberikan kumpulan acuan tahap-tahap yang diperlukan
untuk mengembangkan perangkat lunak tersebut. SWDLC menjabarkan tugas-tugas
dan prosedur-prosedur yang harus dijalankan dalam setiap tahap, hasil yang
diciptakan oleh setiap tahap, dan metriks untuk menyusun jadwal, mengestimasi
biaya, dan mengukur produktivitas.
d. SWDLC memberikan atau menyediakan kerangka dan prosedur pengoperasian
standar yang mendukung cara pengembangan perangkat lunak yang terstruktur dan
terancang dengan baik.
5. Jelaskan apa yang dimaksud prototipe perangkat lunak!
 Prototyping perangkat lunak adalah salah satu metode siklus hidup sistem yang
didasarkan pada konsep model bekerja (working model). Tujuannya adalah
mengembangkan model menjadi sistem final. Artinya sistem akan dikembangkan
lebih cepat dari pada metode tradisional dan biayanya menjadi lebih rendah. Ada
banyak cara untuk melakukan prototyping, begitu pula dengan penggunaannya.

6. Jelaskan tiga alasan perlunya prototype selama pengembangan perangkat lunak!


a. Prototype perlu digunakan untuk pembuatan suatu proyek, karena sering
terjadinya seorang pelanggan yang hanya mendefinisikan secara umum apa yang
dikehendakinya tanpa menyebutkan secara detail output apa saja yang
dibutuhkan, pemrosesan dan data-data apa saja yang dibutuhkan. Sebaliknya
disisi pengembang kurang memperhatikan efisiensi algoritma, kemampuan sistem
operasi dan interface yang menghubungkan manusia dan komputer.
b. Untuk dapat mengatasi ketidakserasian antara pelanggan dan pengembang , maka
harus dibutuhkan suatu prototype untuk menimbulkan kerjasama yang baik
diantara keduanya, sehingga pengembang akan mengetahui dengan benar apa
yang diinginkan pelanggan dengan tidak mengesampingkan segi-segi teknis dan
pelanggan akan mengetahui proses-proses dalam menyelesaikan system yang
diinginkan. Dengan demikian akan menghasilkan sistem sesuai dengan jadwal
waktu penyelesaian yang telah ditentukan.
7. Jelaskan kapan waktu yang tepat untuk pengembangan prototipe!
Penggunaan prototype sebaiknya digunakan pada saat pelanggan ingin membuat sistem,
pada saat itulah prototype digunakan untuk mengetahui seperti apa sistem yang
diinginkan oleh pelanggan. prototype juga bisa digunakan pada saat sebuah sistem telah
jadi kemudian membandingkannya dengan prototype yang dibuat sebelumnya. setelah
semuanya terasa benar maka pelanggan akan mengecek kembali prototype yang
sebelumnya dengan sistem yang sudah jadi apakah sudah sesuai dengan keinginannya
atau tidak, jika tidak maka pengembang harus membuatnya sesuai dengan keinginan
pelanggan tersebut sehingga pelanggan berkata ini sudah seperti yang saya inginkan.
8. Jelaskan tahap pengembangan perangkat lunak menggunakan model spiral!
Tahap-tahap model ini dapat dijelaskan secara ringkas sebagai berikut :
 Tahap Liason: pada tahap ini dibangun komunikasi yang baik dengan calon
pengguna/pemakai.
 Tahap Planning (perencanaan): pada tahap ini ditentukan sumber-sumber
informasi, batas waktu dan informasi-informasi yang dapat menjelaskan proyek.
 Tahap Analisis Resiko: mendefinisikan resiko, menentukan apa saja yang menjadi
resiko baik teknis maupun manajemen.
 Tahap Rekayasa (engineering): pembuatan prototipe.
 Tahap Konstruksi dan Pelepasan (release): pada tahap ini dilakukan pembangunan
perangkat lunak yang dimaksud, diuji, diinstal dan diberikan sokongan-sokongan
tambahan untuk keberhasilan proyek.
 Tahap Evaluasi: Pelanggan/pemakai/pengguna biasanya memberikan masukan
berdasarkan hasil yang didapat dari tahap engineering dan instalasi.
9. Tuliskan dua keuntungan utama menggunakan model spiral!
a. Setiap tahap pengerjaan dibuat prototyping sehingga kekurangan dan apa yang
diharapkan oleh client dapat diperjelas dan juga dapat menjadi acuan untuk client
dalam mencari kekurangan kebutuhan.
b. Lebih cocok untuk pengembangan sistem dan perangkat lunak skala besar
10. Bandingkan kelebihan dan kekurangan model-model pengembangan perangkat lunak!
Terangkan kapan masing-masing model tersebut tepat digunakan.
a. Model Waterfall  

Model Waterfall merupakan salah satu model untuk perencanaan dari sebuah
Perangkat Lunak. Model Waterfall adalah salah satu model klasik yang bersifat
sistematis karena model ini dikerjakan secara berurutan. Penggunaan model ini
dalam penerapan di kehidupan sehari-hari sangatlah memakan waktu dan sangat
sedikit dipakai membuat software. Namun model ini cocok untuk bisnis kecil.
Kelebihan:
 Merupakan model pengembangan paling handal dan paling lama
digunakan.
 Cocok untuk sistem software yang bersifat generik.
 Pengerjaan projek sistem akan terjadwal dengan baik dan mudah
dikontrol.
Kekurangan:
 Persyaratan sistem harus digambarkan dengan jelas.
 Rincian proses harus benar-benar jelas dan tidak boleh berubah ubah
 Sulit untuk mengadaptasi jika terjadi perubahan spesifikasi pada suatu
tahapan pengembangan.
b. Model Spiral
Model spiral / spiral model adalah model pengembangan software dimana proses
digambarkan sebagai spiral. Setiap loop akan mewakili satu fase dari proses
pembuatan / perancangan software. Loop paling dalam berfokus pada kelayakan
dari sistem, loop selanjutnya tentang definisi dari kebutuhan, loop berikutnya
berkaitan dengan desain sistem dan seterusnya.
Kelebihan:
 Setiap tahap pengerjaan dibuat prototyping sehingga kekurangan dan apa
yang diharapkan oleh client dapat diperjelas dan juga dapat menjadi acuan
untuk client dalam mencari kekurangan kebutuhan.
 Lebih cocok untuk pengembangan sistem dan perangkat lunak skala besar.
 Dapat disesuaikan agar perangkat lunak bisa dipakai selama hidup
perangkat lunak komputer.
 Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi
terhadap resiko setiap tingkat evolusi karena perangkat lunak terus bekerja
selama proses.
 Menggunakan prototipe sebagai mekanisme pengurangan resiko dan pada
setiap keadaan di dalam evolusi produk.
 Tetap mengikuti langkah-langkah dalam siklus kehidupan klasik dan
memasukkannya ke dalam kerangka kerja iteratif.
 Membutuhkan pertimbangan langsung terhadap resiko teknis sehingga
mengurangi resiko sebelum menjadi permaslahan yang serius.
Kekurangan:
 Banyak konsumen (Client) tidak percaya bahwa pendekatan secara
evolusioner dapat dikontrol oleh kedua pihak.
 Model spiral mempunyai resiko yang harus dipertimbangkan ulang oleh
konsumen dan developer.
 Memerlukan tenaga ahli untuk memperkirakan resiko, dan harus
mengandalkannya supaya sukses.
 Belum terbukti apakah metode ini cukup efisien karena usianya yang
relatif baru.
 Memerlukan penaksiran resiko yang masuk akal dan akan menjadi
masalah yang serius jika resiko mayor tidak ditemukan dan diatur.
 Butuh waktu lama untuk menerapkan paradigma ini menuju kepastian
yang absolute.

c. Model Incremental

Dalam model Incremental ini proses pengerjaan perangkat lunak akan dilakukan
pembagian sehingga bagian selanjutnya akan dikerjakan setelah bagian awal telah
selesai dan selanjutnya sampai menghasilkan perangkat lunak yang lengkap
dengan semua fungsi yang diperlukan dan pengerjaan perangkat lunak berakhir.
Sebelum pengerjaan perangkat lunak akan dilakukan perancangan arsitektur
software sebagai kerangka dalam pengerjaan pembagian.
Kelebihan:
 Resiko yang rendah pada pengembangan sistem.
 Mengutamakan fungsi-fungsi pada sistem perangkat lunak sehingga
kemudahan pemakaian sistem yang paling diutamakan.
 Tahap awal adalah dasar dari pembuatan tahap berikutnya (dikerjakan
secara terurut).
 Cocok digunakan bila pembuat software tidak banyak/kekurangan
pembuat
 Mampu mengakomodasi perubahan kebutuhan customer.
 Mengurangi trauma karena perubahan sistem. Klien dibiasakan perlahan-
lahan menggunakan produknya bagian per bagian.
 Memaksimalkan pengembalian modal investasi konsumen.
Kekurangan:
 Hanya akan berhasil jika tidak ada staffing untuk penerapan secara
menyeluruh.
 Penambahan staf dilakukan jika hasil incremental akan dikembangkan
lebih lanjut.
 Hanya cocok untuk proyek dengan skala kecil.
 kemungkinan tiap bagian tidak dapat diintegrasikan.
d. Model Evolusi

Model evolusi adalah sebuah model yang berulang-ulang. Model ini memiliki
karakteristik yang memungkinkan para programmer mengembangkan perangkat
lunaknya menjadi semakin lengkap di tiap versinya. Model ini diterapkan karena
persyaratan (requierement) sering berubah sehingga hasil akhir dari sebuah
produk tidak akan realistis, dimana edisi komplit dari produk tersebut mustahil
dikeluarkan dikarenakan deadline market yang begitu ketat. Oleh karena itu lebih
baik mengeluarkan versi limited untuk memperkenalkannya terlebih dahulu dan
programmer dapat membuat model dari sebuah design untuk mengakomodasikan
produk, yang secara bertahap akan diselesaikan dari waktu ke waktu.
Kelebihan:
 Meningkatkan kemampuan memimpin dan mengatur sesuatu dengan
pengembangan diri.
 Menciptakan suasana yang sadar akan kualitas suatu produk.
 Fungsi inti dari quality control dalam perusahaan besar pada tingkat
lokakarya.
 Meningkatkan kebersamaan untuk mencapai suatu hasil dan semangat
kerja karyawan.
 Meningkatkan kualitas dengan biaya efektif.
 Membebaskan manajemen.
 pekerja Shop Floor adalah lokasi terbaik untuk mengidentifikasi masalah.
Kekurangan:
 Intensitas pekerjaan meningkat karena masalah akan lebih banyak dari
pada yang diperkirakan.
 Manajemen perlu berkomitmen untuk sistem yang berkualitas, jika sebuah
solusi dari sebuah masalah tidak dapat diterapkan maka itu bisa membuat
frustasi para pekerja.
 Dapat memiliki efek negatif pada hubungan industrial.
 Dapat fokus pada masalah duniawi.
e. Model Prototype

Prototype merupakan salah satu metode pengembangan perangat lunak yang


banyak digunakan. Dengan metode prototyping ini pengembang dan pelanggan
dapat saling berinteraksi selama proses pembuatan sistem. Prototyping, dimulai
dengan pengumpulan kebutuhan, mendefinisikan objektif keseluruhan dari
software, mengidentifikasikan segala kebutuhan, kemudian dilakukan
perangcangan kilat yang difokuskan pada penyajian aspek yang diperlukan.
Kelebihan :
 Prototype melibatkan user dalam analisa dan desain.
 Punya kemampuan menangkap requirement secara konkret daripada
secara abstrak.
 Untuk digunakan secara standalone.
 Digunakan untuk memperluas SDLC.
 Mempersingkat waktu pengembangan Sistem Informasi
Kekurangan :
 Proses analisis dan perancangan terlalu singkat.
 Mengesampingkan alternatif pemecahan masalah.
 Bisanya kurang fleksible dalam mengahdapi perubahan.
 Prototype yang dihasilkan tidak selamanya mudah dirubah
f. Model V / V-Model.

Bisa dikatakan model ini merupakan perluasan dari model waterfall. Disebut
sebagai perluasan karena tahap-tahapnya mirip dengan yang terdapat dalam
model waterfall. Jika dalam model waterfall proses dijalankan secara linear, maka
dalam model V proses dilakukan bercabang. Dalam model V ini digambarkan
hubungan antara tahap pengembangan software dengan tahap pengujiannya.
Kelebihan :
 V Model sangat fleksibel. V Model mendukung project tailoring dan
penambahan dan pengurangan method dantool secara dinamik. Akibatnya
sangat mudah untuk melakukan tailoring pada V Model agar sesuai
dengan suatu proyek tertentu dan sangat mudah untuk menambahkan
method dan tool baru atau menghilangkan method dan tool yang dianggap
sudah obsolete.
 V Model dikembangkan dan di-maintain oleh publik. Userdari V Model
berpartisipasi dalam change control boardyang memproses semua change
request terhadap V Model.
Kekurangan:
 V Model adalah model yang project oriented sehingga hanya bisa
digunakan sekali dalam suatu proyek.
 V Model terlalu fleksibel dalam arti ada beberapa activitydalam V Model
yang digambarkan terlalu abstrak sehingga tidak bisa diketahui dengan
jelas apa yang termasuk dalamactivity tersebut dan apa yang tidak.
g. Model Rapid Application Development (RAD)  
Rapid Aplication Development (RAD) adalah sebuah model proses
perkembanganperangkat lunak sekuensial linier yang menekankan siklus
perkembangan yang sangat pendek (kira-kira 60 sampai 90 hari). Model RAD ini
merupakan sebuah adaptasi “kecepatan tinggi” dari model sekuensial linier
dimana perkembangan cepat dicapai dengan menggunakan pendekatan konstruksi
berbasis komponen.
Kelebihan :
 Lebih efektif dari Pengembangan Model waterfall/sequential linear dalam
menghasilkan sistem yang memenuhi kebutuhan langsung dari pelanggan.
 Cocok untuk proyek yang memerlukan waktu yang singkat.
 Model RAD mengikuti tahap pengembangan sistem seperti pada
umumnya, tetapi mempunyai kemampuan untuk menggunakan kembali
komponen yang ada sehingga pengembang tidak perlu membuatnya dari
awal lagi sehingga waktu pengembangan menjadi lebih singkat dan
efisien.
Kekurangan :
 Model RAD menuntut pengembangan dan pelanggan memiliki komitmen
di dalam aktivitas rapid-fire yang diperlukan untuk melengkapi sebuah
sistem, di dalam kerangka waktu yang sangat diperpendek. Jika komitmen
tersebut tidak ada, proyek RAD akan gagal.
 Tidak semua aplikasi sesuai untuk RAD, bila system tidak dapat
dimodulkan dengan teratur, pembangunan komponen penting pada RAD
akan menjadi sangat bermasalah.
 RAD tidak cocok digunakan untuk sistem yang mempunyai resiko teknik
yang tinggi.
 Membutuhkan Tenaga kerja yang banyak untuk menyelesaikan sebuah
proyek dalam skala besar.
 Jika ada perubahan di tengah-tengah pengerjaan maka harus membuat
kontrak baru antara pengembang dan pelanggan.
Source

1. https://badoystudio.com/metode-waterfall/
2. http://staffnew.uny.ac.id/upload/132310817/pengabdian/R+P+L.pdf
3. https://www.kompasiana.com/wisnuaji/5613400cd57a612c078b456e/catatan-kilat-
sistem-analis-dan-peranannya-dalam-pengembangansistem?page=all
4. http://41813120100.blog.mercubuana.ac.id/wp-content/uploads/sites/108/2015/05/
SWDLC_LINDA-LIANA_41813120100_.pdf
5. https://medium.com/dot-intern/sdlc-metode-prototype-8f50322b14bf#:~:text=Prototyping
%20perangkat%20lunak%20adalah%20salah,model%20bekerja%20(working
%20model).&text=Ciri%20dari%20metode%20ini%20adalah,dari%20sejak%20awal
%20proses%20pengembangan.
6. https://hellisfun.wordpress.com/imk/apakah-perlu-menggunakan-protoype/

https://medium.com/dot-intern/sdlc-metode-prototype-8f50322b14bf#:~:text=Prototyping
%20perangkat%20lunak%20adalah%20salah,model%20bekerja%20(working
%20model).&text=Ciri%20dari%20metode%20ini%20adalah,dari%20sejak%20awal
%20proses%20pengembangan.

7. - [pendapat sendiri diambil dari sumber diatas]


8. https://www.dictio.id/t/apa-yang-dimaksud-dengan-model-spiral-dalam-pengembangan-
perangkat-lunak/15028
9. http://www.markijar.com/2015/04/kelebihan-dan-kekurangan-model-
proses.html#:~:text=Kelebihan%20model%20Spiral%3A&text=Pengembang%20dan
%20pemakai%20dapat%20lebih,keadaan%20di%20dalam%20evolusi%20produk.
10. https://siniajacom.blogspot.com/2017/10/model-pengembangan-perangkat-lunak.html

Anda mungkin juga menyukai