UML (Unified Modeling Language) #1 Tutorial

Spread the love

UML adalah sebuah bahasa yang berdasar pada grafik/gambar untuk memvisualisasi, menspesifikasikan, membangun, dan pendokumentasian dari sebuah sistem pengembangan software berbasis OO (Object-Oriented).

UML tidak hanya merupakan sebuah bahasa pemograman visual saja, namun juga dapat secara langsung dihubungkan ke berbagai bahasa pemograman, seperti JAVA, C++, Visual Basic, atau bahkan dihubungkan secara langsung ke dalam sebuah object-oriented database.

Salah satu dari tahapan SDLC atau software development life cycle, adalah desain. Desain bertujuan agar software yang akan dibuat dapat memenuhi kebutuhan user dan handal. Oleh karena itu, desain menjadi tahapan penting dalam proses pembuatan software. Dalam mendesain software, kita perlu mentransformasikan kebutuhan user, baik secara fungsional maupun non fungsional ke dalam model.

Model adalah sebuah abstraksi dari hal nyata. Model merupakan penyederhanaan dari sistem yang sebenarnya sehingga desain dari sebuah sistem dapat dimengerti oleh pihak lain. Untuk memodelkan sesuatu, tentu diperlukan bahasa pemodelan. Bahasa pemodelan dapat berupa pseudo-code, code, gambar, diagram, atau deskripsi yang menggambarkan sebuah sistem. Disinilah UML berperan sebagai bahasa pemodelan.

Mengapa harus menggunakan UML?

Jawabannya adalah untuk menghindari ambiguitas, penggunaan kata yang terlalu banyak dan detail yang tidak penting (jika pemodelan menggunakan kode maupun pseudocode) sehingga menyebabkan kesalahpahaman.

Pemodelan menggunakan UML memiliki keuntungan, yaitu :

  • UML adalah bahasa formal. Setiap elemen dari UML memiliki makna tersendiri sehingga tidak akan terjadi kesalahpahaman.
  • UML singkat / ringkas. UML memiliki notasi yang jelas dan tidak berbelit-belit.
  • UML komprehensif atau menyeluruh. UML dapat menggambarkan aspek-aspek penting dalam sistem.
  • UML dapat menghandle sistem yang besar maupun kecil.
  • UML memiliki banyak pengguna. Sehingga tersedia banyak tutorial tentang cara penggunaannya.
  • UML adalah bahasa standar. Sehingga UML tidak terikat dengan produk tertentu.

Berikut merupakan daftar diagram UML secara umum dan penjelasannya :

  • Use Case: Menggambarkan tentang interaksi antara sistem dan pengguna atau sistem lain. Sangat berguna untuk memetakan requirement atau kebutuhan dari suatu sistem.
  • Activity: Menggambarkan tentang aktivitas sekuensial maupun paralel dari sistem.
  • Class: Mengambarkan class, tipe, interface dan hubungan antar ketiganya.
  • Object: Menggambarkan instance objek dari class yang telah didefinisikan di class diagram.
  • Sequence: Menggambarkan interaksi antar objek dimana urutan dari interaksi tersebut merupakan hal penting.
  • Communication: Menggambarkan cara objek beriteraksi dan koneksi yang dibutuhkan untuk melakukan interaksi.
  • Timing: Menggambarkan interaksi antar objek dimana waktu merupakan hal yang penting.
  • Component: Menggambarkan komponen penting dalam sistem dan interface yang digunakan untuk saling berinteraksi.
  • Package : Menggambarkan hirarki dari sekelompok class dan component.
  • State Machine:  Menggambarkan status dari objek selama masa aktifnya dan event yang dapat merubah state dari objek tersebut.
  • Deployment: Menggambarkan bagaimana sistem dideploy di dunia nyata.

Secara umum, UML digunakan sebagai berikut :

Sketsa : UML hanya digunakan untuk pembuatan sketsa yang menyampaikan poin-poin penting.

Blueprint : UML digunakan untuk menyediakan spesifikasi dari sistem menggunakan UML diagram. Diagram ini kemudian dapat digenerate menggunakan UML tool. Pendekatan ini umumnya berkaitan dengan software dan biasanya menggunakanforward atau reverse engineering untuk menjaga model tetap sinkron dengan kode.

Bahasa pemrograman : UML digunakan langsung dari model menjadi executable code (tidak hanya sebagian code seperti pada forward engineering). Hal ini berarti setiap aspek detail dari sistem akan dimodelkan. Keuntungan dari pendekatan ini adalah model dapat digunakan untuk menggenerate code ke berbagai environtment.

Pendekatan yang akan dipakai tergantung pada tipe aplikasi dan metode dalam proses pengembangan software yang digunakan (ex: waterfall, interation, dan lain-lain).
Sebagai contoh, pada industri tertentu seperti kesehatan, proyek software menggunakan pendekatan UML sebagai blueprint. Hal ini karena software harus berkualitas tinggi. Kualitas merupakan hal penting pada industri ini karena kesalahan kecil dapat menyebabkan efek yang fatal.

Seperti yang telah disebutkan, metode dalam proses pengembangan software juga berpengaruh pada pendekatan yang akan digunakan dalam UML.

Sekian dulu pengantar tutorial UML ini, untuk tutorial selanjutnya akan dibahas tentang salah satu metode dari UML yaitu Metode Use Case Driven Object – Iconix Process.

http://blog.unitomo.ac.id/lambang/2017/12/12/uml-use-case-driven-object-iconix-process-2-tutorial/

http://blog.unitomo.ac.id/lambang/2017/12/13/uml-iconix-process-3-tutorial/

Posted in Tutorial.

One Comment

  1. Pingback: UML - Use Case Driven Object - Iconix Process #2 Tutorial -

Comments are closed.