Langsung ke konten utama

Rational Unified Process(RUP)


RUP merupakan produk proses perangkat lunak yang awalnya dikembangkan oleh Rational Software. Rational Software diakuisisi oleh IBM pada Februari 2003. Produk ini memuat basis-pengetahuan yang bertautan dengan artefak sederhana disertai diskripsi detail dari beragam aktivitas. RUP dimasukkan dalam produk IBM Rational Method Composer (RM C) yang memungkinkan untuk kustomisasi proses.
Dengan mengombinasikan pengalaman dari banyak perusahaan, dihasilkan enam praktik terbaik untuk rekayasa perangakat lunak modern:
1. Pengembangan iteratif, dengan resiko sebagai pemicu iterasi primer
2. Kelola persyaratan
3. Terapkan arsitektur yang berbasis komponen
4. Visualisasikan model perangkat lunak
5. Secara kontinyu, verifikasi kualitas 
6. Kendalikan perubahan
(wikipedia)

Sejarah Perkembangan RUP
1. Rational Machines ditemukan Paul Levy and Mike Devlin in 1981
2. Grady Boach - Object Oriented Design(OOD)
3. Oktober 1994 James Rumbaugh - Object Modeling Technique(OMT)
4. Musim gugur 1995 Ivan Jacobson - Object Oriented Software Engineering(OOSE)
5. Rational Machines - Rational
6. Sampai akhirnya kita kenal dengan nama RUP

RUP disusun 2 dimensi:
1. Time 
Pembagian life cycle menjadi fase-fase atau iterasi-iterasi
2. Komponen Process
Merupakan process untuk menentukan urutan langkah-langkah dalam membangun sebuah software

Nb: Process adalah who(siapa),what(untuk apa),when(kapan),where(dimana),how(bagaimana) untuk mencapai sebuah goal dalam sebuah pembuatan software 

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: 

1. Dimensi pertamadi gambarkan 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 milestoneyang menandakan akhir dari awal dari phase selanjutnya. Setiap phase dapat berdiri dari satu beberapa iterasi. Dimensi ini terdiri atas Inception,  Elaboration,  Construction, dan Transition. 

2. 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, howdan 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 Oriented) memiliki menfaat yakni:
1. improve productivity
standard ini dapat memanfaatkan kembali komponen-komponen yang telah tersedia/dibuat sehingga dapat meningkatkan produktifitas.
2. Deliver hight quality system
kualltas sistem dapat informasi dapat ditingkatkan sebagai sistem yang telah dibuat pada komponen-komponen yang telah teruji (well -tested dan well -proven) sehingga dapat mempercepat delivery sistem informasi yang telah dibuat dengan kualitas yang tinggi.
3. Lower maintenance cost
Standard ini dapat membantu untuk meyakinkan dampak perubahan yang teralokasi dan masalah dapat dengan mudah terdeteksi sehingga hasilnya biaya pemeliharaan dapat dioptimalkan atau lebih rendah dengan pengembangan informasi tanpa standar yang jelas.
4. Facilitate reuse
Standard ini memiliki kamampuan yang mengembangkan komponen-komponen yang dapat digunakan kembali untuk pengembangan aplikasi yang lainnya.
5. Manage complexity
Standard ini mudah untuk mengatur dan monitor semua proses dari semua tahapan yang ada sehingga suatu pengembangan sistem informasi yang amat kompleks dapat dilakukan dengan aman sesuai dengan harapan semua manager proyek IT/IS yakni deliver good quality software within cost and schedule time and the users accepted.

Fase RUP
1. Inception/insepsi
a. Menentukan Ruang lingkup proyek
b. Membuat 'Business Case'
c. Menjawab pertanyaan 'apakah yang dikerjakan dapat menciptakan 'good business sense' sehingga proyek dapat dilanjutkan
2.Elaboration/elaborasi
a. Menganalisa berbagai persyaratan dan resiko
b. Menetapkan 'Base line' 
c. Merencanakan fase berikutnya yaitu construction
3. Construction/kontruksi
a. Melakukan sederetan iterasi 
b. Pada setiap iterasi akan melibatkan prose berikut : analisa desain, implementasi dan testing
4. Transition/Transisi
a. Membuat apa yang sudah dimodelkan menjadi suatu produk jadi 
b. Dalam fase ini dilakukan:
  • Beta dan performance testing
  • Membuat dokumentasi tambahan seperti: training, user guide dan sales kit
  • Membuat rencana peluncuran produk ke komunitas pengguna
Peran Use Case Pada Setiap Fase
  1. inception 
  • Menolong mengembangkan scope proyek 
  • Menolong menetapkan penjadwalan dan anggaran
     2. Elaboration 
  • Menolong dalam melakukan analisa resiko
  • Menolong mempersiapkan fase berikutnya yaitu konstruksi
     3. Construction 
  •  Melakukan sederetan iritasi 
  • Pada setiap iterasi akan melibatkan proses berikut: analisa desain, implementasi dan testing
     4. Transition 
  • Membuat apa yang sudah dimodelkan menjadi suatu produk jadi 
  • Dalam fasi ini dilakukan:
          a. Beta dan performance testing
          b. Membuat dokumentasi tambahan seperti: training, user guide dan sales kit
          c. Membuat rencana peluncuran produk ke komunitas pengguna

Penerapan Tahapan Metodologi Pengembangan 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:


1. inception
 Pada tahap ini pengembang mendefinisikan batasan kegiatan, melakukan analisis kebutuhan user , dan melakukan perancangan awal perangkat lunak (perancangan arsitektural dan user case). Pada akhir fase ini, prototipe perangakat lunak versi Alpha harus sudah dirilis.

2. Elaboration
Pada tahap ini dilakukan perancangan perangkat lunak mulai dari menspesifikan fitur perangkat lunak hingga perilisan prototipe versi Betha dari perangkat lunak.

3.Contruction
Pengimplentasian 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 perangkata lunak.

4.Transition
Instalasi, deployment dan sosialisasi perangkat lunak dilakukan pada tahap ini.

Komentar