Kenali Apa itu UML (Unified Modeling Language) dan Jenisnya

Unified Modeling Language (UML) adalah sebuah teknik yang akan berguna buat Anda saat akan memodelkan implementasi sebuah sistem. UML dibedakan menjadi 2 jenis, yaitu structural diagram dan behavioral diagram. Structural diagram sendiri terdiri dari Component Diagram, Object Diagram, Class Diagram, dan Deployment Diagram. Sedangkan behavioral diagram terdiri dari Use Case Diagram, State Diagram, Activity Diagram, dan Interaction Diagram.
unified modeling language
Daftar Isi

Program yang akan Anda buat akan diimplementasikan dalam waktu yang lama, sehingga perlu dianalisis lebih lama dalam segi perencanaan, desain, dan pemodelannya.

Dalam artikel ini kita akan membahas tentang unified modeling language dari pengertian, sejarah, jenis-jenis, hingga contohnya. Simak terus artikel ini sampai habis, ya!

Apa Itu UML

Unified Modeling Language atau dapat disingkat UML adalah bahasa pemodelan yang terstandarisasi dan terdiri dari diagram yang terintegrasi. UML dikembangkan untuk membantu seorang system dan software developer untuk menentukan, memvisualisasikan, membangun, dan mendokumentasikan sistem dari perangkat lunak, seperti untuk pemodelan bisnis dan sistem non perangkat lunak lainnya.

UML diterapkan di luar pengembangan perangkat lunak, seperti alur proses dalam manufaktur. UML bukanlah bahasa pemrograman, namun lebih ke bahasa visual. Secara keseluruhan, diagram UML mendeskripsikan batasan, struktur, dan perilaku sistem serta objek di dalamnya.

Sejarah Unified Modeling Language

Awal mula UML adalah pada tahun 1996, Request for Proposal (RFP) yang dikeluarkan oleh Object Management Group (OMG) menyediakan perantara untuk organisasi-organisasi lain untuk bergabung untuk menghasilkan respons RFP bersama.

Rational membentuk konsorsium mitra UML bersama beberapa organisasi yang bersedia mendedikasikan sumber daya mereka untuk menginisiasi UML 1.0. Para kontributor pada UML 1.0 ini adalah Digital Equipment Corp, HP, i-Logix, IntelliCorp, IBM, ICON Computing, MCI Systemhouse, Microsoft, Oracle, Rational, TI, dan Unisys. UML versi 1.0 ini diajukan oleh OMG pada Januari 1997 sebagai respons dari RFP awal.

Pada Januari 1997, IBM, ObjectTime, Platinum Energy, Ptech, Taskon, Reich Technology, dan Softeam juga mengajukan RFP terpisah pada OMG. Perusahaan-perusahaan ini bergabung untuk mengkontribusikan idenya di versi terbaru, yaitu UML 1.1. UML 1.1 dirilis sebagai versi terbaru dari UML 1.0 dan memasukkan kontribusi dari mitra-mitra baru.

UML 1.1 diajukan ke OMG sebagai pertimbangan mereka dan diadopsi pada musim gugur tahun 1997. Dari versi 1.0 kemudian ditingkatkan menjadi 1.1 dan ke 1.5, dan kemudian diperbarui lagi menjadi UML 2.1 dari 01 ke 06 (saat ini versi terbaru dari UML adalah UML 2.5). Pada tahun 2005, UML diumumkan sebagai standar oleh International Organization for Standardization (ISO).

Haruskah Menggunakan Unified Modeling Language?

Contoh Unified Modelling Language
Diagram © Unsplash

Setelah mengetahui tentang unified modeling language (UML), haruskah saat kita akan membuat suatu program perlu menggunakan UML?

Berikut adalah alasan mengapa Anda perlu menggunakan UML, yaitu:

  • Sebuah aplikasi yang kompleks membutuhkan kolaborasi dan perencanaan dari beberapa tim, oleh karena itu memerlukan cara yang jelas dan singkat untuk mengkomunikasikannya. Sehingga, dengan menggunakan UML akan memudahkan dalam memvisualisasikannya.
  • UML akan sangat membantu para pengusaha yang tidak mengerti tentang coding. UML akan membantu untuk mengkomunikasikan sebuah sistem kepada para non programmer, seperti persyaratan penting, fungsi, dan proses dari sistem yang akan dikembangkan.
  • UML juga bisa membantu mengefisiensi waktu ketika tim melakukan visualisasi proses, interaksi pengguna, dan struktur statis dari sistem.
