Senin, 24 April 2017

Materi RAD



1.Rapid Application Development (RAD)
adalah strategi siklus hidup yang ditujukan untuk menyediakan pengembangan yang jauh lebih cepat dan mendapatkan hasil dengan kualitas yang lebih baik dibandingkan dengan hasil yang dicapai melalui siklus tradisional (McLeod, 2002).

berikut ini adalah tahap-tahap pengembangan aplikasi dari tiap-tiap fase pengembangan aplikasi:


1) Requirements Planning (Perencanaan Syarat-Syarat)
Dalam fase ini, pengguna dan penganalisis bertemu untuk mengidentifikasikan tujuan-tujuan aplikasi atau sistem serta untuk megidentifikasikan syarat-syarat informasi yang ditimbulkan dari tujuan-tujuan tersebut. Orientasi dalam fase ini adalah menyelesaikan masalah-masalah perusahaan. Meskipun teknologi informasi dan sistem bisa mengarahkan sebagian dari sistem yang diajukan, fokusnya akan selalu tetap pada upaya pencapaian tujuan-tujuan perusahaan (Kendall, 2010).
2) RAD Design Workshop (Workshop Desain RAD)
Fase ini adalah fase untuk merancang dan memperbaiki yang bisa digambarkan sebagai workshop. Penganalisis dan dan pemrogram dapat bekerja membangun dan menunjukkan representasi visual desain dan pola kerja kepada pengguna. Workshop desain ini dapat dilakukan selama beberapa hari tergantung dari ukuran aplikasi yang akan dikembangkan. Selama workshop desain RAD, pengguna merespon prototipe yang ada dan penganalisis memperbaiki modul-modul yang dirancang berdasarkan respon pengguna. Apabila sorang pengembangnya merupakan pengembang atau pengguna yang berpengalaman, Kendall menilai bahwa usaha kreatif ini dapat mendorong pengembangan sampai pada tingkat terakselerasi (Kendall, 2010).
3) Implementation (Implementasi)
Pada fase implementasi ini, penganalisis bekerja dengan para pengguna secara intens selama workshop dan merancang aspek-aspek bisnis dan nonteknis perusahaan. Segera setelah aspek-aspek ini disetujui dan sistem-sistem dibangun dan disaring, sistem-sistem baru atau bagian dari sistem diujicoba dan kemudian diperkenalkan kepada organisasi (Kendall, 2010).


2. Rapid Application Development  (RAD)

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. RAD menggunakana metode interatif (berulang) dalam pengembangan system dimana working model (Model berkerja) system dikonstruksikan di awal tahap mengembangan dengan tujuan menetapkan kebutuhan (Requirement) user dan lainnya di singkirkan. Warking model di gunakan kadang-kadang saja sebagai basis disen dan implementasi system final.

Tahap- tahap dalam RAD:
RAD di gunakan dalam system kontruksi,maka menekankan fase-fase. Ada tiga fase dalam RAD yaitu (kendall dan kendall, 2008):
1. Reguirement planning, dalam tahap ini diketahui apa saja yang menjadi kebutuhan system yaitu dengan mengidentifikasikan kebutuhan informasi dan masalah yang dihadapi untuk menentukan tujuan, batasan-batasan system, kendala dan juga alternative pemecahan masalah. Analisis digunakan untuk mengetahui perilaku system dan juga untuk mengetahui aktifitas apa saja yang ada dalam system tersebut.

2.design workshop, yaitu mengidentifikasi solusi alternatif dan memilih solusi yang terbaik. Kemudian membuat design proses bisnis dan desin pemograman untuk data-data yang telah di dapatkan dan di pemodelkan dalam arsitektur system informasi. Tools yang digunakan dalam pemodelan system biasanya menggunakan unified modeling language (UML).
3. Implentation, setlah design workshop dilakukan, selanjutnya system diimplementasikan (coding) ke dalam bentuk program atau unit program. Tahap implementasi sistem merupakan tahap meletakkan sistem supaya siap untuk dioperasikan.
Contoh penerapan dalam kehidupan, model RAD mengadopsi model waterfall dan pembangunan dalam waktu singkat yang dicapai dengan menerapkan:
1. Component based construction (pemograman berbasis komponen bukan procedural).
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 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, mak waktu yang dibutuhkan untuk menyelesaikan secara lengkap perangkat lunak yang dibuat adalah berkisar 60-90 hari. Model RAD hamper sama dengan model waterfall, beadnya siklus pengembangan yang di tempuh model ini sangat pendek dengan penerapan teknik yang cepat.
Sumber:











3. 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 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. (Sumber Wikipedia)
Penerapan model RAD mengadopsi model waterfall dan pembangunan dalam waktu singkat yang dicapai dengan menerapkan :
-Component based construction ( pemrograman berbasis komponen bukan prosedural).
-Penekanan pada penggunaan ulang (reuse) komponen perangkat lunak yang telah ada.
-Pembangkitan kode program otomatis/semi otomatis.
-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.
Sumber:








Materi RUP



1.RUP (Rational Unified Process)
 RUP, singkatan dari Rational Unified Process, adalah suatu kerangka kerja proses pengembangan perangkat lunak iteratif yang dibuat oleh Rational Software, suatu divisi dari IBM sejak 2003. RUP bukanlah suatu proses tunggal dengan aturan yang konkrit, melainkan suatu kerangka proses yang dapat diadaptasi dan dimaksudkan untuk disesuaikan oleh organisasi pengembang dan tim proyek perangkat lunak yang akan memilih elemen proses sesuai dengan kebutuhan mereka.
RUP menggunakan konsep object oriented, dengan aktifitas yang berfokus pada pengembangan model dengan menggunakan Unified Model Language (UML). Melalui gambar dibawah dapat dilihat bahwa RUP memiliki, yaitu:
Dimensi pertama digambarkan secara horizontal. Dimensi ini mewakili aspek-aspek dinamis dari pengembangan perangkat lunak. Aspek ini dijabarkan dalam tahapan pengembangan atau fase. Setiap fase akan memiliki suatu major milestone yang menandakan akhir dari awal dari fase selanjutnya. Setiap fase dapat berdiri dari satu beberapa iterasi.  Dimensi ini terdiri atas Inception, Elaboration, Construction, dan Transition.
Dimensi kedua digambarkan secara vertikal. Dimensi ini mewakili aspek-aspek statis dari proses pengembangan perangkat lunak yang dikelompokkan ke dalam beberapa disiplin. Proses pengembangan perangkat lunak yang dijelaskan kedalam beberapa disiplin terdiri dari empat elemen penting, yakni who is doing, what, how dan when. Dimensi ini terdiri atas.
Business Modeling, Requirement, Analysis and Design, Implementation, Test, Deployment, Configuration dan Change Manegement, Project Management, Environtment.
 
Pada penggunaan kedua standard tersebut diatas yang berorientasi obyek (object orinted) memiliki manfaat yakni:
Improve productivity
Standard ini dapat memanfaatkan kembali komponen-komponen yang telah tersedia/dibuat sehingga dapat meningkatkan produktifitas
Deliver high quality system
Kualitas sistem informasi dapat ditingkatkan sebagai sistem yang dibuat pada komponen­komponen yang telah teruji (well-tested dan well-proven) sehingga dapat mempercepat delivery sistem informasi yang dibuat dengan kualitas yang tinggi.
Lower maintenance cost
Standard ini dapat membantu untuk menyakinkan dampak perubahan yang terlokalisasi dan masalah dapat dengan mudah terdeteksi sehingga hasilnya biaya pemeliharaan dapat dioptimalkan atau lebih rendah dengan pengembangan informasi tanpa standard yang jelas.
Facilitate reuse
Standard ini memiliki kemampuan yang mengembangkan komponen-komponen yang dapat digunakan kembali untuk pengembangan aplikasi yang lainnya.
Manage complexity
Standard ini mudah untuk mengatur dan memonitor semua proses dari semua tahapan yang ada sehingga suatu pengembangan sistem informasi yang amat kompleks dapat dilakukan dengan aman dan sesuai dengan harapan semua manajer proyek IT/IS yakni deliver good quality software within cost and schedule time and the users accepted.(wi01.wordpress.com)

