Showing posts with label Unified Modeling Language. Show all posts
Showing posts with label Unified Modeling Language. Show all posts

Wednesday, December 5, 2012

Deskripsi Unified Modeling Language (UML)

Untuk Mengunduh keseluruhan materi UML ini beserta gambar dan contoh kasus silakan unduh disini.

Unified Modeling Language (UML)


PENGERTIAN

Unified Modeling Language (UML) merupakan sistem arsitektur yang bekerja dalam OOAD (Object-Oriented Analysis/Design) dengan satu bahasa yang konsisten untuk menentukan, visualisasi, mengkontruksi, dan mendokumentasikan artifact (sepotong informasi yang digunakan atau dihasilkan dalam suatu proses rekayasa software, dapat berupa model, deskripsi, atau software) yang terdapat dalam sistem software. UML merupakan bahasa pemodelan yang paling sukses dari tiga metode OO yang telah ada sebelumnya, yaitu Booch, OMT (Object Modeling Technique), dan OOSE (Object-Oriented Software Engineering). UML mulai diperkenalkan oleh Object Management Group sebagai bahasa standar untuk menentukan, memvisualisasikan, membangun, dan mendokumentasikan suatu sistem informasi pada tahun 1997.


ARSITEKTUR SISTEM DAN SUDUT PANDANG

- UML adalah bahasa untuk:
  1. Visualisasi
  2. Spesifikasi
  3. Konstruksi
  4. Dokumentasi
- UML bukan metode/metodologi berorientasi objek.

TUJUAN

  1. Memberikan model yang siap pakai, bahasa pemodelan visual yang ekspresif untuk mengembangkan dan saling menukar model dengan mudah dan dimengerti secara umum.
  2. Memberikan bahasa pemodelan yang bebas dari berbagai bahasa pemrograman dan proses rekayasa.
  3. Menyatukan praktek-praktek terbaik yang terdapat dalam pemodelan.


MODEL KONSEPTUAL

- Building Block (Blok Pembangun)Sintaks (dan semantik dari sintaks) dari bagian model dengan UML.
  • Things
Abstraksi dari apa yang akan dimodelkan seperti Structural, Behavioural, Grouping, dan Annotational.
  • Relationship
Hubungan antar abstraksi (Things) seperti Dependensi, Asosiasi, Generalisasi, dan Realisasi.
  • Diagrams
Mengelompokkan kumpulan sejumlah abstraksi yang dihubungkan {Akan dijelaskan pada paragraf berikutnya}.

- Rules (Peraturan)
Peraturan untuk membangun model dari berbagai bagian model. Peraturan diperlukan untuk mendefinisikan well-formed model UML yang memiliki aturan-aturan untuk:
  • Penamaaan: Bagaimana memberi nama pada kelas, relasi, dan diagram.
  • Ruang Lingkup: Konteks yang dapat memberikan makna yang lebih spesifik bagi abstraksi (things) {akan dibahas pada "class diagram"}.
  • Visibilitas: Berkaitan dengan akses sebuah elemen oleh elemen lain.
  • Integritas: Bagaimana abstraksi (things) berelasi secara konsisten.
  • Eksekusi: Bagaimana transformasi diagram.

- Common Mechanism (Mekanisme Umum)
Mekanisme pemodelan umum yang diterapkan di seluruh UML.
  • Specification: Untuk setiap model perlu didefinisikan penjelasan tentang sintaks dan semantik dari model.
  • Adornment: Notasi-notasi pada UML mudah dan lengkap, sehingga model yang didefinisikan bisa dibaca dengan jelas.
  • Common Division: Selalu terdapat pasangan notasi/istilah maupun konsep untuk memodelkan sistem, misalnya: kelas dan objek, komponen dan instan komponen, use case dan realisasi use case, antarmuka dan implementasi, dan lain-lain.
  • Extensibility: Memberi keleluasaan untuk memperluas bahasa secara terkontrol.


DIAGRAM

Untuk membuat suatu model, UML memiliki diagram grafis sebagai berikut:

a. Class diagram
Suatu diagram struktural yang memodelkan sekumpulan kelas, interface, kolaborasi dan relasi-nya. Diagram kelas digunakan untuk menggambarkan proses statik dari suatu sistem (perangkat lunak).
Contoh kelas : mahasiswa, peralatan dapur.

