Unified Modeling Language (UML)

By Rizky Kurniawan - January 10, 2023 ~5 mins read

RUANGDEVELOPER.com - Hai hai hai.. Selamat datang di Ruang Developer Blog. Gimana kabarnya hari ini? Masih tetap semangat belajar kan? Pada kesempatan ini kita akan belajar tentang salah satu hal yang penting dalam pemrograman berorientasi objek, yaitu Unified Modeling Language atau biasa disingkat UML. Apa itu UML? Apakah kamu pernah menggunakannya? Untuk apa UML itu? Yuk belajar bersama-sama!

Unified Modeling Language (UML)

Unified Modeling Language (UML) adalah bahasa visual yang digunakan untuk menggambarkan, menyusun, dan mengatur komponen dari sistem informasi. UML menyediakan notasi visual yang dapat digunakan untuk menggambarkan arsitektur sistem, desain objek, dan interaksi antar objek dalam sistem. UML juga membantu dalam menjelaskan konsep-konsep yang terkait dengan desain sistem, seperti kelas, objek, atribut, operasi, dan hubungan antar kelas. UML sangat berguna untuk para analis sistem, desainer sistem, dan programmer dalam menentukan spesifikasi sistem yang akan dibuat.

Beberapa Jenis Digram pada UML

Secara umum, ada beberapa jenis diagram yang sering digunakan dalam UML, yaitu:

  1. Diagram Use Case: diagram ini menggambarkan interaksi antara sistem dengan actor (pengguna atau komponen lain) yang menggunakannya.
  2. Diagram Aktivitas: diagram ini menggambarkan alur kerja yang dilakukan oleh sistem dalam melakukan suatu proses.
  3. Diagram Kelas: diagram ini menggambarkan struktur kelas dalam sistem, termasuk atribut dan operasi yang dimiliki kelas tersebut.
  4. Diagram Sekuensial: diagram ini menggambarkan urutan interaksi yang terjadi antara objek dalam sistem dalam waktu yang berurutan.
  5. Diagram Komponen: diagram ini menggambarkan komponen-komponen yang membentuk sistem dan bagaimana komponen tersebut terhubung satu sama lain.
  6. Diagram Deployment: diagram ini menggambarkan bagaimana sistem tersebar di berbagai node dan bagaimana komponen-komponen tersebut terpasang pada node tersebut.

Use Case Diagram

Use case diagram adalah sebuah diagram yang menggambarkan interaksi antara sistem dengan actor yang menggunakannya. Use case digunakan untuk menjelaskan kegiatan yang dapat dilakukan oleh sistem, dan bagaimana actor dapat mengakses kegiatan tersebut.

Use case dapat berupa aksi atau tindakan yang dilakukan oleh actor, seperti “Login ke Sistem”, “Buat Laporan”, atau “Logout dari Sistem”. Setiap use case akan terdiri dari langkah-langkah yang harus dilakukan oleh sistem untuk menyelesaikan tindakan tersebut.

Use case diagram juga dapat digunakan untuk menggambarkan hubungan antara use case dengan actor, atau antara use case dengan use case lainnya. Hubungan antara use case dapat berupa “includes” (suatu use case mencakup use case lainnya), “extends” (suatu use case merupakan variasi dari use case lainnya), atau “generalization” (suatu use case merupakan turunan dari use case lainnya).

Penggunaan use case diagram sangat berguna dalam menjelaskan kepada stakeholder (pihak yang terkait dengan sistem) apa saja yang dapat dilakukan oleh sistem, serta bagaimana sistem tersebut akan digunakan oleh actor. Diagram ini juga dapat membantu dalam menentukan spesifikasi sistem dan menentukan tahapan pengembangan sistem yang akan dilakukan.

Berikut ini adalah contoh use case diagram.

Contoh use case diagram

Activity Diagram

Activity diagram adalah sebuah diagram yang menggambarkan alur kerja yang dilakukan oleh sistem dalam melakukan suatu proses. Diagram ini menggambarkan langkah-langkah yang harus dilakukan oleh sistem dalam menyelesaikan suatu tindakan, mulai dari awal hingga akhir.

Activity diagram dapat menggambarkan aktivitas yang dilakukan oleh sistem sendiri, atau aktivitas yang dilakukan oleh actor yang menggunakan sistem. Diagram ini juga dapat menggambarkan interaksi antara sistem dengan actor atau dengan sistem lainnya.

