Anda di halaman 1dari 12

Laporan Tugas 1 & 2 Rekayasa Perangkat Lunak Rapid Application Development (RAD)

Oleh : 1. 2. 3. 4. 5. Aditya Purwiba Putra Luqman Effendi Handi Prasetyo Stefanus Ardi Septianto Irawan Tri Prasetyo (672011092) (672011078) (672011073) (672011225) (672011219)

Fakultas Teknologi Informasi Universitas Kristen Satya Wacana

PERANGKAT LUNAK (SOFTWARE)


1. Pengertian Software / Perangkat Lunak Perangkat lunak adalah istilah umum untuk data yang diformat dan disimpan secara digital, termasuk program komputer, dokumentasinya, dan berbagai informasi yang bisa dibaca dan ditulis oleh komputer. Dengan kata lain, bagian sistem komputer yang tidak berwujud. Istilah ini menonjolkan perbedaan dengan perangkat keras komputer. 2. Sifat Software / Perangkat Lunak Perangkat lunak itu dibangun atau direkayasa, tidak dihasilkan dengan menggunakan mesin/tangan seperti perangkat keras. Perangkat lunak itu tidak akan usang atau lusuh sejalan dengan waktu. Perangkat lunak akan terus menerus dibuat menurut pesanan, sadangkan perangkat keras akan disusun dengan menggunakan komponen. 3. Kategori Software / Perangkat Lunak Roger S. Pressman membagi tujuh kategori perangkat lunak, yaitu (Pressman, 2005): a. System Software System software adalah gabungan dari beberapa program yang ditulis untuk melayani program lainnya. Contoh dari system software seperti compilers, editors, and file management utilities. Adapun contoh lain dari aplikasi system

software adalah software,

komponen-komponen

system

operasition, drivers, networking Pada beberapa kasus system

telecommunication

processors.

software dikarakteristikkan oleh banyaknya interaksi dengan perangkat keras komputer, pengguanaan besar oleh banyak pengguna, operasi yang membutuhkan penjadwalan, berbagi sumber daya dan manajemen proses yang canggih, kompleksitas struktur data, dan antar muka eksternal. b. Application Software Application software terdiri dari beberapa program stand-alone yang

menyelesaikan kebutuhan bisnis yang spesifik. Aplikasi jenis ini memproses data bisnis sebagai cara untuk memfasilitasi operasi bisnis dan management pengambil keputusan. Pada aplikasi yang memproses data secara konvensional, application software digunakan untuk mengatur fungsi bisnis di waktu nyata (real-time). Contohnya seperti aplikasi points of sale, aplikasi manufaktur yang mengatur kontrol proses secara nyata (realtime).

c. Engineering / Scientific Software Kategori perangkat lunak ini, telah digolongkan oleh algortima numbercrunching, lingkup aplikasi dari astronomi sampai vulkanologi, dari analisis perhitungan otomotif hingga orbit luar angkasa yang dinamis, dan dari biologi molekuler hingga produksi otomatis, aplikasi kategori ini dipergunakan bagi kepentingan riset dan pengolahan perhitungan bidang ilmu terapan (scientific). d. Embedded Software Kategori perangkat lunak ini terletak pada kedalaman sebuah produk atau sistem dan digunakan untuk menjalankan dan mengatur fitur dan fungsi-fungsi untuk kebutuhan pengguna dan sistem itu sendiri. Contohnya adalah tombol pengaturan untuk oven microwave, tombol digital untuk pengaturan penunjuk bahan bakar, sistem pengereman pada kendaraan. e. Product-line Software Dirancang untuk menyediakan kemampuan spesifik bagi pengguna yang beragam. Product-linse Software dapat fokus kepada target pasar tertentu dan terbatas (contohnya aplikasi pengaturan inventori) atau kepada target pasar acak (contoh : word processing, computer graphic, multimedia, entertainment, database management, personal and business financial applications). f. Web Applications Kategori ini disingkat Webapps. Dalam versi sederhananya webapps dapat berupa kumpulan file hypertext yang menampilkan informasi menggunakan teks dan grafik yang terbatas. Contohnya e-commerce dan lingkungan komputer aplikasi B2B, WebApps berkembang yang tidak kedalam hanya

