RUP
(Rational Unified Process)
A.
Sejarah
RUP yang dikembangkan oleh Rational
software adalah hasil kerjasama antara Grady Booch, James Rumbaugh, dan Ivar
Jacobson dalam menyusun suatu metodologi yang digunakan untuk membangun
software. RUP sendiri merupakan suatu metodologi pembangunan software..
RUP menyediakan suatu pendekatan untuk
menangani pekerjaan dan tanggung jawab dalam pengembanganan. RUP bertujuan
untuk menghasilkan suatu software yang
sesuai dengan kebutuhan dari end-user nya, pada jangka waktu dan biaya yang
terukur.
B. Konsep
RUP merupakan metodologi pengembangan
software yang berasal dari pengalaman empiris pengembangan software skala
besar. Maka wajar apabila RUP memiliki rangkaian penyusun yang sangat
komprehensif.
RUP merupakan metodologi yang general, artinya RUP membutuhkan suatu
penyesuaian apabila akan diimplementasikan pada suatu proyek pengembangan
software. RUP memiliki core
values yang terdiri dari :
·
Use case driven design
·
Process Tailoring
·
Tools Support
RUP menjadikan use case sebagai dasar bagi proses pengmbangan software
dari tahap ke tahap. Ada beberapa practical
work yang digunakan dalam RUP yaitu :
·
Pengembangan iteratif
·
Manajemen kebutuhan
(Requirement Management)
·
Arsitektur component-based
·
Pemodelan visual
·
Perbaikan kualitas software
secara berkesinambungan
·
Manajemen perubahan (Change
management)
RUP memiliki empat elemen pemodelan yang utama yaitu :
·
Roles—who doing what?
·
Artifacts—what is produced
·
Activities—how the work is
conducted
·
Workflow—when the task is
conducted
RUP memiliki setidaknya 40 roles dan 80
artefak. Dengan metodologi yang
omprehensif dan kompleks itu RUP tepat digunakan untuk metodologi pembangunan
software yang berskala besar. RUP dikatakan sebagai metodologi yang cukup berat
untuk digunakan.
RUP dikatakan sebagai metodologi yang
bukan agile modelling meskipun terdapat plugin RUP untuk agile modelling. RUP
juga merupakan metodologi yang menganut paham top-down solution
Secara historis RUP
lahir dari suatu proyek besar yang kompleks. RUP lebih mendasarkan
metodologinya pada suatu perspektif teknik. Dari
filosofi itulah jelas bahwa RUP merupakan suatu metodologi yang lengkap untuk suatu proyek pengembangan
software. RUP sangat kompleks
dan besar sehingga penggunaannya lebih diarahkan kepada proyek pembangunan
software skala besar. Sedangakan proyek yang tergolong skala kecil dan menengah
akan sangat memakan resource.
RUP di lihat secara
teknis, financial,dan sosial:
- Teknis
RUP merupakan suatu kumpulan proses,
artefak dan roles yang digunakan untuk
panduan mengembangkan software. RUP menyediakan tools dan standar dokumentasi
yang terorganisasi dengan baik untuk
proyek software skala besar. Untuk kebutuhan proses, artefak, dokumentasi
dan sebagianya RUP menggunakan tools dalam penerapannya. RUP menggunakan
dokumentasi untuk komunikasi antar sub-team pada proyeknya. Seperti telah
disebutkan sebelumnya, RUP merupakan suatu metodologi yang berat, besar dan
kompleks. Selain itu RUP juga merupakan metodologi yang sangat general. Untuk
menerapkan RUP dalam suatu proyek, developer perlu menyesuaikan RUP sesuai
dengan kebutuhan proyek.
- Finansial
RUP yang
dikembangkan oleh Rational Software dan sekarang dimiliki oleh IBM merupakan produk
yang komersial. Mengenai metodologi yang ditawarkan RUP bisa didapatkan melalui
buku dan tools untuk RUP dikomersialkan
oleh Rational Software. RUP yang dimaintain secara berkala, sehingga apabila
terjadi update pada metodologi ataupun toolsnya, hal itu ditangani oleh
Rational Software. Dengan dukungan
finansial yang baik dan reputasi IBM, RUP menjadi metodologi yang cukup meyakinkan.
- Sosial
Perbedaan efek
sosial kedua metodologi ini masih
dipengaruhi oleh sisi finansial. RUP yang sifatnya komersil dan berlisensi
lebih dipercaya karena reputasi IBM dan kekuatan finansialnya. Software
developer skala besar mengaku lebih yakin dengan membeli metodologi yang
berlisensi.
Jangka waktu
yang digunakan untuk pembangunan software dengan RUP biasanya dalam ukuran
minggu atau bulan. Untuk suatu tahap dalam RUP biasanya dibutuhkan waktu
mingguan atau bulanan. RUP merupakan metodologi yang besar dam komunikasi yang
digunakan menggunakan dokumentasi sehingga pada fase-fase awal dan tahap
permulaan pembangunan software, kinerja tim dikerahkan untuk pembuatan
dokumen-dokumen analisa dan desain yang akan digunakan untuk pengembangan pada
tahap selanjutnya.
Dalam
penerapannya, RUP fleksibilitas yang tinggi. RUP dapat
disesuaikan dengan kondisi dari proyek yang akan dibangun. RUP akan
menyesuaikan dengan kebutuhan dan konteks yang berbeda,
Proyek software dengan RUP mendasarkan pengembangannya pada use case. RUP
tetap beranggapan bahwa proses planning pada pembangunan software tidak dapat
dilakukan secara detail sehingga untuk RUP planning dikembangkan secara terus
menerus RUP tetap melibatkan customer dalam pengembangan software. Dalam RUP, customer tidak terlibat
dalam tim dan hanya sebagai source dari requirements dan customer pun tidak
perlu person tapi bisa suatu institusi. Sedangkan untuk releasenya, RUP
menganggap versi produk yang stabil dan executable dianggap sebagai release.
Anggota tim dalam pengembagan software dengan RUP dibagi-bagi menjadi
subteam-subteam yang memiliki tugas dan tanggung jawab sendiri-sendiri dimana
antara subteam tersebut komunikasi dilakukan dengan dokumentasi. Setiap sub tim dipandu oleh manajemen dalam
pekerjaannya dan mereka harus dapat menyiapkan dan menjaga artefak dari
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:
·
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 phase selanjutnya. Setiap phase 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.
Gambar Arsitektur Rational Unified
Process
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 komponenkomponen 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 yaknideliver good quality software within cost and
schedule time and the users accepted.
Empat Fasa Siklus Proyek 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.
Fasa 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.
Fasa Elaborasi
Objektif primer adalah untuk memitigasi risiko kunci
yang diidentifikasi dari analisis hingga akhir fase. Fasa elaborasi merupakan
fase saat proyek mulai terlihat bentuknya. Pada fase ini, masalah analisis
domain dibuat dan arsitektur proyek mulai mendapatkan bentuk dasarnya.
Fasa 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.
Fasa 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.
sumber: METODE RUP : wina Fatimah
taryana suyana
margaret rouse
Tidak ada komentar:
Posting Komentar