Anda di halaman 1dari 11

BAB I

PENDAHULUAN
1.1

Latar Belakang
Dalam pembuatan sebuah perangkat lunak dibutuhkan beberapa teknik analisa

kebutuhan dan teknik permodelan yang baik, agar dapat tercipta suatu perangkat lunak yang
memiliki alur proses yang jelas. Dengan hal tersebut maka perlu diketahui mengenai dasar
dari beberapa suatu permodelan dalam suatu pembangunan perangkat lunak (Software).
Pengembangan perangkat lunak dapat diartikan sebagai proses membuat suatu
perangkat lunak baru untuk menggantikan perangkat lunak lama secara keseluruhan atau
memperbaiki perangkat lunak yang telah ada. Secara umum daur hidup pengembangan
perangkat lunak meliputi tahapan-tahapan atau aktivitas pengembangan yang terdiri dari
tahap analisis, tahap perancangan, tahap implementasi serta tahap pengujian (Nugroho, dkk.
2009). Tahap analisis dan perancangan merupakan tahapan awal yang penting dalam suatu
paradigma pengembangan perangkat lunak, karena sangat mempengaruhi tahapan
selanjutnya.
Didasari oleh uraian latar belakang diatas maka paper ini akan membahas tentang
beberapa macam jenis paradigma yang dapat digunakan dalam proses analisis dan desain
perangkat lunak yang umum digunakan.
1.2

Perumusan Masalah
Berikut adalah rumusan masalah yang akan dibahas pada pembuatan paper ini, yaitu
apa saja jenis permodelan paradigma yang dapat digunakan dalam proses analisis dan desain
perangkat lunak?

1.3

Batasan Masalah
Adapun batasan-batasan masalah dalam pembahasan paper ini adalah sebagai berikut:
- Pembahasan ditujukan pada deskripsi tentang paradigma pada rekayasa perangkat
lunak
- Paradigma yang dibahas terdiri dari 4 jenis paradigma dalam rekayasa perangkat
lunak
- Selain pengertiannya, akan dijelaskan pula kelebihan dan kekurangan dari tiap
paradigma
BAB II
PEMBAHASAN

Pengembangan perangkat lunak dapat diartikan sebagai proses membuat suatu


perangkat lunak baru untuk menggantikan perangkat lunak lama secara keseluruhan atau
memperbaiki perangkat lunak yang telah ada. Agar lebih cepat dan tepat dalam
mendeskripsikan solusi dan mengembangkan perangkat lunak, juga hasilnya mudah
dikembangkan dan dipelihara, maka pengembangan perangkat lunak memerlukan suatu
metodologi khusus. Metodologi pengembangan perangkat lunak adalah suatu proses
pengorganisasian kumpulan metode dan konvensi notasi yang telah didefinisikan untuk
mengembangkan perangkat lunak. Secara prinsip bertujuan untuk membantu menghasilkan
perangkat lunak yang berkualitas (Rogers S. Pressman, 2008).
Menurut Loudon J.P dan Loudon K.C, Perangkat lunak dapat didefinisikan sebagai
berikut:
1. Perintah (program komputer) yang bila dieksekusi memberikan fungsi dan unjuk kerja
seperti yang diinginkan.
2. Struktur data yang memungkinkan program memanipulasi informasi secara
proporsional.
3. Dokumen yang menggambarkan informasi dan kegunaan program.
Metodologi pengembangan perangkat lunak (atau disebut juga model proses atau
paradigma rekayasa perangkat lunak) adalah suatu strategi pengembangan yang memadukan
proses, metode, dan perangkat (tools) . Metode-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, 2008).
Untuk dapat mengembangkan sebuah perangkat lunak secara tepat, ada 4 paradigma
yang akan diuraikan dibawah ini, beserta kelebihan dan kekurangannya.
2.1

Waterfall Model

2.1.1

Pendefinisian
Model Waterfall atau air terjun juga sering disebut model sekuensial linier (sequential
linear) atau alur hidup klasik (classic life cycle). Menurut Rosa dan Shalahuddin (2013:2829), model air terjun menyediakan pendekatan alur hidup perangkat lunak secara sekuensial
atau terurut dimulai dari analisis, desain, pengodean, pengujian, dan tahap pendukung
(support). Model air terjun dapat dilihat pada gambar 3 berikut.
2

Gambar 2.1 Waterfall Model


