Sejak dahulu kala komunikasi telah menjadi bagian yang sangat penting dari evolusi manusia. Sejak awal populasi manusia, manusia serta hewan telah menggunakan berbagai mode komunikasi (bahasa dan gerak tubuh) untuk berbagi informasi, menyampaikan emosi dan berbagi ide dengan satu sama lain. Untuk membuat suatu aplikasi, kita memerlukan suatu pemodelan. Pemodelan sama halnya dengan perancangan, bedanya pemodelan sendiri merupakan bentuk implementasi sistem bagaimana meletakkan suatu rancang bangun ke dalam sebuah gambar (visual) yang berbentuk diagram. Dibawah ini saya akan menjelaskan tentang apa itu UML.
Apa itu UML?
UML adalah singkatan dari Unified Modeling Language adalah bahasa pemodelan atau visualisasi standar yang dibuat oleh OMG (Object Management Group) dengan versi awal 1.0 pada bulan Januari 1997 yang digunakan untuk mendesain dan menggambarkan sistem perangkat lunak dan non-perangkat lunak. UML menyediakan notasi yang terstandarisasi dan dapat dipahami oleh semua pihak yang terlibat dalam pengembangan perangkat lunak, termasuk developer, analis sistem, dan stakeholder.Â
UML juga dapat didefinisikan sebagai suatu bahasa standar visualisasi, perancangan, dan pendokumentasian sistem, atau dikenal juga sebagai bahasa standar penulisan blueprint sebuah software dengan harapan mampu mempermudah pengembangan piranti lunak (RPL) serta memenuhi semua kebutuhan pengguna dengan efektif, lengkap, dan tepat. Hal itu termasuk faktor-faktor scalability, robustness, security, dan sebagainya.
UML juga dapat digunakan sebagai alat transfer ilmu tentang sistem aplikasi yang akan dikembangkan dari developer satu ke developer lainnya. UML sangat penting bagi sebagian orang karena UML berfungsi sebagai bridge atau jembatan penerjemah antara pengembang sistem dengan pengguna. Di sinilah pengguna dapat memahami sistem yang nantinya akan dikembangkan. Perlu kamu tahu bahwa sebenarnya UML mudah untuk dipelajari lo, tak hanya untuk developer, tetapi juga para pebisnis.
Jenis diagram UML
UML terdiri dari berbagai macam diagram, masing-masing dengan tujuan yang berbeda untuk merepresentasikan aspek yang berbeda dari sistem yang sedang dikembangkan. UML sendiri dibagi menjadi dua sub tipe yaitu; Diagram Struktural dan Perilaku (Behavioural diagrams).
Diagram Struktural :
- Class Diagram.
- Component Diagram.
- Deployment Diagram.
- Object Diagram.
- Package Diagram.
- Profile Diagram.
- Composite Structure Diagram.
Diagram Perilaku (behavioural)
- Use Case Diagram
- Activity Diagram
- State Machine Diagram
- Sequence Diagram
- Communication Diagram
- Interaction Overview Diagram
- Timing Diagram
Diagram Struktural
Class Diagram
Class diagram atau diagram kelas merupakan suatu diagram yang digunakan untuk menampilkan kelas-kelas berupa pake-paket untuk memenuhi salah satu kebutuhan paket yang akan digunakan nantinya.
Namun, pada Class diagram desain modelnya dibagi menjadi 2 bagian. Class diagram yang pertama merupakan penjabaran dari domain model yang merupakan abstraksi dari basis data. Class diagram yang kedua merupakan bagian dari modul program MVC pattern (Model View Controller), di mana terdapat class boundary sebagai class interface, class control sebagai tempat ditemukannya algoritma, dan class entity sebagai tabel dalam basis data dan query program.
Component Diagram
Component diagram yang berfungsi untuk menggambarkan software pada suatu sistem. Component diagram merupakan penerapan pada piranti lunak atau software dari satu class maupun lebih, dan biasanya berupa file data, source code,.exe, table, dokumen, atau yang lainnya.
Component Diagram memiliki beberapa fungsi seperti di bawah ini:
- Component Diagram digunakan sebagai sumber kode atau source code pada perangkat lunak
- Component Diagram digunakan sebagai komponen yang bersifat executable yang akan dilepas dan digunakan user
- Sistem yang nanti harus beradaptasi dengan sistem lainnya
- Component Diagram digunakan sebagai framework sistem. Tujuannya adalah untuk memberikanÂ
Deployment Diagram
Deployment diagram sendiri adalah jenis diagram yang statis, artinya tidak akan mengalami perubahan, ketika kita merancang diagram tersebut seperti A, maka akan bertahan sampai kapanpun. Fungsinya untuk menggambarkan, memvisualisasikan, menspesifikasikan serta mendokumentasikan suatu proses yang terjadi dalam sebuah sistem berbasis OOP (Object Oriented Programming) yang akan dibangun.Â
Selain itu deployment diagram juga mempermudah user dalam menggunakan sistem yang telah dibngun. Seperti yang telah disebutkan di atas, salah satu dari fungsi deployment diagram ialah menggambarkan dan memvisualisasikan dan menspesifikasikan proses.
Object Diagram
Object Diagram adalah sebuah rancangan sistem yang digunakan untuk menggambarkan nama objek, atribut, maupun metode yang digunakan. Object Diagram merupakan gambaran dari berbagai objek yang ada di dalam sistem dalam satu waktu. Diagram tersebut juga dinamakan sebagai Diagram Perintah. Hal ini karena diagram tersebut memiliki perintah-perintah yang lebih ditonjolkan dibandingkan dengan kelasnya.
Salah satu perbedaan utama antara Object Diagram dengan Class Diagram adalah Diagram Objek lebih spesifik. Diagram Objek juga lebih banyak digunakan ketika mengarahkan berbagai contoh maupun digunakan untuk menguji kasus yang ada di dalam Class Diagram.
Behavioural Diagrams
Use Case Diagrams
Use Case Diagram adalah interkasi atau kegiatan yang saling berkesinambungan antara aktor dengan sistem. Ada juga yang mengatakan bahwa Use case merupakan sebuah teknik yang digunakan untuk mengembangkan software atau sistem informasi sehingga bisa mendapatkan kebutuhan fungsional yang berasal dari sistem yang ada.
Komponen tersebut nantinya akan menjelaskan komunikasi antara aktor dengan sistem. Dengan begitu, use case juga bisa direpresentasikan menggunakan urutan yang sederhana sehingga lebih mudah dipahami oleh konsumen. Use case juga merupakan sebuah layanan yang ada di dalam sistem. Sementara untuk Use Case Diagram merupakan gambaran dari efek fungsionalitas dari sistem.
Komponen tersebut Anda butuhka pada saat ingin menyusun sebuah requitment pada sistem. Setelah itu mengkomunikasikan rancangan aplikasi tersebut pada konsumen serta merancang test case terhadap berbagai fitur yang ada pada sistem. Use case tersebut juga dapat diaplikasikan kepada use case yang lain. Dengan begitu, adanya duplikasi fungsionalitas bisa dihindari.
Activity Diagram
Activity diagram merupakan sesuatu yang menjelaskan mengenai alur kegiatan di dalam program yang tengah dirancang. Alur tersebut juga berkaitan dengan bagaimana prosesnya mulai dari awal, apa saja keputusan yang mungkin diambil, serta bagaimana sistem tersebut akan berakhir.
Dengan menggunakan activity diagram, maka Anda bisa menjelaskan mengenai metode paralel yang bisa saja terjadi terhadap beberapa eksekusi yang dilakukan. Activity activity juga merupaakan state khsusu yang berfungsi sebagai action atau aksi serta sebagian besar transisinya dipicu oleh akhir dari state sebelumnya atau internal processing.
Tujuan Activity Diagram :
- Untuk menjelaskan sebuah proses bisnis serta urutan aktivitas di dalam proses
- Struktur diagramnya memiliki kesamaan dengan flowchart atau DFD (Data Flow Diagram) sehingga digunakan untuk membuat sebuah perancangan yang testruktur
- Activity diagram juga digunakan untuk tujuan bisnis modeling yang nantinya akan menunjukkan seperti apa aktivitas dari sebuah proses bisnis yang sedang berlangsung
- Acitivity diagram berguna untuk Anda yang ingin membuat diagram ini terlebih dahulu ketika ingin membuat model dari sebuah metode. Dengan begitu, Anda menjadi lebih mudah di dalam memahami prosesnya secara menyeluruh.
State Machine Diagram
State Machines Diagram merupakan diagram yang digunakan untuk menggambarkan adanya perubahan maupun transisi keadaan (dari status yang satu ke status yang lainnya) terhadap objek yang ada pada program. Hal ini merupakan akibat dari adanya stimulan yang diterima.
State Machines Diagram nanti akan digunakan untuk membuat model dari sebuah behaviour atau metode kelas maupun objek. Setelah itu akan dibuatkan sebuah urutan dari kejadian status yang telah dilewati oleh objek tersebut, termasuk juga transisi antara satu status ke status yang lainnya.
Diagram status juga menggambarkan semua status atau state yang memberikan akses agar objek-objek di dalam class tersebut serta kejadian apa saja yang dapat memicu terjadinya perubahan status.
Sebuah transisi bisa memiliki aksi yang nanti akan disalurkan ke status untuk memberikan gambaran secara lebih spesifik mengenai tindakan apa yang perlu dilakukan berkaitan dengan hubungan status tersebut. Sebuah status merupakan kondisi dari objek maupun interaksi selama masih memenuhi kondisi, menunggu kejadian, maupun menjalankan aksi.
Sequence Diagrams
Sequence Diagram merupakan diagram interkasi untuk merinci seperti apa sebuah operasi dapat berjalan. Diagram ini juga merupakan sebuah urutan yang menggambarkan adanya interaksi antar kelas mengenai pertukaran pesan. Sequence Diagram juga dinamakan sebagai diagram urutan atau diagram acara.
Diagram yang satu ini merupakan salah satu cara terbaik ketika Anda ingin memvisualisasikan maupun memvalidasi beragam sekenario runtime. Hal ini karena diagram urutan tersebut bermanfaat memperkirakan bagaimana nantinya sistem tersebut akan berjalan serta menemukan tanggung jawab dari sebuah kelas yang kemungkinan dibutuhkan di dalam menjalankan proses permodelan sitem yang baru.
itulah beberapa contoh diagram UML (Unified Modelling Language) yang sering digunakan dalam perancangan dan pemodelan suatu sistem. Ada kalanya diagram UML yang dibuat hanya sampai dengan class diagram. Hal tersebut juga perlu dipertimbangkan, guna menyesuaikan kebutuhan. Dengan menggunakan UML, tim pengembang perangkat lunak dapat mengkomunikasikan dan memahami desain sistem secara efektif dan mengidentifikasi masalah potensial sebelum sistem diimplementasikan.Â
 Sekian yang dapat saya sampaikan mengenai apa itu UML, semoga bermanfaat bagi pembaca.
Baca konten-konten menarik Kompasiana langsung dari smartphone kamu. Follow channel WhatsApp Kompasiana sekarang di sini: https://whatsapp.com/channel/0029VaYjYaL4Spk7WflFYJ2H