UML (Unified Modeling Language) adalah sebuah bahasa yang berdasarkan grafik atau gambar untuk memvisualisasikan, menspesifikasikan, membangun, dan pendokumentasian dari sebuah sistem pengembangan software berbasis OO (Object-Oriented). UML sendiri juga memberikan standar penulisan sebuah sistem blue print, yang meliputi konsep bisnis proses, penulisan kelas-kelas dalam bahasa program yang spesifik, skema database, dan komponen-komponen yang diperlukan dalam sistem software.
Tujuan UML (Unified Modeling Language)
- Menyatukan praktek-praktek terbaik yang terdapat dalam permodelan.
- Memberikan model siap pakai, bahasa pemodelan visual yang ekspresif untuk mengembangkan dan saling menukar model dengan mudah dan dimengerti secara umum.
- Memberikan bahasa pemodelan yang bebas dari berbagai bahasa pemrograman dan proses rekayasa.
- Memodelkan suatu sistem (bukan hanya perangkat lunak) yang menggunakan konsep berorientasi objek.
- Menciptakan suatu bahasa pemodelan yang dapat digunakan baik untuk manusia maupun mesin.
Untuk membuat suatu model, UML memiliki diagram grafis sebagai berikut:
- Use Case Diagram
- Class Diagram
- Behavior Diagram (Statechart Diagram, Activity Diagram, dan Interaction Diagram (Sequence Diagram dan Collaboration Diagram))
- Implementation Diagram (Component Diagram dan Deployment Diagram)
Bagian-bagian UML (Unified Modeling Language)
View
Digunakan untuk melihat sistem yang dimodelkan dari beberapa aspek yang berbeda. View bukan melihat grafik, tapi merupakan suatu abstraksi yang berisi sejumlah diagram. Beberapa jenis view dalam UML yaitu logical view, use case view, concurrency view, component view, dan deployment view.
Logikal View
Mendeskripsikan bagaimana fungsionalitas dari sistem, struktur statis, dan kolaborasi dinamis yang terjadi keika objek mengirim pesan ke objek yang lain dalam suatu fungsi tertentu. Digambarkan dalam class diagrams untuk struktur statis dan dalam state, sequence, collaboration, dan activity diagram untuk model dinamis. Digunakan untuk perancangan dan pengembangan.
Use Case ViewMendeskripsikan fungsionalitas sistem yang seharusnya dilakukan sesuai yang diinginkan external actors. Actor yang berinteraksi dengan sistem dapat berupa user atau sistem lainnya. View digambarkan dalam use case diagrams dan activity diagrams. View ini digunakan terutama untuk pelanggan, perancang, pengembang dan penguji sistem.
Concurrency View
Membagi sistem kedalam proses dan prosesor. Digambarkan dalam diagram dinamis dan diagram implementasi serta digunakan untuk pengembangan, pengintegrasi, dan penguji.
Component View
Mendeskripsikan implementasi dan ketergantungan modul. Komponen yang merupakan tipe lainnya dari code module diperlihatkan dengan struktur dan ketergantungannya juga alokasi sumber daya komponen dan informasi administrative. Digambarkan dalam component view dan digunakan untuk pengembangan.
Deployment View
Mendeskripsikan fisik dari sistem seperti komputer dan perangkat dan bagaimana hubungannya dengan yang lain. Digambarkan dalam deployment diagrams dan digunakan untuk pengembang, pengintegrasi, dan penguji.
Notasi dalam UML (Unified Modeling Language)
1. Actor menggambarkan segala pengguna software aplikasi (user). Actor memberikan suatu gambarab jelas tentang apa yang harus dikerjakan software aplikasi.
2. Use Case menjelaskan urutan kegiatan yang dilakukan actor dan sistem untuk mencapai suatu tujuan tertentu. Use case hanya menjelaskan apa yang dilakukan oleh actor dan sistem bukan bagaimana actor dan sistem melakukan kegiatan tersebut. Use case teridir dari Use case Konkret dan Use case Abstrak.
3. Class merupakan pembentuk utama dari sistem berorientasi objek, karena class menunjukkan kumpulan objek yang memiliki atribut dan operasi yang sama. Class digunakan untuk mengimplementasikan interface.
4. Interface merupakan kumpulan operasi tanpa implementasi dari suatu class. Implementasi operasi dalam interface dijabarkan oleh operasi didalam class.
5. Interaction digunakan untuk menunjukkan baik aliran pesan atau informasi antar objek maupun hubungan antar objek. Biasanya interaction dilengkapi dengan teks bernama operation signature yang tersusun dari nama operasi, parameter yang dikirim dan tipe parameter yang dikembalikan.
6. Note digunakan untuk memberikan keterangan atau komentar tambahan dari suatu elemen sehingga bisa langsung terlampir dalam model. Note bisa disertakan kesemua elemen notasi lain.
7. Dependency merupakan relasi yang menunjukan bahwa perubahan pada salah satu elemen memberikan pengaruh pada elemen lain. Elemen yang ada di bagian tanda panah adalah elemen yang tergantung pada elemen yang ada dibagian tanpa tanda panah. Terdapat dua stereotype dari dependency yaitu include dan extend.
8. Association menggambarkan navigasi antar class, berapa banyak objek lain yang bisa berhubungan dengan objek dan apakah suatu class menjadi bagian dari class lainnya.
9. Generalization menunjukan hubungan antara elemen yang lebih umum ke elemen yang lebih spesifik. Dengan generalization, class yang lebih spesifik akan menurunkan atribut dan operasi dari class yang lebih umum. Dengan menggunakan notasi generalization, konsep inheritance dari prinsip hirarki dapat dimodelkan.
10. Realization menunjukan hubungan bahwa elemen yang ada dibagian tanpa panah akan merealisasikan apa yang dinyatakan oleh elemen yang ada di bagian dengan panah. Misalnya class merealisasikan package, component merealisasikan class atau interface.
Definisi Rational Rose
Rational Rose adalah tools pemodelan visual untuk pengembangan sistem berbasis objek yang handal untuk digunakan sebagai bantuan bagi para pengembang dalam melakukan analisis dan perancangan sistem. Rational Rose mendukung pemodelan bisnis yang membantu para pengembang memahami sistem secara komprehensif. Juga membantu analisis sistem dengan cara pengembang membuat diagram use case untuk melihat fungsionalitas sistem secara keseluruhan sesuai dengan harapan dan keinginan pengguna. Menuntut pengembang untuk mengembangkan interaction diagram untuk melihat bagaimana objek-objek saling bekerjasama dalam menyediakan fungsionalitas yang dibutuhkan.
Keunggulan Rational Rose
- Bahasa yang digunakan adalah bahasa pemodelan standar yaitu UML, akan meningkatkan komunikasi intra tim.
- Rational Rose mendukung round-trip engineering sehingga kita dapat meng-generate model kedalam kode (Java, C++, Visual Basic, dan sebagainya) dan melakukan reverse engineering untuk menampilkan arsitektur software dari kode yang ada. Hal ini dapat dilakukan secara bolak-balik sebagai proses iterative selama proses rekayasa software.
- Model dan kode senantiasa sinkron selama dalam development cycle.
- Membangun software menggunakan Rational Rose memudahkan dalam memperbaiki software tersebut karena apabila suatu saat ditemukan requirement baru, kita dapat lagi menggambarkan lagi software tersebut dalam UML.
- Para user Rational Rose dapat berkomunikasi walaupun bekerja dalam sistem operasi yang berbeda (Windows atau UNIX).
- Dengan menggunakan Rose Web Publisher suatu tim dapat mengkomunikasikan model dan spesifikasinya dalam web browser.
- Mendukung rekayasa software untuk sistem client/server sehingga Rational Rose merupakan software pemodelan visual yang tangguh dalam lingkungan client/server, e-business, dan lingkungan perusahaan terdistribusi (kantor-kantor terletak dalam tempat yang berbeda-beda).
Menjalankan Rational Rose:
- Jalankan Rational Rose dari Start Menu - Program - Rational Rose 89i Enterprise Edition.
- Pertama kali akan menampilkan kotak dialog Create New Model. Beberapa icon akan ditampilkan pada jendela yang terletak pada tab new dari kotak dialog Create New Model, yaitu Framework yang disediakan bagi pemakai.
- Pada tab new tersebut, sorot icon Rational Unified Process (RUP), kemudian tekan OK untuk menutup kotak dialog. Diagram yang muncul pertama kali adalah diagram yang bernama Wlcome yang terdapat pada Logical View.
0 komentar:
Posting Komentar