Model air terjun sangat cocok digunakan apabila kebutuhan pelanggan sudah sangat
dipahami dan kemungkinan terjadinya perubahan kebutuhan selama pengembangan
perangkat lunak kecil. Hal positif dari model air terjun adalah struktur tahap pengembangan
sistem jelas, dokumentasi dihasilkan di setiap tahap pengembangan, dan sebuah tahap
dijalankan setelah tahap sebelumnya selesai dijalankan. (S, Rosa, 2013:30-31)
Pemodelan ini menyangkut aktivitas berikut:
Rekayasa Sistem dan Analysis. Pekerjaan dimulai dari pembentukan kebutuhan
dari semua sistem dan mengalokasikan suatu subset kedalam pembentukan
perangkat lunak. Rekayasa sistem dan analisis menekankan pada pengumpulan
kebutuhan pada level sistem dengan sedikit perancangan dan analisis.
Analisis

Kebutuhan

Perangkat

Lunak.

Proses

pengumpulan

kebutuhan

diintensipkan ke dalam perangkat lunak. Harus dapat dibentuk domain informasi,


fungsi yang dibutuhkan, performa dan antar muka. Hasilnya didokumentasikan
dan di-review ke pelanggan.
Desain. Proses desain mengubah kebutuhan menjadi bentuk karakteristik yang
dimengerti perangkat lunak sebelum dimulai penulisan program.
Penulisan Program. Desain harus diubah menjadi bentuk yang dimengerti mesin
maka dilakukan langkah penulisan program.
Testing. Testing memfokuskan pada logika internal dari perangkat lunak, fungsi
eksternal, dan mencari segala kemungkinan kesalahan serta memeriksa apakah
sesuai dengan hasil yang diinginkan.
Pemeliharaan. Setelah diberikan kepada pelanggan, mungkin ditemui error ketika
dijalankan. Atau pelanggan meminta penambahan fungsi, yang menyebabkan
faktor pemeliharaan penting dalam penggunaan metode ini.
3

Gambar 2.2 Waterfall Model


2.1.2 Keuntungan Waterfall Model
Metode ini menjadi template bagi pengembangan teknik analisis, desain, coding,
testing dan pemeliharaan.
Proses didokumentasikan dengan baik.
Konteks dokumen kriterianya didefinisikan dengan baik.
Prosesnya memasukkan review dan dokumen-dokumen, dapat dihubungkan
dengan kebutuhan yang unik dari proyek atau produk khusus.
Model ini adalah pengalaman yang nyata dengan prosesnya.
Penerapan yang standar.
2.1.3 Kelemahan Waterfall Model
Prosesnya tidak secara normal melibatkan pemakai dan operator.
Prosesnya diperkirakan sangat mahal.
Proses ini tidak kompatibel dengan penggunaan bahasa umum.
Pada project yang sebenarnya, jarang mengikuti urutan sekuensial seperti yang
diusulkan. Iterasi sering terjadi menyebabkan masalah baru.
Sulit bagi pelanggan untuk menentukan semua kebutuhan secara eksplisit.
Pelanggan harus sabar, versi yang bekerja dari perangkat lunak yang dimintanya
tidak tersedia sebelum sampai pada waktu yang telah ditentukan.

2.2

Prototyping
4

2.2.1

Pendefinisian
Menurut Pressman (2012:50), seringkali pelanggan mendefinisikan sejumlah sasaran

perangkat lunak secara umum, tetapi tidak bisa mengidentifikasikan spesifikasi kebutuhan
yang rinci untuk fungsi fungsi dan fitur fitur yang nantinya akan dimiliki perangkat lunak
yang akan dikembangkan. Dalam kasus seperti ini paradigma pembuatan prototipe mungkin
menawarkan pendekatan yang paling baik.
Menurut S, Rosa(2013:31), model prototipe dapat digunakan untuk menyambungkan
ketidakpahaman pelanggan mengenai hal teknis dan memperjelas spesifikasi kebutuhan yang
diinginkan pelanggan kepada pengembang perangkat lunak. Urutan langkah pengembangan
model prototipe ini yaitu mendengarkan pelanggan, membangun / memperbaiki mock-up,
dan pelanggan melihat/menguji mock up. Mock-up adalah sesuatu yang digunakan sebagai
model desain yang digunakan untuk mengajar, demonstrasi, evaluasi desain, promosi, atau
keperluan lain.

Prototyping adalah proses yang membantu pengembang perangkat lunak dalam


membentuk model dari perangkat lunak yang harus dibuat.
Model dapat berupa tiga bentuk:
Bentuk

prototype di atas

kertas/model berbasis

komputer (PC) yang

menggambarkan interaksi manusia yang mungkin terjadi.