yang

kompleks

mengembangkan features stand alone program, fungsi perhitungan kompleks, dan isi kepada penggunannya, tetapi juga terintegrasi dengandatabase perusahaan dan aplikasi bisnis. g. Artificial Intelligence Software (AI) Pembuatan Artificial Intelligence Software menggunakan algoritma untuk

memecahkan masalah yang kompleks yang tidak dapat dilakukan perhitungan atau analisis langsung. Aplikasi yang termasuk pada kategori ini adalah robotic, expert system, pattern recognition image or voice, artificial neural network,

theoremproving, game playing.

4. Rekayasa Perangkat Lunak Rekayasa Perangkat Lunak (RPL) satu atau dalam bahasa yang Inggris Software cara-cara

Engineering (SE)

adalah

bidang

profesi

mendalami

pengembangan perangkat lunak termasuk pembuatan, pemeliharaan, manajemen organisasi pengembanganan perangkat lunak dan manajemen kualitas. 5. Proses Rekayasa Perangkat Lunak Perkembangan teknologi informasi saat ini sangat mempermudah dan mempercepat proses rekayasa perangkat lunak dengan adanya bermacam-macam tool desain, tool pengembangan seperti IDE (Integrated Development Environment), application frame work, dan lain-lain. Hal tersebut sering di salah artikan oleh pengembang perangkat lunak pemula dan pelanggan/pengguna perangkat lunak bahwa pengembangan perangkat lunak bisa diselesaikan dalam satu malam. Rekayasa perangkat lunak terdiri dari beberapa kegiatan yang harus di lakukan. Jika tahapan-tahapan tersebut tidak dilalui dengan baik, hampir bisa dipastikan perangkat lunak yang dihasilkan tidak akan mempunyai kualitas yang baik. Jadi tidak ada perangkat lunak yang bisa dihasilkan dengan baik hanya dengan satu malam. Proses perangkat lunak (Software Process) adalah sekumpulan aktifitas yang memiliki tujuan untuk mengembangkan perangkat lunak atau mengubahnya. Secara umum proses perangkat lunak terdiri dari : a. Pengumpulan Spesifikasi (Specification) yaitu mengetahui apa saja yang harus dapat dekerjakan sistem perangkat lunak dan batasan pengembangan perangkat lunak. b. Pengembangan (Development) yaitu pengembangan perangkat lunak untuk menghasilkan siste perangkat lunak. c. Validasi (Validation) yaitu memeriksa apakah perangkat lunak sudah memenuhi kebutuhan atau keinginan pelanggan. d. Evolusi yaitu mengubah perangkat lunak untuk memenuhi perubahan kebutuhan pelanggan.

RAPID APPLICATION DEVELOPMENT (RAD) MODEL


A. Pengertian Rapid Application Development (RAD) Rapid Application Development (RAD) atau rapid prototyping adalah model proses pembangunan perangkat lunak yang tergolong dalam teknik incremental (bertingkat). 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 kerja) sistem dikonstruksikan di awal tahap pengembangan dengan tujuan menetapkan kebutuhan (requirement) pengguna. Model kerja digunakan hanya sesekali saja sebagai basis desain dan implementasi sistem akhir. Rapid Application Development (RAD) adalah metodologi pengembangan perangkat lunak yang berfokus pada membangun aplikasi dalam waktu yang sangat singkat. Istilah ini menjadi kata kunci pemasaran yang umum menjelaskan aplikasi yang dapat dirancang dan dikembangkan dalam waktu 60 hingga 90 hari, tapi itu awalnya ditujukan untuk menggambarkan suatu proses pembangunan yang melibatkan application prototyping dan iterativen development. Menurut James Martin Rapid Application Development (RAD) merupakan pengembangan siklus yang dirancang untuk memberikan pengembangan yang jauh lebih cepat dan hasil yang lebih berkualitas tinggi daripada yang dicapai dengan siklus hidup tradisional. Hal ini dirancang untuk mengambil keuntungan maksimum dari pengembangan perangkat lunak yang telah berevolusi baru-baru ini". Profesor Clifford Kettemborough dari College Whitehead, University of Redlands, mendefinisikan Rapid Application Development sebagai "Pendekatan untuk membangun sistem komputer yang menggabungkan Computer Assisted Software Engineering (CASE) tools dan teknik, user driven prototyping. RAD meningkatkan kualitas sistem secara drastic dan mengurangi waktu yang diperlukan untuk membangun sistem". Sebagai gambaran umum, pengembangan aplikasi berarti mengembangkan aplikasi pemrograman yang bervariasi dari pemrograman umum dalam arti bahwa ia memiliki tingkat yang lebih tinggi dari liabillity, termasuk untuk kebutuhan capturing dan testing. Pada 1970an, Rapid Application Development muncul sebagai respon untuk non agile processes, seperti model Waterfall. Pengembang perangkat lunak menghadapi masalah waktu dengan metodologi sebelumnya sebagai sebuah aplikasi yang begitu lama untuk membangun.

