Sabtu, 08 Juni 2013

Rational Unified Proses

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:
  1. 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. 
  1. 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.
  1. 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,ElaborationConstruction, 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,whathow 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 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 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.

sumberMETODE RUP : wina Fatimah
                                           taryana suyana  
                                           margaret rouse   

Tidak ada komentar:

Posting Komentar