Fase RUP
Pada RUP didefinisikan terdapat empat fasa siklus proyek. Fasa-fasa ini memungkinkan untuk disajikan dalam bentuk umum mirip dengan pendekatan air terjun, walaupun esensi kunci dari proses terdapat dalam iterasi dalam setiap fasenya. Setiap fase memiliki sebuah objektif kunci dan titik pencapaian akhir yang menandakan ketercapaian objektif. Visualisasi dari fase RUP berikut dengan sumbu waktu dinamakan sebagai grafik RUP hump.
- Insepsi
- Elaborasi
- Konstruksi
-Transisi
a.Insepsi
Objektif primer adalah untuk membatasi sistem dengan cukup sebagai dasar untuk memvalidasi biaya awal dan penganggaran. Pada fasa ini, ditentukan kasus bisnis yaitu: konteks bisnis, faktor sukses (perkiraan pendapatan, pengenalan ke pasar, dll.), dan perkiraan finansial. Sebagai pelengkap kasus bisnis adalah model penggunaan, perencaan proyek, penilaian risiko tahap awal, dan deskripsi proyek disusun.
b.Elaborasi
Objektif primer adalah untuk memitigasi risiko kunci yang diidentifikasi dari analisis hingga akhir fase. Fase elaborasi merupakan fase saat proyek mulai terlihat bentuknya. Pada fase ini, masalah analisis domain dibuat dan arsitektur proyek mulai mendapatkan bentuk dasarnya.
c.Konstruksi
Objektif primer adalah untuk membangun sistem perangkat lunak. Fase ini fokus pada pengembangan komponen dan fitur lain dari sistem. Pada fase inilah saat banyak dilakukan pengkodean. Pada proyek yang lebih besar, beberapa iterasi konstruksi dikembangkan sebagai usaha untuk memecah kasus penggunaan menjadi segmen terkelola yang menunjukkan purwarupa.
d.Transisi
Objektif primer adalah sebagai perantara sistem dari pengembangan ke produksi, yang tersedia untuk pengguna akhir. Aktivitas dalam fase ini termasuk pelatihan kepada pengguna akhir dan pengelola sistem dan pengujian beta untuk memvalidasi terhadap harapan pengguna akhir.
Peran Use Case Pada Setiap Fase:
Inception
- Menolong mengembangkan scope proyek
- Menolong menetapkan penjadwalan dan anggaran
Elaboration
- Menolong dalam melakukan analisa resiko
- Menolong mempersiapkan fase berikutnya yaitu konstruksi
Construction
- Melakukan sederetan iterasi
- Pada setiap iterasi akan akan melibatkan proses berikut: analisa desain, implementasi dan testing
Transistion
- Membuat apa yang sudah dimodelkan menjadi suatu produk jadi
- Dalam fase ini dilakukan:
Beta dan performance testing
- Membuat dokumentasi tambahan seperti; training, user guides dan sales kit
- Membuat rencana peluncuran produk ke komunitas pengguna

Penerapan Tahapan Metodologi Pengembagan Perangkat Lunak dengan Menggunakan RUP (Contoh Kasus)
Metodologi Rational Unified Process (RUP). Metode RUP merupakan metode pengembangan kegiatan yang berorientasi pada proses. Dalam metode ini, terdapat empat tahap pengembangan perangkat lunak yaitu:
Inception :
Pada tahap ini pengembang mendefinisikan batasan kegiatan, melakukan analisis kebutuhan user, dan melakukan       perancangan awal perangkat lunak (perancangan arsitektural dan use case). Pada akhir fase ini, prototipe perangkat lunak versi Alpha harus sudah dirilis
Elaboration :
Pada tahap ini dilakukan perancangan perangkat lunak mulai dari menspesifikasikan fitur perangkat lunak hingga perilisan prototipe versi Betha dari perangkat lunak.

Construction :
Pengimplementasian rancangan perangkat lunak yang telah dibuat dilakukan pada tahap ini. Pada akhir tahap ini, perangkat lunak versi akhir yang sudah disetujui administrator dirilis beserta  dokumentasi perangkat lunak.
Transition :
Instalasi , deployment dan sosialisasi perangkat lunak dilakukan pada tahap ini.


2. Rational Unified Process (RUP)
merupakan suatu metode rekayasa perangkat lunak yang dikembangkan dengan mengumpulkan berbagai best practises yang terdapat dalam industri pengembangan perangkat lunak.
RUP menggunakan konsep object oriented, dengan aktifitas yang berfokus pada pengembangan model dengan menggunakan Unified Model Language (UML), intinya model ini lebih ditekankan pada kumpulan latihan yang bisa dijadikan suatu sistem utuh.
Analisis Software Model RUP:
a.Inception
Menentukan ruang lingkup proyek.
Membuat business case.
Memenuhi syarat bahwa program telah memenuhin syarat..
b.Elaboration
Menganalisa berbagai persyaratan dan resiko.
Menetapkan base line.
Merencanakan fase berikutnya yaitu construction.
c.Construction
Melakukan sederetan iterasi.
Pada setiap iterasi akan melibatkan proses analisa desain, implementasi dan testing.
d.Transistion
Membuat apa yang sudah dimodelkan menjadi suatu produk yang utuh.
Beta dan performance testing.
Membuat dokumentasi tambahan seperti training, user guides dan sales kit.
Membuat rencana peluncuran produk ke komunitas pengguna.