Dengan demikian, metodologi tersebut sering mengakibatkan sistem tidak dapat digunakan. B. Unsur - Unsur Dalam Rapid Application Development (RAD) a. Prototyping Sebuah aspek kunci dari RAD adalah pembangunan prototipe untuk tujuan membangkitkan kembali desain untuk kebutuhan pengguna. Tujuannya adalah untuk membangun sebuah fitur ringan yang hasil akhirnya dalam jumlah pendek dengan waktu yang memugkinkan. Prototipe awal berfungsi sebagai bukti konsep untuk klien, tetapi lebih penting berfungsi sebagai titik berbicara dan alat untuk kebutuhan pemurnian. Mengembangkan prototipe cepat dicapai dengan Computer Aided Engineering CASE tools Software yang berfokus pada menangkap persyaratan, mengkonversi mereka ke model data, mengubah model data ke database, dan menghasilkan kode semua dalam satu alat. CASE tools populer di 80an dan awal 90an, tetapi sebagai teknologi telah berubah (dan COBOL tidak di gunakan lagi) beberapa alat mengambil keuntungan penuh dari potensi penuh dari teknologi KASUS alat. Perusahaan rasional adalah yang paling terkenal meskipun prototipe potensi pembangkitnya terbatas. Pada Otomatis Arsitektur produk cetak biru kami berfokus pada peningkatan tingkat aplikasi enterprise web yang berfungsi sebagai prototipe karena kecepatan yang mereka dapat diciptakan (dalam menit). b. Itative Developmenter Iterative Development berarti menciptakan versi yang lebih fungsional dari sebuah sistem dalam siklus pembangunan pendek. Setiap versi ditinjau dengan klien untuk menghasilkan persyaratan untuk membuat versi berikutnya. Proses ini diulang sampai semua fungsionalitas telah dikembangkan. Panjang ideal iterasi adalah antara satu hari (yang lebih dekat dengan Metodologi Agile) dan tiga minggu. Setiap siklus pengembangan memberikan pengguna kesempatan untuk memberikan umpan balik, memperbaiki persyaratan, dan kemajuan melihat (dalam pertemuan sesi fokus grup). Hal ini akhirnya pembangunan berulang yang memecahkan masalah yang melekat dalam metodologi fleksibel dibuat pada 1970an. c. Time boxing Time boxing adalah proses menunda fitur untuk versi aplikasi di masa mendatang untuk melengkapi versi saat ini sebagai ketepatan waktu. Ketepatan waktu merupakan aspek penting dari RAD, karena tanpa itu ruang lingkup dapat mengancam untuk memperpanjang iterasi pembangunan, sehingga membatasi umpan

