Gambaran

Spesifikasi UML 2.5.1 secara keseluruhan meliputi berbagai jenis diagram yang akan dijelaskan setelah bagian ini.

Class Diagram

Diagram yang paling sering digunakan di UML adalah class diagram. Class diagram juga yang paling sering digunakan dari berbagai structure diagram. Class diagram merupakan diagram yang digunakan sebagai rancangan dari suatu sistem dalam bentuk class maupun interface. Setiap dari class dan interface ini mempunyai hubungan satu sama lain. Hubungan tersebut meliputi dependensi, asosiasi, generalisasi, dan lainnya.

Sequence Diagram

Apabila class diagram merupakan salah satu structure diagram yang paling sering digunakan di UML, maka sequence diagrams merupakan demikian juga namun dari berbagai behavior diagram. Sequence diagram merupakan interaction diagram, yang merupakan salah satu behavior diagram, sedangkan class diagram adalah structure diagrams. Sequence diagram menggambarkan hubungan antar lifeline pada suatu proses seiring waktu. Node dan edge yang mungkin muncul pada suatu sequence diagram meliputi:

  • lifeline
  • execution specification
  • message
  • combined fragment
  • interaction use
  • state invariant
  • continuation
  • destruction occurence

Object Diagram

Object diagram mempunyai hubungan dengan class diagram. Object diagram adalah instance level class diagram. Dalam kata lain, ini adalah diagram salah satu kemungkinan instansi dari class diagram pada saat waktu tertentu.

Package Diagram

Package diagrams menggambarkan hubungan yang terjadi antar package.

Model Diagram

Model diagram menggambarkan suatu view tertentu dari sistem. Diagram ini jarang dipakai dibandingkan dengan diagram yang lain.

Deployment Diagram

Deployment diagram menunjukkan hubungan yang terjadi antar perangkat lunak dan perangkat keras saat dilakukan aksi deployment menuju target deployment. Terdapat tiga bagian yang terlibat dalam deployment. Yaitu artifacts, deployment target (yang dapat dihubungkan dengan communication paths), dan component. Pada UML 1.x, component langsung dikirim ke node. Pada UML 2.x, componen harus dikirim ke node melalui suatu artifact. Artifact nantinya akan menghasilkan component dengan mengimplementasikannya. Dengan demikian, component dikirim ke node secara tidak langsung melalui artifact.

Use Cases

Berfungsi supaya pengembang sistem tahu secara jelas apa yang diharapkan pada suatu sistem sehingga proses pengembangan dapat berlangsung dengan baik. Harapan ini biasa meliputi tindakan suatu entitas eksternal yang dilakukan ke sistem. Adanya use cases juga dapat menghindari miskomunikasi antara developer dengan client maupun antara developer dengan developer.

State Machine Diagram

State machine diagram menggambarkan perlakuan atau sifat yang ada pada sistem. Contoh yang paling sering digunakan pada state machine diagram adalah suatu vending machine. State diagram cocok digunakan untuk menampilkan use case yang telah ditentukan pada suatu objek. Namun, diagram ini tidak terlalu cocok digunakan untuk objek-objek yang bertindak dan berhubungan satu sama lain. Sehingga, penggunaan state diagram sebaiknya dilengkapi dengan interaction diagram (seperti sequence diagram) yang dapat menunjukkan perlakuan berbagai objek pada suatu use case serta activity diagram yang berguna untuk menunjukkan alur umum suatu aktivitas untuk berbagai objek dan use case.

Activity Diagram

Activity diagram sangat mirip dengan state machine diagram. Apabila dilihat secara saksama, keduanya merupakan behavior diagram namun mempunyai letak penekanan yang berbeda. Activity diagram lebih menekankan pada aktivitas yang melibatkan konkurensi dan sinkronisasi. Sedangkan, state diagram menggambarkan semua kemungkinan state yang ada pada suatu objek atau suatu sistem. Activity diagram dapat digunakan untuk melakukan model suatu proses bisnis atau alur logis dari suatu operasi.

Communication Diagram

Communication diagram (UML 1.x: Collaboration diagram) menekankan hubungan data antar berbagai pihak yang terlibat pada suatu interaksi. Communication diagram lebih bersifat fleksibel dibandingkan dengan sequence diagram dalam segi penggambarannya. diagram ini dapat meletakkan suatu pihak di mana saja, sehingga pengguna dapat menggambarkan hubungan antar pihak dan menggunakan nomor untuk menunjukkan alur dari suatu informasi.

Composite Structure

Composite structures merupakan salah satu fitur signifikan pada UML 2 yang dapat mendekomposisi suatu kelas menjadi suatu struktur internal dalam bentuk hirarki.

Perbedaannya dengan package structure adalah package melibatkan perkelompokan compile-time, sedangkan composite structure melibatkan perkelompokan saat runtime. Sehingga, composite structure merupakan pilihan yang lebih cocok untuk melihat apa yang ada pada suatu komponen dan bagaimana bagian-bagian dari suatu komponen tersebut berinteraksi. Banyak dari notasi yang digunakan pada composite structure, digunakan pula pada component diagram.

Keefektivan dari composite structures masih dipertanyakan, namun, anggota komite UML berpikir bahwa diagram ini akan menjadi penambahan yang sangat bernilai.

Component Diagram

Pada component diagram, component itu sendiri mengacu pada sesuatu yang bersifat independen terhadap pembelian dan perlakuan upgrade. Sehingga, pembagian sistem menjadi beberapa komponen adalah strategi marketing yang juga merupakan strategi teknis. Namun perlu diperhatikan bahwa pemecahan suatu sistem menjadi terlalu banyak komponen akan menyebabkan kesusahan dalam memanajemen sistem tersebut. Pada UML 2.x, component tidak lagi digunakan untuk merepresentasikan struktur fisik, melainkan, kita akan menggunakan artifacts untuk hal demikian.

Componen diagram cocok digunakan apabila sistem ingin dibagi menjadi beberapa komponen dan ingin menunjukkan hubungan antar komponen tersebut melalui interface atau pemecahan komponen itu sendiri menjadi struktur yang lebih rendah.

Interaction Overview Diagram

Interaction overview diagram adalah kombinasi dari activity diagram dan sequence diagram. Dimana, dari activity diagram, suatu activity akan diganti dengan sequence diagram. Interaction overview diagram adalah sesuatu yang baru pada UMl 2.x, sehingga keefektivannya masih dipertanyakan. Ada pihak yang berpikir bahwa kombinasi diagram ini adalah hal yang janggal. Namun, tidak ada yang tahu pasti penggunaan yang efektif untuk diagram ini dibandingkan dengan diagram yang lain.

Timing Diagram

Seperti yang dituliskan, timing diagram adalah suatu interaction diagram yang menekankan pada batasan waktu yang ada pada suatu objek atau sekumpulan objek. Timing diagram berguna untuk menunjukkan batasan waktu yang ada saat berganti state terhadap objek yang berbeda. Diagram ini terutama berguna untuk para teknisi mesin.

Profile Diagram

Profile diagram dapat mengekstensi UML dengan menambahkan hal-hal yang baru sehingga dapat menciptakan semantik baru supaya dapat digunakan pada masalah yang ada.

Mekanisme ekstensi profile diagram adalah:

  • stereotypes
  • tagged values
  • constraints

Ekstensi ini diterapkan pada model elemen tertentu seperti class, attributes, operations, dan activities.

Referensi