Baca juga:
Mengenal Content Writer, Tugas beserta Gaji yang Diperolehnya
Tertarik Untuk Memulai Bisnis Startup? Begini Caranya!

Jenis-Jenis Unified Modeling Language

UML berkaitan dengan desain dan analisis yang berorientasi pada objek. UML menggunakan elemen-elemen dan bentuk association antara UML dengan diagramnya. Diagram UML diklasifikasikan menjadi dua, yaitu:

1. Structural Diagram

Structural diagram membantu dalam menggambarkan statis aspek atau struktur dari sebuah sistem. Structural diagram meliputi: Component Diagram, Object Diagram, Class Diagram, dan Deployment Diagram.

1) Component Diagram

Component diagram sering digunakan untuk merepresentasikan bagaimana komponen-komponen fisik di dalam sistem telah terorganisir. Component diagram menggambarkan hubungan struktural antara elemen sistem perangkat lunak dan membantu Anda memahami jika persyaratan fungsional telah dicakup oleh pengembangan yang direncanakan.

2) Class Diagram

Class diagram adalah diagram UML yang paling banyak digunakan. Class diagram merupakan building blocks dari segala orientasi objek pada sistem perangkat lunak. Anda dapat menggunakan class diagram untuk menggambarkan struktur statis dari sebuah sistem dengan menunjukkan kelas-kelas sistem, metodenya, dan atribut. Class diagram bisa membantu Anda untuk mengidentifikasi hubungan antara kelas-kelas yang berbeda maupun objek-objek yang berbeda.

3) Object Diagram

Object diagram membantu dalam menggambarkan perilaku (behaviour) ketika objek telah dipakai, Anda dapat mempelajari perilaku dari sistem pada saat tertentu. Object diagram juga membantu menggambarkan pengklasifikasi aktual dan hubungannya menggunakan class diagram.

4) Composite Structure Diagram

Composite structure diagram merepresentasikan hubungan antara bagian-bagian dan konfigurasinya yang menentukan bagaimana classifier (class, komponen, atau deployment code) berperilaku.

5) Deployment Diagram

Deployment diagram digunakan untuk merepresentasikan perangkat keras sistem dan perangkat lunaknya. Deployment diagram akan menjelaskan kepada Anda komponen perangkat keras apa dan komponen perangkat lunak apa yang berjalan di dalamnya. Deployment diagram mengilustrasikan arsitektur sistem sebagai distribusi artefak perangkat lunak di atas target yang terdistribusi.

6) Package Diagram

Secara sederhana, package diagram menunjukkan dependensi antara package yang berbeda dan komposisi internal dari package. Package dapat membantu Anda untuk menata diagram UML menjadi kelompok-kelompok yang berarti dan membuat diagram untuk  mudah dipahami. Pada dasarnya package diagram digunakan untuk menata class diagram dan use case diagram.

2. Behavioral Diagram

Behavioral diagram membantu dalam menggambarkan aspek dinamis atau perilaku dari sebuah sistem. Behavioral diagram meliputi: Use Case Diagram, State Diagram, Activity Diagram, dan Interaction Diagram.

1) Use Case Diagram

Use case diagram digunakan untuk menggambarkan fungsionalitas dari sistem dan bagian dari sistem. Use case diagram digunakan secara luas untuk mengilustrasikan kebutuhan fungsional dari sistem dan interaksinya dengan agen eksternal (actors).

Use Case Diagram
Use Case Diagram (Foto: docs.staruml.io)

2) State Machine Diagram

State machine diagram digunakan untuk merepresentasikan kondisi dari sistem atau bagian dari sistem pada waktu yang terbatas. Jenis behavioral diagram ini juga sering disebut state machine atau state-chart diagram. Jenis ini digunakan untuk memodelkan perilaku yang dinamis dari sebuah class sebagai bentuk respons waktu dan mengubah external stimuli.