Working prototype, yang mengimplementasikan sebagian dari fungsi yang
ditawarkan perangkat lunak.
Program jadi yang melakukan sebagian atau seluruh fungsi yang akan dilakukan,
tetapi masih dikembangkan.
Prototyping dimulai dari pengumpulan kebutuhan. Dengan perencanaan yang cepat
akan dibentuk konstruksi dari prototype-nya. Prototype ini dievaluasi oleh pelanggan dan
digunakan untuk mengolah kembali kebutuhan dari perangkat lunak yang dikembangkan.
Suatu proses iterasi terjadi, setelah prototype disesuaikan dengan kebutuhan pelanggan.

Gambar 2.3 Model Prototype


2.2.2

Keuntungan model prototyping


Metode prototyping cukup efektif sebagai paradigma dalam rekayasa perangkat
lunak.
Mendapatkan kebutuhan dan aturan yang jelas yang disetujui pelanggan dalam
membuat perangkat lunak.

2.2.3

Kelemahan model prototyping


Pelanggan yang melihat working version dari model yang dimintanya tidak
menyadari, bahwa mungkin saja prototype dibuat terburu-buru dan rancangan
tidak tersusun dengan baik.
Pembuat kadang-kadang membuat implementasi sembarangan, karena ingin
working version bekerja dengan cepat.

2.3 Model Spiral


2.3.1

Pendefinisian
Model spiral telah dibangun sebagai akibat kritikan bahwa model Waterfall

menghalangi sedikit sekali yang menggunakan prototyping. Model spiral merupakan


pendekatan yang mengendalikan risiko untuk sebuah pembuatan software dan meningkatkan
feature yang terbaik dari model Waterfall dan Prototyping.
Model spiral adalah pendekatan yang paling realistik untuk sistem skala besar.
Metode ini menggunakan pendekatan evolusioner, sehingga pelanggan dan pengembang
dapat mengerti dan bereaksi terhadap suatu risiko yang mungkin terjadi. Model ini
membutuhkan konsiderasi langsung terhadap risiko teknis, sehingga diharapkan dapat
6

mengurangi terjadinya risiko yang besar (Kroenke, dkk, 2014).


Bentuk

spiral

memberikan

gambaran

bahwa

makin

membesar

iterasinya,

menunjukkan semakin lengkap versi perangkat lunak yang digunakan. Selama awal dari
sirkuit, objektif, alternatif dan batasan diidentifikasi dan dianalisis.
Model ini memiliki 4 aktivitas penting, yaitu:
Perencanaan, penentuan tujuan, alternative, dan batasan.
Analisis Risiko, analisis, alternative, dan identifikasi/pemecahan risiko.
Engineering, pengembangan level berikutnya dari produk.
Customer Evaluation, penilaian terhadap hasil engineering.
Gambar dibawah ini melukiskan bagaimana proses pembuatan software pada model
spiral:

Gambar 2.4 Model Spiral


Pada kuadran A adalah tahap Perencanaan. Pada kuadran B adalah tahap analisis
risiko. Kuadran C pengembangan keragaman produk (konsep desain, spesifikasi, desain, dan
lain-lain). Pada kuadran D adalah penilaian terhadap hasil engineering dan memungkinkan
untuk melanjutkan ke level berikutnya dari model ini.
Model spiral dari A ke B, dari B ke C, dari C ke D dan dari D kembali ke A (yang
tentu saja pada level yang berbeda) sampai pada suatu sistem yang kompleks
dibangun/dilakukan tanpa pengecualian.

2.3.2

Keuntungan model Spiral

Dapat digunakan dengan efektif untuk penambahan sistem pada sebuah pembuatan
software.
Kebanyakan model yang lama dapat dipertimbangkan lagi sebagai suatu kasus yang
khusus dari model spiral.
Dengan adanya analisis risiko pada model ini membangun sebuah model yang
menghindarkan banyak perbedaan yang timbul pada model-model yang lain.
2.3.3

Kelemahan model Spiral

Agak sulit meyakinkan pelanggan besar bahwa pendekatan evolusioner ini dapat
diatur. Hal ini membutuhkan keahlian tersendiri. Jika risiko utama tidak ditemukan,
maka masalah bisa muncul.
2.4

Fourth-Generation Technique (4th GT)


2.4.1

Pendefinisian
Istilah Generasi keempat, mengarah ke perangkat lunak yang umum yaitu, tiap

pengembang perangkat lunak menentukan beberapa karakteristik perangkat lunak pada level
yang tinggi. Tool akan otomatis menghasilkan program sumber berdasarkan spesifikasi
tersebut. Teknik 4GT menekankan pada kemampuan menentukan perangkat lunak pada level
mesin dengan bahasa yang lebih alami (Sutabri, 2012).
Pengembangan perangkat lunak yang mendukung 4GT berisi tool-tool berikut:
Bahasa non prosedural untuk query basis data.
Report generation
Data manipulation
Interaksi layar dan definisi
Code generation
Kemampuan grafik level tinggi
Kemampuan spreadsheet
Metode 4GT dimulai dari pengumpulan kebutuhan. Idealnya pelanggan akan
menjelaskan kebutuhan, yang akan langsung ditranslasikan ke prototipe operasional.
Prototipe ini tidak bekerja. Pelanggan mungkin tidak pasti akan hal yang dibutuhkannya, atau
8

