UML - Unified Modeling Language


Unified Modeling Language (UML) adalah himpunan struktur dan teknikuntuk pemodelan desain program berorientasi objek (OOP) serta aplikasinya. UML adalah metodologi untuk mengembangkan sistem OOP dan sekelompok perangkat tool untuk mendukung pengembangan sistem tersebut. UML mulai diperkenalkan oleh Object Management Group, sebuah organisasi yang telah mengembangkan modelteknologi, dan standar OOP sejak tahun 1980-an. Sekarang UML sudah mulai banyak digunakan oleh para praktisi OOP. UML merupakan dasar bagi perangkat (tool) desain berorientasi objek dari IBM.
UML adalah suatu bahasa yang digunakan untuk menentukan, memvisualisasikan, membangun, dan mendokumentasikan suatu sistem informasi. UML dikembangkan sebagai suatu alat untuk analisis dan desain berorientasi objek oleh Grady Booch, Jim Rumbaugh, dan Ivar Jacobson.Namun demikian UML dapat digunakan untuk memahami dan mendokumentasikan setiap sistem informasi. Penggunaan UML dalam industri terus meningkat. Ini merupakan standar terbuka yang menjadikannya sebagai bahasa pemodelan yang umum dalam industri peranti lunak dan pengembangan sistem.
Gambar terkait
UML adalah sekumpulan alat yang digunakan untuk melakukan abstraksi terhadap sebuah sistem atau perangkat lunak berbasis objek. UML merupakan singkatan dari Unified Modeling Language. UML juga menjadi salah satu cara untuk mempermudah pengembangan aplikasi yang berkelanjutan. Aplikasi atau sistem yang tidak terdokumentasi biasanya dapat menghambat pengembangan karena developer harus melakukan penelusuran dan mempelajari kode program. UML juga dapat menjadi alat bantu untuk transfer ilmu tentang sistem atau aplikasi yang akan dikembangkan dari satu developer ke developer lainya. Tidak hanya antar developer terhadap orang bisnis dan siapapun dapat memahami sebuah sistem dengan adanya UML.
UML diciptakan oleh Object Management Group yang diawali dengan versi 1.0 pada Januari 1997. Dalam pengembangan berorientasi objek ada beberapa prinsip yang harus dikenal:
  • Object
  • Class
  • Abstraction
  • Encapsulation
  • Inheritance
  • Polymorphism
Dalam UML sendiri terdapat beberapa diagram yang wajib dikuasai yaitu:
Structural Diagram
  • Class Diagram, diagram ini terdiri dari classinterfaceassociation, dan collaboration. Diagram ini menggambarkan objek - objek yang ada di sistem.
  • Object Diagram, diagram ini menggambarkan hasil instansi dari class diagram. Diagram ini digunakan untuk membuat prototype
  • Component Diagram, diagram ini menggambarkan kumpulan komponen dan hubungan antar komponen. Komponen terdiri dari classinterface, atau collaboration
  • Deployment Diagram, diagram ini menggambarkan kumpulan node dan hubungan antar nodeNode adalah entitas fisik dimana komponen di-deploy. Entitas fisik ini dapat berupa server atau perangkat keras lainnya.

Behavioral Diagram

  • Use case Diagram, diagram ini menggambarkan kumpulan use case, aktor, dan hubungan mereka. Use case adalah hubungan antara fungsionalitas sistem dengan aktor internal/eksternal dari sistem.
  • Sequence Diagram, diagram ini menggambarkan interaksi yang menjelaskan bagaimana pesan mengalir dari objek ke objek lainnya.
  • Collaboration Diagram, diagram ini merupakan bentuk lain dari sequence diagram. Diagram ini menggambarkan struktur organisasi dari sistem dengan pesan yang diterima dan dikirim.
  • Statechart Diagram, diagram ini menggambarkan bagaimana sistem dapat bereaksi terhadap suatu kejadian dari dalam atau luar. Kejadian (event) ini bertanggung jawab terhadap perubahan keadaan sistem.
  • Activity Diagram, menggambarkan aliran kontrol sistem. Diagram ini digunakan untuk melihat bagaimana sistem bekerja ketika dieksekusi.
UML umum digunakan di dunia kerja dan dunia pendidikan. Dunia kerja menggunakan UML untuk menggambarkan sistem dan aplikasi berbasis objek yang sudah ada sebelumnya atau merancang sistem dan aplikasi di awal pengembangan sebelum memasuki tahap coding. Beberapa posisi pekerjaan yang sering bersinggungan dengan UML antara lain system analystsoftware architect, dan technical writerSystem analyst selain perlu memiliki kemampuan coding, sudah tentu wajib menguasai UML, jika akan mengembangkan aplikasi atau sistem berbasis objek agar dapat menjadi acuan formal bagi para developer yang bekerja sama dengannya. Tidak hanya itu system analyst pun terkadang dituntut untuk menguasai pembuatan diagram lain seperti data flow diagramflowchartentity relationship diagram, dan lainnya. Sedangkan UML menjadi kemampuan wajib bagi seorang technical writer. Pekerjaan di posisi ini cukup banyak dibutuhkan oleh beberapa perusahaan yang kesulitan dalam membuat dokumentasi sistem atau aplikasi yang mereka kembangkan. Selain membuat user guidetechnical writerdiperlukan untuk membangun keseluruhan dokumentasi dalam UML dari aplikasi atau sistem, sehingga keberadaannya dapat menambah nilai aplikasi menjadi lebih tinggi.
UML pun digunakan sebagai alat dalam beberapa mata kuliah di perguruan tinggi yang membuka jurusan ilmu komputer, teknik informatika, sistem informasi, manajemen informatika, dan komputerisasi akuntansi. Mata kuliah yang biasa diberikan bernama Metodologi Berorientasi Objek dan Pemrograman Berorientasi Objek. Bahasa pemrograman yang digunakan umumnya Java, C#, dan PHP, kemudian mahasiswa akan mempelajari juga bagaimana merancang sebuah sistem atau aplikasi menggunakan UML terhadap suatu kasus dan membuat aplikasinya ketika memasuki tahap coding. Tidak hanya sebatas kuliah, beberapa perguruan tinggi yang mempunyai jurusan informatika, kadang mewajibkan penggunaan UML untuk digunakan sebagai alat bantu di skripsi, tesis, dan disertasi. Karena tidak semua akademisi dapat membaca semua kode program yang datang dari berbagai bahasa pemrograman, maka UML menjadi sarana untuk memahami aplikasi dan sistem yang dikembangkan akademisi lainnya.

Comments

Popular posts from this blog

Statechart Diagram (State Diagram)

Flow of Event

Class Diagram