balik dari klien, meminimalkan manfaat dari pembangunan berulang, dan berpotensi mengembalikan proses kembali ke pendekatan metodologi air terjun. d. Team Member Metodologi RAD merekomendasikan penggunaan tim kecil yang terdiri dari anggota yang berpengalaman, serbaguna, dan motivasi yang mampu melakukan peran ganda. Sebagai klien memainkan peran penting dalam proses pembangunan, sumber daya klien khusus harus tersedia selama awal Joint Application Development (JAD) sesi serta Focus Group Sessions dilakukan pada akhir siklus pengembangan. Pengembangan tim (juga dikenal sebagai SWAT atau Skilled Workers with Advance Tools) idealnya harus memiliki pengalaman di Rapid Application Development dan harus memiliki pengalaman dengan Computer Aided Software Engineering. Pendekatan manajemen Aktif dan manajemen yang terlibat sangat penting untuk mengurangi risiko siklus pengembangan diperpanjang, kesalahpahaman klien, dan melebihi tenggat waktu. Di atas manajemen semua harus kuat dan konsisten dalam keinginan mereka untuk menggunakan metodologi Rapid Application Development. Selain menegakkan waktu yang ketat, manajemen harus fokus pada pemilihan anggota tim, motivasi tim, dan pada kliring hambatan birokrasi atau politik. e. RAD Tools Salah satu tujuan utama dari metodologi Rapid Application Development yang dikembangkan oleh James Martin pada tahun 1980an adalah untuk memanfaatkan teknologi terbaru yang tersedia untuk mempercepat pembangunan. Jelas teknologi tahun 1980 sudah kuno, tetapi fokus RAD tentang alat terbaru adalah sama pentingnya hari ini seperti ketika metodologi awalnya diciptakan. C. Fase-fase / Model Rapid Application Development (RAD) a. Bussines Modelling. Aliran informasi diantara funsi-fungsi bisnis dimodelkan dengan suatu cara untuk menjawab pertanyaan-pertanyaan berikut: Informasi apa yang mengendalikan proses bisnis? Informasi apa yang dimunculkan? Siapa yang memunculkan? Ke mana informasi itu pergi? Siapa yang memprosesnya? b. Data Modelling Aliran informasi yang di definisikan sebagai bagian dari fase Bussiness Modelling disaring ke dalam serangkaian objek data yang dibutuhkan untuk menopang bisnis tersebut. Karakteristik (disebut atribut) masing-masing objek diidentifikasi dan hubungan antara objek-objek tersebut didefinisikan.

c. Prosess Modelling Aliran informasi yang didefinisikan di dalam fase Data Modelling

ditransformasikan untuk mencapai aliran informasi yang perlu bagi implementasi sebuah fungsi bisnis. Gambaran pemrosesan digunakan untuk menambah, memodifikasi, menghapus, atau mendapatkan kembali sebuah objek data. d. Aplication generation RAD mengasumsikan pemakaian teknik generasi ke-empat. Selain menciptakan perangkat lunak dengan menggunakan bahasa pemrograman generasi ke-tiga yang konvensional, RAD lebih banyak memproses kerja untuk memakai lagi komponen program yang ada (pada saat memungkinkan) atau menciptakan komponen yang bisa dipakai lagi (bila perlu). Pada semua kasus, alat-alat bantu otomatis dipakai untuk memfasilitasi konstruksi perangkat lunak. e. Testing and Turnover Karena proses RAD menekankan pada pemakaian kembali, banyak komponen program telah diuji. Hal ini mengurangi keseluruhan waktu pengujian. Tetapi komponen baru harus diuji dan semua interface harus dilatih secara penuh.

Gambar 1. Fase-Fase dalam RAD

Metodelogi RAD mengunakan Prototyping dan Throw-away Prototyping.

Gambar 2. Prototyping Metodologi Prototyping melakukan analisis, desain dan implementasi secara bersamaan untuk menghadirkan sebuah sistem dengan skala kecil dalam fungsi minimal kemudian di review oleh user untuk dilakukan proses development secara berulang hingga menghasilkan sebuah sistem.

Gambar 3. Throwaway Prototyping Throwaway Prototyping, pada metodologi ini analisa dilakukan lebih mendalam, prototype dibuat dan ditest, pengalaman yang diperoleh dari latihan ini digunakan untuk membuat produk finalnya, tetapi prototype-nya sendiri dibuang. D. Kelebihan & Kekurangan Rapid Application Development (RAD) a. Model RAD memiliki kekurangan sebagai berikut : Untuk pembuatan sistem perangkat lunak dengan skala besar maka model RAD akan memerlukan sumber daya manusia yang cukup besar untuk membentuk timtim yang mengembangkan komponen-komponen. Jika ada persetujuan untuk mengembangkan perangkat lunak dengan cara cepat (rapid) maka proyek dengan model ini akan gagal, karena akan membingungkan ketika mendefinisikan kebutuhan pelanggan.

