Apa yang dimaksud dengan Rapid Application Development ?

rekayasa_perangkat_lunak

(Danastri Luna Badira) #1

RAD (rapid application development) adalah pendekatan pengembangan perangkat lunak yang dirancang untuk menghasilkan produk berkualitas tinggi dengan cepat dengan menggunakan strategi seperti prototyping atau time boxing.

Apa yang dimaksud dengan Rapid Application Development ?


(Aisha Damayanti) #2

Rapid application development (RAD) atau rapid prototyping adalah model proses pembangunan perangkat lunak yang tergolong dalam teknik incremental (bertingkat)[1]. RAD menekankan pada siklus pembangunan pendek, singkat, dan cepat. Waktu yang singkat adalah batasan yang penting untuk model ini. Rapid application development menggunakan metode iteratif (berulang) dalam mengembangkan sistem dimana working model (model bekerja) sistem dikonstruksikan di awal tahap pengembangan dengan tujuan menetapkan kebutuhan (requirement) user dan selanjutnya disingkirkan. Working model digunakan kadang-kadang saja sebagai basis desain dan implementasi sistem final. Aspek terpenting bagi model ini untuk berhasil adalah dengan meyakinkan bahwa prototype yang dikembangkan akan dapat digunakan kembali.[2]

Sejarah


Rapid Application Development (RAD) adalah istilah awalnya digunakan untuk menggambarkan proses pengembangan perangkat lunak pertama kali dikembangkan dan berhasil digunakan selama pertengahan 1970-an oleh Sistem Pusat Pengembangan New York Telephone Co di bawah arahan Dan Gielan. Setelah serangkaian implementasi sangat berhasil dari proses ini, Gielan kuliah secara ekstensif di berbagai forum pada metodologi , praktek, dan manfaat dari proses ini.

RAD melibatkan pengembangan dan pembangunan prototipe iteratif . Pada tahun 1990 , dalam buku RAD, Rapid Application Development, James Martin didokumentasikan penafsirannya tentang metodologi[3]. Baru-baru ini, istilah dan singkatan yang telah datang untuk digunakan dalam lebih luas, pengertian umum yang mencakup berbagai metode yang bertujuan untuk mempercepat pengembangan aplikasi, seperti penggunaan kerangka perangkat lunak dari berbagai jenis, seperti kerangka kerja aplikasi web.

Pengembangan aplikasi yang cepat merupakan respon terhadap proses yang dikembangkan pada 1970-an dan 1980-an, seperti Structured Sistem Metode Analisis dan Desain dan model Waterfall lainnya. Satu masalah dengan metodologi sebelumnya adalah bahwa aplikasi begitu lama untuk membangun bahwa persyaratan telah berubah sebelum sistem itu selesai, sehingga sistem tidak memadai atau bahkan tidak dapat digunakan. Masalah lain adalah asumsi bahwa persyaratan metodis tahap analisis saja akan mengidentifikasi semua persyaratan penting. Membuktikan fakta bahwa ini adalah jarang terjadi, bahkan untuk proyek-proyek dengan profesional yang sangat berpengalaman di semua tingkatan.

Dimulai dengan ide-ide dari Brian Gallagher, Alex Balchin, Barry Boehm dan Scott Shultz, James Martin mengembangkan pendekatan pengembangan aplikasi yang cepat selama tahun 1980 di IBM dan akhirnya diresmikan itu dengan menerbitkan sebuah buku pada tahun 1991, Rapid Application Development.[4]

Kelebihan dan Kekurangan