Activity diagram juga menggunakan beberapa notasi khusus untuk menggambarkan aktivitas yang dilakukan oleh sistem. Notasi-notasi tersebut di antaranya adalah:

  1. Aktivitas: menggambarkan tindakan yang dilakukan oleh sistem.
  2. Kondisi: menggambarkan keadaan atau syarat yang harus dipenuhi agar sistem dapat melakukan aktivitas selanjutnya.
  3. Pemutus: menggambarkan bahwa ada dua atau lebih aktivitas yang dapat dilakukan oleh sistem, tergantung pada kondisi yang terpenuhi.
  4. Merge: menggabungkan dua atau lebih aktivitas yang terpisah menjadi satu aktivitas.
  5. Split: memisahkan suatu aktivitas menjadi dua atau lebih aktivitas yang terpisah.

Activity diagram sangat berguna dalam menjelaskan alur kerja yang dilakukan oleh sistem, serta bagaimana sistem tersebut akan bekerja sama dengan actor atau sistem lainnya dalam menyelesaikan suatu tindakan. Diagram ini juga dapat membantu dalam menentukan spesifikasi sistem dan menentukan tahapan pengembangan sistem yang akan dilakukan.

Berikut ini adalah contoh sederhana activity diagram.

Contoh activity diagram

Class Diagram

Class diagram adalah sebuah diagram yang menggambarkan struktur kelas dalam sistem, termasuk atribut dan operasi yang dimiliki kelas tersebut. Diagram ini menggunakan notasi-notasi khusus untuk menggambarkan kelas, atribut, dan operasi yang terdapat dalam sistem.

Notasi-notasi yang digunakan dalam class diagram di antaranya adalah:

  1. Class: menggambarkan kelas yang ada dalam sistem, dengan nama kelas yang dituliskan di bagian atas dan atribut serta operasi yang dituliskan di bagian bawah.
  2. Attribute: menggambarkan informasi yang disimpan oleh kelas, dengan nama atribut yang dituliskan di sebelah kiri dan tipe data yang dituliskan di sebelah kanan.
  3. Operation: menggambarkan tindakan yang dapat dilakukan oleh kelas, dengan nama operasi yang dituliskan di sebelah kiri dan tipe data yang dituliskan di sebelah kanan.

Class diagram juga dapat menggambarkan hubungan antar kelas, seperti “generalization” (suatu kelas merupakan turunan dari kelas lainnya) atau “association” (suatu kelas memiliki hubungan dengan kelas lainnya).

Class diagram sangat berguna dalam menjelaskan struktur objek yang ada dalam sistem, serta bagaimana objek tersebut saling berinteraksi satu sama lain. Diagram ini juga dapat membantu dalam menentukan spesifikasi sistem dan menentukan tahapan pengembangan sistem yang akan dilakukan.

Berikut ini adalah contoh class diagram.

Contoh class diagram

Sequence Diagram

Sequence diagram digunakan untuk menggambarkan urutan dan timbulnya interaksi antara objek dalam sistem dalam konteks kerjasama. Sequence diagram menggunakan sumbu vertikal untuk mewakili waktu dan menunjukkan pesan yang dikirim antara objek pada waktu yang berbeda. Sequence diagram berguna untuk menganalisis dan mengdesign sistem yang terdiri dari beberapa objek yang saling berkomunikasi dan bekerja sama untuk menyelesaikan tugas tertentu.

Berikut ini adalah contoh sequence diagram.

Contoh sequence diagram

Jadi…

Unified Modeling Language (UML) adalah bahasa standar untuk menggambarkan, menganalisis, dan mengkomunikasikan arsitektur sistem yang akan dibuat. UML membantu para pengembang perangkat lunak dalam mengatur dan mengkomunikasikan ide-ide mereka sehingga mudah dipahami oleh tim lain atau klien. Dengan UML, para pengembang dapat dengan mudah menggambarkan struktur sistem yang akan dibuat, termasuk hubungan antara komponen-komponen yang ada, proses yang terjadi, dan interaksi antara objek.

UML sangat penting dalam pemrograman karena membantu para pengembang dalam merancang dan mengembangkan sistem yang efektif dan mudah dipahami. UML juga membantu dalam menghindari kesalahan dan kebingungan yang mungkin terjadi dalam proses pengembangan sistem, sehingga proses tersebut menjadi lebih efisien. Namun, UML tidak merupakan bahasa pemrograman yang bisa digunakan secara langsung untuk menulis kode. Sebaliknya, UML digunakan sebagai bahasa visual untuk menggambarkan sistem yang akan dibuat sebelum kemudian diterjemahkan ke dalam bahasa pemrograman yang sesuai.

Ingin Berdiskusi?

Yuk bergabung di Grup Telegram Ruang Developer atau mulai diskusi melalui GitHub. See You!

Dapatkan contoh source code project backend, frontend, atau fullstack untuk kamu amati, tiru, dan modifikasi sesuka hati. Klik untuk melihat detail!
comments powered by Disqus

Berlangganan Gratis

Kamu akan menerima email update dari Ruang Developer

Beri Dukungan

Beri dukungan, dapatkan full source code project web untuk bahan referensi, tiru, dan modifikasi.
Lightbox