Jika sistem perangkat lunak yang akan dibuat tidak bisa dimodulkan (dibagi bagi menjadi beberapa komponen) maka model RAD tidak dapat digunakan untuk membuat sistem perangkat lunak ini karena terlalu banyak campur tangan antar tim.

Model RAD tidak cocok digunakan untuk sistem perangkat lunak yang memiliki resiko teknis sangat tinggi, misalnya manggunakan teknologi baru yang belum banyak dikenal dan dikuasai pengembang.

b. Model RAD juga memiliki kelebihan sebagai berikut : Setiap fungsi mayor dapat dimodulkan dalam waktu tertentu kurang dari 3 bulan dan dapat dibicarakan oleh tim RAD yang terpisah dan kemudian diintegrasikan sehingga waktunya lebih efisien. RAD mengikuti tahapan pengembangan sistem sepeti umumnya, tetapi mempunyai kemampuan untuk menggunakan kembali komponen yang ada (reusable object) sehingga pengembang pengembang tidak perlu membuat dari awal lagi dan waktu lebih singkat . E. Penerapan Model RAD mengadopsi model waterfall dan pembangunan dalam waktu singkat yang dicapai dengan menerapkan : 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 atau semi otomatis. 4. Multiple team (banyak tim), tiap tim menyelesaikan satu tugas yang satu tingkat 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 hingga 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 satu tingkat, namun berbeda, sesuai dengan pembagian modul sistem.

Daftar Pustaka
http://id.wikipedia.org/wiki/Perangkat_lunak http://tarintus.wordpress.com/2012/03/10/karakteristik-rekayasa-perangkat-lunak/ http://aliranim.blogspot.com/2012/12/kategori-perangkat-lunak.html http://id.wikipedia.org/wiki/Rekayasa_perangkat_lunak http://syahrulazmi.blogspot.com/2012/03/proses-rekayasa-perangkat-lunak.html A.S Rosa,Shalahuddin.M.2009.Modul Rekayasa Perangkat Lunak (Terstruktur dan Berorientasi Objek).Bandung:Modula Bandung. http://id.wikipedia.org/wiki/Rapid_application_development http://mega19boy.files.wordpress.com/2011/03/model-rad.pdf

Pertanyaan dan Jawaban : 1. 672011159 Proses menunda fitur Time Boxing bisa lebih dijelaskan prosesnya seperti apa? Jawab: Karena tuntutan waktu pada model RAD yang terbatas, sehingga kebutuhan massa yang akan datang ditunda terlebih dahulu. 2. 672011246 RAD mempunya kelebihan yaitu setiap fungsi mayor dapat dimodulkan dalam waktu tertentu, maksudnya fungsi mayor yang seperti apa? Jawab: Setiap fungsi mayor adalah fungsi keseluruhan dari program dan sistem yang dibuat yang pada pengerjaannya dibagi beberapa tim yang pengerjaannya dalam jangka waktu 60 sampai 90 hari dan akan disatukan kembali. 3. 672011181 Jelakan dari mana langkah proses diagram RAD? Jawab : Langkahnya dari atas kebawah, dimulai dari Business Modelling hingga Testing Over. Setiap tim melakukan bagian bagian sendiri, tetapi masih dalam satu proses dalam jangka waktu 60 -90 hari. 4. 672011140 Apa perbedaan mendasar model RAD dengan Waterfall dan CBSE ? Jawab : Pada model Waterfall, proses bisa kembali lagi, tetapi pada RAD tidak dapat kembali lagi dan pengerjaannya lebih cepat, serta dibagi dalam tim. Pada model CBSE proses juga bisa kembali lagi dan berulang, tetapi tidak seperti Waterfall yang proses kembalinya hanya bisa dilakukan saat proses berakhir, sedangan CBSE bisa berulang kembali saat menemukan erorr.

Anda mungkin juga menyukai