RUP & UML

RUP & UML

Topik bahasan pada pertemuan kali ini adalah RUP (Rational Unified Process), UML (Unified Modeling Language), dan fase-fase dalam RUP.



- Rational Unified Process



Sejarah perkembangan RUP :



1. Rational Machines yang diciptakan oleh Paul Levy dan Mike Devlin pada tahun 1981. Mereka meyedaiakan tools untuk pengembangan software engineering, terintegrasi dengan ADA Programming Language.



2. Grady Booch, menciptakan Object Oriented Design (OOD)



RUP merupakan pedoman-pedoman umum dalam pembuatan software dengan difokuskan pada analisa kebutuhan dan desain.



RUP terdiri dari 2 dimensi, antara lain Time dan Komponen Process.



Time bertujuan untuk pembagian life cycle menjadi fase-fase sedangkan Komponen Process adalah rutan langkah-langkah dalam pembangunan sebuah software.



Proses mendefinisikan siapa (WHO) melakukan apa (WHAT), kapan (WHEN), dimana (WHERE), dan bagaimana (HOW) untuk mencapai sebuah tujuan.



Berikut gambaran proses pembangunan software :






Business Modeling = mengidentifikasi kemampuan sistem yang akan dibuat dan keinginan user.



Requirment = narasi tujuan bersama tentang kebutuhan fungsional dan kebutuhan dan fungsional.



Analysis dan Design = gambaran tentang bagaimana sistem akan dibuat pada tahap implementasi.



Implementation = proses coding dengan hasil berupa exe.



Test = verifikasi sistem secara menyeluruh.



Deployment = pemasangan sistem dan training user.



- Unified Modeling Language merupakan bagian dari RUP. UML pertama kali ada pada Oktober 1995. UML merupakan model yang mendeskripsikan sistem secara lengkap dari perspektif tersendiri. Salah satu diantaranya adalah use case diagram, yang mengilustrasikan proses yang dapat diakses oleh seorang aktor.



Aktor merupakan sesuatu atau seseorang diluar sistem yang berinteraksi dengan sistem itu sendiri.



Keuntungan use case antara lain yaitu ringkas, sederhana dan dipahami oleh berbagai pihak. Use case membantu sinkronasi isi model yang berbeda. Use case mengatur sejumlah aktifitas dalam proses : pembuatan dan validasi model desain, perencanaan iterasi, pembuatan dokumentasi bagi pengguna, dan sistem deployment.



Flow of event merupakan urutan proses yang harus dilakukan pada sebuah event atau aktifitas dalam sistem.



- Fase-fase RUP :



Inception adalah fase planning dan pemetaan kebutuhan .Fase inception merupakan fase permulaan jika pembuatan software menggunakan metode Unifide Proses. Kegiatan utama yang dilakukan fase insepsi adalah pembuatan bisnis model dan persyaratan (requirements). Fase insepsi juga sudah terdapat alur kerja atau kegiatan yang baru dimulai sedikit, yaitu analisa dan desain, serta uji coba.Pada fase inception, pengembang perangkat lunak melakukan perbandingan dengan berbagai sistem yang ada, sebagai langkah awal untuk mengidentifikasi kebutuhan-kebutuhan sistem dan membuat alur sistem yang hendak dibuat. Alur sistem berbicara tentang ke arah mana dan ke siapa data dialirkan pada sistem. Sehingga sistem yang akan dibuat dapat berfungsi secara maksimal sesuai dengan kebutuhan pengguna. Kemudian dilakukan analisa secara garis besar terhadap permasalahan dan kebutuhan sistem yang telah diidentifikasi sebelumnya. Setelah itu, barulah masuk pada tahapan desain dimana sistem dimodelkan secara umum atau secara garis besar. Pada tahap implementasi membuat prototipe konsep dari program. Sedangkan pada tahap test, belum terdapat ujicoba yang dilakukan. 



Elaboration merupakan fase desain yang biasanya diisi dengan desain tabel, mock up, pembahasan sistem lama dan baru, dll. Fase elaboration terjadi saat fase insepsi dinyatakan selesai. Fase elaborasi ini juga merupakan fase yang paling kritis karena tujuannya adalah untuk menganalisa masalah dan melakukan semua proses alur kerja yang terdapat pada Unified Process. Kegiatan dengan porsi terbesar terletak pada persyaratan serta analisis dan desain. Analisa dan desain dimulai setelah mendapatkan pemahaman awal tentang sistem bersamaan dengan implementasi dan uji coba. 

Pada fase elaboration dilakukan pematangan konsep-konsep yang dibentuk pada fase inception. Pematangan konsep yang dilakukan berupa perbaikan terhadap kebutuhan sistem, seperti penambahan fitur atau penambahan alur sistem. Pada tahap   dapat didesain dengan maksimal. Pada tahap implementasi, hasil dari analisa dan desain yang telah dibuat pada tahapan sebelumnya mulai dibangun pada program.


Construction adalah fase coding atau pembangunan software. Fase Construction memiliki tujuan utama untuk mengembangkan proyek dalam bentuk koding. Itulah sebabnya, proses implementasi menduduki puncak tertinggi pada fase ini. Sebaliknya, bisnis model mulai menurun bersamaan dengan persyaratan serta analisis dan desain, sedangkan uji coba dan pengembangan meningkat.

Pada fase construction dilakukan implementasi berupa coding, dimana pembuatan sistem mengacu kepada hal-hal yang telah ditentukan pada fase-fase sebelumnya. Pada tahap business modeling, pengembang menyelidiki dan melakukan perbaikan terhadap kebutuhan sistem yang belum terpikirkan sebelumnya. Pada tahap analysis dilakukan penyempurnaan analisis model, pada tahap desain dilakukan penyelesaian desain model. Pada tahap test dilakukan pengetesan terhadap operasi sistem yang telah dibuat. Test yang dilakukan akan menjadi lebih sering dilakukan pada saat mendekati akhir fase.


Transition merupakan fase perubahan dan koreksi apabila ada kesalahan atau kekurangan setelah proses testing. Setelah semua selesai dan benar maka proses deployment akan dilakukan, yaitu memberikan produk software kepada customer. Tujuan utama fase transisi adalah untuk peralihan proyek dari tangan pembuat system menuju tangan pengguna akhir sistem. Puncak tertinggi terdapat pada proses uji coba dan pengembangan atau proses instalasi

Pada fase ini dilakukan penyelesaian implementasi dan melakukan testing secara berulang-ulang untuk mematangkan program akhir yang telah selesai dibuat. Pematangan program perlu dilakukan untuk menganalisa apakah program yang telah selesai dibuat sesuai dengan kebutuhan pengguna serta melakukan perbaikan jika terdapat bug. Tahap business modeling dan analysis sudah tidak diperlukan karena sudah merupakan fase akhir, tetapi tetap dapat dilakukan apabila masih terdapat kebutuhan. Pada tahap desain dapat sedikit diubah jika ditemukan masalah selama masa testing. Pada tahap implementasi dan test, dilakukan penyesuaian sesuai dengan hasil uji coba dari sisi pengguna dan setiap masukan yang didapat adalah perkembangan untuk aplikasi.

Comments

Popular posts from this blog

State Chart Diagram

Class Diagram

Use Case, Activity Diagram & Flow of Event