tidak dapat ditangani 4GT tool.


Metode 4GT dapat dilihat pada gambar dibawah ini:

Gambar 2.5 Model 4GT


2.4.2

Keuntungan (Fourth Generation Language-4GL)


Untuk aplikasi yang kecil, adalah mungkin untuk langsung berpindah dari
pengumpulan kebutuhan ke implementasi menggunakan bahasa non prosedural
(Fourth Generation Language-4GL)

2.4.3

Kelemahan (Fourth Generation Language-4GL)


Untuk usaha yang besar, dibutuhkan pengembangan strategi desain untuk sistem,
walau digunakan bahasa 4GL
Penggunaan 4GL tanpa perencanaan matang (untuk proyek besar), akan
menyebabkan kesulitan yang sama (kualitas dan pemeliharaan yang jelek,
ketidakpuasan pelanggan)
Tool 4GT yang sudah ada tidak cukup canggih untuk mengakomodasikan bahasa
alami.
Pelanggan-pengembang yang ada pada paradigma sebelumnya tetap menjadi
bagian penting dari teknik 4GT.

BAB III
PENUTUP

3.1 Kesimpulan

Pengembangan perangkat lunak dapat diartikan sebagai proses membuat suatu perangkat
lunak baru untuk menggantikan perangkat lunak lama secara keseluruhan atau memperbaiki
perangkat lunak yang telah ada

Metodologi pengembangan perangkat lunak adalah suatu proses pengorganisasian


kumpulan

metode

dan

konvensi

notasi

yang

telah

didefinisikan

untuk

mengembangkan perangkat lunak

Model Waterfall atau air terjun juga sering disebut model sekuensial linier (sequential
linear) atau alur hidup klasik (classic life cycle).

Prototyping dimulai dari pengumpulan kebutuhan. Dengan perencanaan yang cepat


akan dibentuk konstruksi dari prototype-nya.

Model spiral merupakan pendekatan yang mengendalikan risiko untuk sebuah


pembuatan software dan meningkatkan feature yang terbaik dari model Waterfall dan
Prototyping.

Teknik 4GT menekankan pada kemampuan menentukan perangkat lunak pada level
mesin dengan bahasa yang lebih alami

10

DAFTAR PUSTAKA

Pressman, R.S. 2008. Software engineering: a practitioner's approach seventh edition. New
York: McGrawHill.
Loudon, J.P. and Loudon, K. C., 2013. Management Information System, Managing the
Digital Firm. Twelfth edition. England: Pearson Education.
Nugroho, P. E., Ratnasari, K., Kurniawan, N. R., Putro, dan Laksono, B. 2009. Rekayasa
Perangkat Lunak. Diperoleh November 2013, dari http://nerims.files.wordpress.com/2013/04/rekayasa-perangkat-lunak.pdf.
Kroenke, D.M. and Auer, D.J., 2014. Database Processing, Fundamentals, Design, and
Implementation.Thirteen Edition. England: Pearson Education.
Sutabri, T., 2012. Analisa Sistem Informasi. Yogyakarta: Andi.
A.S, Rosa dan M. Shalahuddin. 2013. Modul Pembelajaran Rekayasa Perangkat Lunak
(Terstruktur dan Berorientasi Objek). Bandung: Modula.
Rusli, M, Ziveria, M. 2016. Membandingkan Empat Paradigma Rekayasa Perangkat Lunak.
STMIK ESQ 1-4, (Online), Volume 2, No.1, (http://journal.esqbs.ac.id/index.php/ISTATEMENT/article/download/29/32, diakses 17 September 2016).
K.K, Asli. 2015. Pengembangan dan Analisis Kualitas Berdasarkan ISO 9126 Aplikasi
Pendeteksi Gaya Belajar Model VAK (Visual, Auditoria, Kinestetik Berbasis Web).
Tugas Akhir tidak diterbitkan. Yogyakarta : Program Sarjana Pendidikan Teknik
Informatika Universitas Negeri Yogyakarta.
Hidayat, T.M, Rispianda, dan Amila, K. 2014. Rancangan Perangkat Lunak Penjadwalan
Perkuliahan di Jurusan Teknik Industri ITENAS*. Reka Integra, (Online), Volume 1,
No.1, (http://download.portalgaruda.org2, diakses 17 September 2016).

11

Anda mungkin juga menyukai