Kelebihan RUP:
1.Software yang dikembangkan dengan metode ini biasanya menghasilkan kualitas yang baik.
2.Document pengembangan sistem sangat terorganisir, karena setiap fase harus terselesaikan dengan lengkap sebelum melangkah ke fase berikutnya.
Kelemahan RUP:
1.Membutuhkan keahlian yang baik atau yang telah berpengalaman dalam mengembangkan perangkat lunak dalam arti metode ini kurang cocok bagi pemula.
2.Diperlukan majaemen yang baik, karena proses pengembangan tidak dapat berulang sebelum menghasilkan suatu produk yaitu aplikasi. Jadi apabila dalam suatu proses seperti perancangan tidak selesai tepat waktu maka akan mempengaruhi keseluruhan proses pengembangan perangkat lunak.









3. Rational Unified Process (RUP)
Rational Unified Process (RUP) merupakan suatu pendekatan disiplin dalam mengerjakan tugas dan tanggung jawab melalui berbagai best practise di dalam suatu organisasi pengembangan pengembangan perangkat lunak. Tujuan dari RUP adalah untuk memastikan dihasilkannya produk perangkat lunak dengan kualitas yang tinggi (minim error dan berjalan sesuai yang diharapkan), serta memenuhi semua kebutuhan stakeholder dengan biaya dan waktu yang sudah diprediksikan. menunjukkan secara keseluruhan kerangka kerja (framework) yang dimiliki RUP
Tahapan pengembangan perangkat lunak dalam RUP terbagi menjadi 4 fase, sebagai berikut :
1. Inception
merupakan tahap untuk mengidentifikasi sistem yang akan dikembangkan. Aktivitas yang dilakukan pada tahap ini antara lain mencakup analisis sistem eksisting, perumusan sistem target, penentuan arsitektur global target, identifikasi kebutuhan, perumusan persyaratan (fungsional, performansi, keamanan, GUI, dll.), perumusan kebutuhan pengujian (level unit, integrasi, sistem, performansi, fungsionalitas, keamanan, dll.), pemodelan diagram UML (diagram use case dan activity), dan pembuatan dokumentasi.
2. Elaboration
merupakan tahap untuk melakukan disain secara lengkap berdasarkan hasil analisis di tahap inception. Aktivitas yang dilakukan pada tahap ini antara lain mencakup pembuatan disain arsitektur subsistem (architecture pattern), disain komponen sistem, disain format data (protokol komunikasi), disain database, disain antarmuka/tampilan, disain peta aliran tampilan, penentuan design pattern yang digunakan, pemodelan diagram UML (diagram sequence, class, component, deployment, dll.), dan pembuatan dokumentasi.
3. Construction
merupakan tahap untuk mengimplementasikan hasil disain dan melakukan pengujian hasil implementasi. Pada tahap awal construction, ada baiknya dilakukan pemeriksaan ulang hasil analisis dan disain, terutama disain pada domain perilaku (diagram sequence) dan domain struktural (diagram class, component, deployment). Apabila disain yang dibuat telah sesuai dengan analisis sistem, maka implementasi dengan bahasa pemrogramanan tertentu dapat dilakukan. Aktivitas yang dilakukan pada tahap ini antara lain mencakup pengujian hasil analisis dan disain (misal menggunakan Class Responsibility Collaborator untuk kasus pemrograman berorientasi obyek), pendataan kebutuhan implementasi lengkap (berpedoman pada identifikasi kebutuhan di tahap analisis), penentuan coding pattern yang digunakan, pembuatan program, pengujian, optimasi program, pendataan berbagai kemungkinan pengembangan / perbaikan lebih lanjut, dan pembuatan dokumentasi.
4. Transition
merupakan tahap untuk menyerahkan sistem aplikasi ke konsumen (roll-out), yang umumnya mencakup pelaksanaan pelatihan kepada pengguna dan testing beta aplikasi terhadap ekspetasi pengguna.


                                                          Entity Relationship Digram                                                     Si...