Kelebihan dari RAD[5][6] :

  1. Membeli sistem yang baru memungkinkan untuk lebih menghemat biaya ketimbang mengembangkan sendiri.
  2. Proses pengiriman menjadi lebih mudah, hal ini dikarenakan proses pembuatan lebih banyak menggunakan potongan-potongan script.
  3. Mudah untuk diamati karena menggunakan model prototype, sehingga user lebih mengerti akan sistem yang dikembangkan.
  4. Lebih fleksibel karena pengembang dapat melakukan proses desain ulang pada saat yang bersamaan.
  5. Bisa mengurangi penulisan kode yang kompleks karena menggunakan wizard.
  6. Keterlibatan user semakin meningkat karena merupakan bagian dari tim secara keseluruhan.
  7. Mampu meminimalkan kesalahan-kesalahan dengan menggunakan alat-alat bantuan (CASE tools).
  8. Mempercepat waktu pengembangan sistem secara keseluruhan karena cenderung mengabaikan kualitas.
  9. Tampilan yang lebih standar dan nyaman dengan bantuan software-software pendukung.

Kelemahan dari RAD[5][6] :

  1. Dengan melakukan pembelian belum tentu bisa menghemat biaya dibandingkan dengan mengembangkan sendiri.
  2. Membutuhkan biaya tersendiri untuk membeli peralatan-peralatan penunjang seperti misalnya software dan hardware.
  3. Kesulitan melakukan pengukuran mengenai kemajuan proses.
  4. Kurang efisien karena apabila melakukan pengkodean dengan menggunakan tangan bisa lebih efisien.
  5. Ketelitian menjadi berkurang karena tidak menggunakan metode yang formal dalam melakukan pengkodean.
  6. Lebih banyak terjadi kesalahan apabila hanya mengutamakan kecepatan dibandingkan dengan biaya dan kualitas.
  7. Fasilitas-fasilitas banyak yang dikurangi karena terbatasnya waktu yang tersedia.
  8. Sistem sulit diaplikasikan di tempat yang lain.
  9. Fasilitas yang tidak perlu terkadang harus disertakan, karena menggunakan komponen yang sudah jadi, sehingga hal ini membuat biaya semakin meningkat.

Contoh Penerapan dalam Kehidupan


Model RAD mengadopsi model waterfall dan pembangunan dalam waktu singkat yang dicapai dengan menerapkan[7] :

  1. Component based construction (pemrograman berbasis komponen bukan prosedural).
  2. Penekanan pada penggunaan ulang (reuse) komponen perangkat lunak yang telah ada.
  3. Pembangkitan kode program otomatis/semi otomatis.
  4. Multiple team (banyak tim), tiap tim menyelesaikan satu tugas yang selevel tapi tidak sama. Banyaknya tim tergantung dari area dan kompleksitasnya sistem yang dibangun.

Jika keutuhan yang diinginkan pada tahap analisis kebutuhan telah lengkap dan jelas, maka waktu yang dibutuhkan untuk menyelesaikan secara lengkap perangkat lunak yang dibuat adalah berkisar 60 sampai 90 hari. Model RAD hampir sama dengan model waterfall, bedanya siklus pengembangan yang ditempuh model ini sangat pendek dengan penerapan teknik yang cepat.

Sistem dibagi-bagi menjadi beberapa modul dan dikerjakan beberapa tim dalam waktu yang hampir bersamaan dalam waktu yang sudah ditentukan. Model ini melibatkan banyak tim, dan setiap tim mengerjakan tugas yang selevel, namun berbeda. Sesuai dengan pembagian modul sistem.

Referensi

[1] http://istqbexamcertification.com/what-is-rad-model-advantages-disadvantages-and-when-to-use-it/
[2] https://www.tutorialspoint.com/sdlc/sdlc_rad_model.htm
[3] http://www.bestpricecomputers.co.uk/glossary/rapid-application-development.htm
[4] http://www.blueink.biz/RapidApplicationDevelopment.aspx
[5] http://ecomputernotes.com/software-engineering/rapid-application-development
[6] http://www.my-project-management-expert.com/the-advantages-and-disadvantages-of-rad-software-development.html
[7] http://stacktips.com/tutorials/se-concepts/rapid-application-development-model