
Definisi Unified Modeling Language (UML)
Unified Modeling Language atau yang biasa dikenal UML merupakan notasi pemodelan yang banyak digunakan dalam metodologi berorientasi objek. Tujuan dibuatnya UML ialah sebagai berikut:
- Bagi pengguna, tersedia bahasa pemodelan visual yang siap digunakan dan ekspresif, sehingga dapat digunakan dalam pemodelan suatu sistem informasi.
- Memberikan mekanisme pemodelan untuk memperluas konsep dasarnya.
- Tidak tergantung pada bahasa pemrograman maupun proses pengembangan/metodologi tertentu.
- Memberikan pemahaman dasar secara formal terhadap bahasa pemodelan.
- Memberikan dukungan pada konsep pengembangan sistem pada tingkatan tinggi/tidak terlalu teknis.
- Mengintegrasikan praktik dan metodologi terbaik.
UML sendiri dikelola oleh Object Management Group (OMG) dan telah menjadi standar umum. Pada saat ini UML yang terbaru adalah UML dengan versi 2.5. UML versi 2.5 yang terdiri atas dua kelompok diagram, yaitu:
1. Diagram Struktur (Structure Diagram)
Diagram Struktur berguna untuk menggambarkan struktur statis suatu sistem. Pada diagram struktur juga digunakan objek, atribut, operasi dan relasi antar objek untuk memberikan gambaran terkait struktur yang ada dalam sistem. Diagram struktur terdiri atas:
- Class Diagram
- Component Diagram
- Object Diagram
- Composite Structure Diagram
- Deployment Diagram
- Package Diagram
- Profile Diagram
2. Diagram Perilaku (Behaviour Diagram)
Diagram perilaku berfungsi untuk menunjukkan dinamika suatu sistem. Pada diagram perilaku ini ditunjukkan suatu kolaborasi serta interaksi antar objek dan kondisi internal suatu objek.
- Activity Diagram
- Interaction Diagram
a. Communication Diagram
b. Interaction Overview Diagram
c. Sequence Diagram
d. Timing Diagram - State Machine Diagram
- Use Case Diagram
Berikut merupakan hal-hal yang dapat digambarkan oleh diagram yang terdapat pada UML:
- Berbagai aktifitas atau pekerjaan dalam sistem, baik yang dilakukan manusia maupun mesin.
- Berbagai komponen dalam sistem bagaimana interaksinya.
- Bagaimana sistem berjalan.
- Bagaimana berbagai entitas berinteraksi dengan komponen lain.
- Antar muka pengguna eksternal.