b. Object diagram
Suatu diagram struktural yang memodelkan sekumpulan objek dan relasinya. Diagram objek digunakan untuk menggambarkan proses statik dari suatu sistem (perangkat lunak), khususnya dalam perspektif kasus nyata atau prototype.
Contoh objek : Budi, Wati adalah objek dari kelas mahasiswa. Piring, sendok, panci, adalah objek dari kelas peralatan dapur.

c. Diagram use case
Suatu diagram perilaku yang memodelkan sekumpulan use case dan pelaku dan relasinya. Suatu use case merupakan sekumpulan urutan tindakan, termasuk variasinya, sehingga suatu sistem (perangkat lunak) menghasilkan suatu nilai yang dapat dimengerti pelaku. Diagram use case digunakan untuk menggambarkan interaksi antara pelaku dengan use case.
Contoh use case : Pendaftaran ulang mahasiswa, penampilan daftar peralatan dapur, pencarian nama mahasiswa.

d. Sequence diagram
Suatu diagram perilaku yang memodelkan interaksi, yang memperhatikan aspek urutan waktu dari pesan. Diagram sekuen merupakan realisasi dari suatu use case. Suatu diagram sekuen digunakan menggambarkan beberapa objek dilengkapi dengan pesan yang dikirim atau diterima oleh setiap objek.
Contoh d_sekuen : d_sekuen realisasi pendaftaran ulang mahasiswa, d_sekuen realisasi dari use case penampilan daftar peralatan dapur, d_sekuen realisasi use case pencarian nama mahasiswa.

e. Collaboration diagram
Suatu diagram perilaku yang memodelkan interaksi, yang memperhatikan aspek struktur pengorganisasian dari objek-objek yang mengirim dan menerima pesan. Suatu diagram kolaborasi ekivalen dengan diagram sekuen, hanya lebih fokus pada interaksi antar objek.
Contoh d_kolaborasi : d_kolaborasi use case pendaftaran ulang mahasiswa, d_kolaborasi use case penampilan daftar peralatan dapur, d_kolaborasi use case pencarian nama mahasiswa.

f. Statechart diagram
Suatu diagram perilaku yang memodelkan suatu status mesin, yang fokus kepada urutan kejadian dari perilaku suatu objek.

g. Activity diagram
Suatu diagram perilaku yang memodelkan suatu status mesin, yang fokus kepada urutan aktivitas satu ke aktivitas lainnya.

h. Component diagram
Suatu diagram struktural yang memodelkan sekumpulan komponen dan relasinya.

i. Deployment diagram
Suatu diagram struktural yang memodelkan sekumpulan simpul dan relasinya.

Diagram diagram tersebut diberi nama berdasarkan sudut pandang yang berbeda-beda terhadap sistem dalam proses analisis atau rekayasa. Dibuatnya berbagai jenis diagram diatas karena:
  1. Setiap sistem yang kompleks selalu paling baik jika didekati melalui himpunan berbagai sudut pandang yang kecil yang satu sama lain hampir saling bebas (independent). Sudut pandang  tunggal senantiasa tidak mencukupi untuk melihat isi item yang besar dan kompleks.
  2. Diagram yang berbeda-beda tersebut dapat menyatakan tingkatan yang berbeda-beda dalam  proses rekayasa.
  3. Diagram-diagram tersebut dibuat agar model yang dibuat semakin mendekati realitas. Diagram-diagram ini ditambah dengan kemampuan dokumentasi merupakan bentuk utama UML. Data-flow diagram dan tipe diagram lain yang tidak terdapat dalam UML tidak termasuk dalam paradigma object-oriented. Activity diagram dan collaboration diagram yang terdapat dalam UML menggantikan data-flow diagram. Activity diagram juga sangat bermanfaat untuk membuat workflow.


REFERENSI
Grady Booch, James Rumbaugh, Ivar Jacobson, Unified Modeling Language User Guide, The Addison-Wesley Object Technology Series, 1999
RPL: Teknik Berorientasi Objek, IT Telkom, 2010
http://en.wikipedia.org/wiki/Unified_Modeling_Language
http://www.omg.org/spec/UML/
http://www.google.com/
http://www-01.ibm.com/software/rational/uml/
http://elib.unikom.ac.id/
http://www.utdallas.edu/~chung/Fujitsu/