3) Activity Diagram

Anda bisa menggunakan activity diagram untuk mengilustrasikan flow kontrol dalam sebuah sistem. Activity diagram berfokus pada kondisi bagaimana flow dan dan sequence dalam waktu terjadinya. Anda juga bisa menggunakan activity diagram untuk menggambarkan atau mendeskripsikan penyebab dari beberapa kejadian.

4) Sequence Diagram

Sederhananya, sequence diagram menggambarkan interaksi antara objek secara berurutan, contohnya urutan terjadinya interaksi. Sequence diagram mendeskripsikan bagaimana dan dalam urutan apa objek-objek dalam suatu fungsi sistem. Diagram ini sering digunakan oleh pebisnis dan software developers untuk mendokumentasikan dan memahami kebutuhan untuk sistem yang sudah ada dan sistem yang baru.

Sequence Diagram
Sequence Diagram (Foto: docs.staruml.io)

5) Timing Diagram

Timing diagram digunakan untuk menggambarkan perilaku objek dalam batasan waktu tertentu.

6) Communication Diagram

Communication diagram, juga dikenal sebagai collaboration diagram pada UML 1.x, digunakan untuk menunjukkan pesan berurutan yang ditukarkan antara objek. Fokus utama dari communication diagram adalah objek dan hubungannya. Anda dapat menunjukkan informasi yang sama dengan sequence diagram, namun pada communication diagram akan ditunjukkan objek dan tautan dalam bentuk bebas.

Communication Diagram
Communication Diagram (Foto: docs.staruml.io)

7) Interaction Overview Diagram

Sebuah interaction overview diagram memodelkan sebuah aksi yang berurutan dan membantu menyederhanakan interaksi yang kompleks menjadi kejadian yang lebih sederhana. Interaction overview diagram adalah percampuran dari activity diagram dan sequence diagram.

Konsep yang Berorientasi pada Objek yang Digunakan

Di dalam sebuah UML terdapat konsep yang berorientasi pada objek yang digunakan, konsep-konsep tersebut adalah:

1. Class

Class didefinisikan sebagai blueprint, contohnya struktur dan fungsi dari sebuah objek.

2. Objects

Objects dapat membantu Anda untuk melakukan dekomposisi sistem yang berukuran besar dan membantu untuk memodulasi sistem Anda. Pemodulan dari sistem untuk memisahkan sistem Anda menjadi komponen-komponen yang mudah dipahami, sehingga Anda dapat membangun sistem secara bertahap. Objects merupakan bagian dasar (building blocks) dari sebuah sistem yang digunakan untuk menggambarkan sesuatu.

3. Inheritance

Inheritance adalah sebuah mekanisme di mana child classes mewarisi properti dari parent classes.

4. Abstraction

Abstraction adalah mekanisme di mana rincian implementasi disembunyikan dari pengguna.

5. Encapsulation

Encapsulation adalah menggabungkan data-data dan melindunginya dari dunia luar.

6. Polymorphism

Polymorphism adalah mekanisme di mana fungsi-fungsi atau entitas-entitas dapat berwujud dalam berbagai bentuk.

Sekawan Studio menawarkan paket jasa pembuatan website profesional untuk meningkatkan organic traffic secara signifikan.

Tampilkan lebih Banyak Rekomendasi Topik.

Dapatkan informasi dan notifikasi update artikel terbaru dari kami, untuk menambah pengetahuan seputar dunia teknologi.

Mulai Proyek!

Tentukan paket pilihan sesuai dengan bisnis Anda.

Informasi Personal

Cluster Coding Factory, KEK Singhasari, Jl. Raya Klampok, RT.04/RW.04, Pasrepan, Klampok, Kec. Singosari, Kabupaten Malang, Jawa Timur 65153

Daftarkan diri gratis dan dapatkan keuntungan dari program kami.

Mari wujudkan idemu.

Cluster Coding Factory, KEK Singhasari, Jl. Raya Klampok, RT.04/RW.04, Pasrepan, Klampok, Kec. Singosari, Kabupaten Malang, Jawa Timur 65153

Raih keuntungan bersama kami!

Daftarkan diri gratis dan dapatkan keuntungan dari program kami.