UML (Unified Modeling Language) dan Jenis - Jenis Diagramnya
UML (Unified Modeling Language) adalah sebuah bahasa untuk
menentukan, visualisasi, kontruksi, dan juga mendokumentasikan artifact
(bagian dari informasi yang digunakan atau dihasilkan dalam suatu proses
pembuatan perangkat lunak. Artifact dapat berupa model, deskripsi atau
perangkat lunak) dari sistem perangkat lunak, seperti pada pemodelan
bisnis dan sistem non perangkat lunak lainnya.
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.
BAGIAN-BAGIAN UML
1. View
View digunakan
untuk melihat sistem yang dimodelkan dari beberapa aspek yang
berbeda. View bukan melihat grafik, tapi merupakan suatu abstraksi
yang berisi sejumlah diagram. Beberapa jenis view dalam UML antara
lain : use case view, logical view, component view, concurrency view,
dan deployment view.
2. Use case View
Mendeskripsikan
fungsionalitas sistem yang seharusnya dilakukan sesuai yang
diinginkan external actors. Actor yang berinteraksi dengan sistem
dapat berupa user atau sistem lainnya. View ini digambarkan dalam use
case diagrams dan kadang-kadang dengan activity diagrams. View ini digunakan
terutama untuk pelanggan, perancang (designer), pengembang (developer), dan
penguji sistem (tester).
3. Logical View
Mendeskripsikan
bagaimana fungsionalitas dari sistem, struktur statis (class, object, dan
relationship ) dan kolaborasi dinamis yang terjadi
ketika object mengirim pesan ke object lain dalam suatu
fungsi tertentu. View ini digambarkan dalam class diagrams untuk
struktur statis dan dalam state, sequence, collaboration, dan activity
diagram untuk model dinamisnya. View ini digunakan untuk perancang
(designer) dan pengembang (developer).
4. Component View
Mendeskripsikan
implementasi dan ketergantungan modul. Komponen yang merupakan tipe lainnya
dari code modul diperlihatkan dengan struktur dan ketergantungannya
juga alokasi sumber daya komponen dan informasi administrative lainnya.
View ini digambarkan dalam component view dan digunakan untuk
pengembang (developer).
5. Concurrency View
Membagi
sistem ke dalam proses dan prosesor. View ini digambarkan dalam diagram
dinamis (state, sequence, collaboration, dan activity diagrams) dan
diagram implementasi (component dan deployment diagrams) serta digunakan
untuk pengembang (developer), pengintegrasi (integrator), dan penguji (tester).
6. Deployment View
Mendeskripsikan
fisik dari sistem seperti komputer dan perangkat (nodes) dan bagaimana
hubungannya dengan yang lain. View ini digambarkan dalam deployment
diagrams dan digunakan untuk pengembang (developer), pengintegrasi
(integrator), dan penguji (tester).
Aplikasi StarUML :
STARUML sering digunakan untuk membuat alur atau proses suatu prosedur program yang ingin dibuat dengan cara menggambarkan model perangkatnya. Didalam STARUML terdapat bagian-bagian utama dari UML yaitu view, diagram, model element, dan general mechanism. Selain itu juga terdapat diagram-diagram yg sering digunakan, yaitu :
a. Use Case Diagram
Use case diagram adalah abstraksi dari interaksi antara system dan actor. Dalam use case diagram ini menggunakan actor sebagai awal pemula dan seterusnya dilakukan dengan use case yang dapat diisi dengan proses-proses yang sedang dilakukan. use case diagram memfasilitasi komunikasi diantara analis dan pengguna serta antara analis dan client.
b. Class Diagram
Class diagram digunakan untuk mengelompokkan hal-hal inti dari setiap proses yang ingin dilakukan. Semua proses di masukkan ke dalam tiap-tiap class dan saling dihubungkan pada class-class lainnya yang saling berhubungan.
c. Component Diagram
Component software merupakan bagian fisik dari sebuah system, karena menetap di komputer tidak berada di benak para analis. Komponent merupakan implementasi software dari sebuah atau lebih class. Komponent dapat berupa source code, komponent biner, atau executable component.
d. Deployment Diagram
Deployment menggambarkan software-software yang digunakan dalam membuat suatu program yang nanti dituliskan pada tiap-tiap node dan dihubungkan pada masing-masing node.
e. State Diagram
Menggambarkan semua kondisi dari suatu object dari suatu class dan keadaan. Diawali dengan intialstate sebagai diawal dan diakhiri dengan finalstate. Stateclass hanya digambarkan untuk beberapa object saja.
f. Sequence Diagram
Sequence diagram digunakan untuk menggambarkan menggunakan classifierrole untuk menentukan actor dan bagian - bagiannya menggunakan message untuk menyampaikan pesan.
g. Collaboration Diagram
Collaboration diagram menggunakan object sebagai tempat pertukaran pesan dan dihubungkan dengan menggunakan forwardstimulus. Jika penekannya pada waktu atau urutan gunakan sequence diagrams, tapi jika penekanannya pada konteks gunakan collaboration diagram.
h. Activity Diagram
Menggambarkan alur dari aktifitas. Dideskripsikan menggunakan intialstate dan diakhiri menggunakan finalstate. Jika ada pilihan menggunakan synchronization.
i. Conceptual Diagram
Untuk memodelkan konsep-konsep yang ada di dalam aplikasi.
j. Object Diagram
Untuk memodelkan struktur object. Pada object diagram digambarkan hubungan antar elemen dalam model, tapi dengan memakai objeknya, bukan class. Class ialah kumpulan dari objek-objek yang memiliki attribute, behaviour atau operation yang sama.
k. Interaction Overview
Diagram menunjukan layout dari activity diagram untuk memodelkan alur dari logic dalam sekumpulan interaksi.
Tujuan Penggunaan UML
1. Menyatukan praktek-praktek terbaik yang terdapat dalam
pemodelan.
2. Memberikan bahasa pemodelan yang bebas dari berbagai
bahas pemrograman dan proses rekayasa. 3. Memberikan model yang siap pakai, bahsa pemodelan
visual yang ekspresif untuk mengembangkan dan saling
menukar model dengan mudah dan dimengerti secara umum.
4. UML bisa juga berfungsi sebagai sebuah (blue print) cetak
biru karena sangat lengkap dan detail. Dengan cetak biru ini
maka akan bias diketahui informasi secara detail tentang
coding program atau bahkan membaca program dan
menginterpretasikan kembali ke dalam bentuk diagram
(reserve enginering).
Aplikasi StarUML :
STARUML sering digunakan untuk membuat alur atau proses suatu prosedur program yang ingin dibuat dengan cara menggambarkan model perangkatnya. Didalam STARUML terdapat bagian-bagian utama dari UML yaitu view, diagram, model element, dan general mechanism. Selain itu juga terdapat diagram-diagram yg sering digunakan, yaitu :
a. Use Case Diagram
Use case diagram adalah abstraksi dari interaksi antara system dan actor. Dalam use case diagram ini menggunakan actor sebagai awal pemula dan seterusnya dilakukan dengan use case yang dapat diisi dengan proses-proses yang sedang dilakukan. use case diagram memfasilitasi komunikasi diantara analis dan pengguna serta antara analis dan client.
b. Class Diagram
Class diagram digunakan untuk mengelompokkan hal-hal inti dari setiap proses yang ingin dilakukan. Semua proses di masukkan ke dalam tiap-tiap class dan saling dihubungkan pada class-class lainnya yang saling berhubungan.
c. Component Diagram
Component software merupakan bagian fisik dari sebuah system, karena menetap di komputer tidak berada di benak para analis. Komponent merupakan implementasi software dari sebuah atau lebih class. Komponent dapat berupa source code, komponent biner, atau executable component.
d. Deployment Diagram
Deployment menggambarkan software-software yang digunakan dalam membuat suatu program yang nanti dituliskan pada tiap-tiap node dan dihubungkan pada masing-masing node.
e. State Diagram
Menggambarkan semua kondisi dari suatu object dari suatu class dan keadaan. Diawali dengan intialstate sebagai diawal dan diakhiri dengan finalstate. Stateclass hanya digambarkan untuk beberapa object saja.
f. Sequence Diagram
Sequence diagram digunakan untuk menggambarkan menggunakan classifierrole untuk menentukan actor dan bagian - bagiannya menggunakan message untuk menyampaikan pesan.
g. Collaboration Diagram
Collaboration diagram menggunakan object sebagai tempat pertukaran pesan dan dihubungkan dengan menggunakan forwardstimulus. Jika penekannya pada waktu atau urutan gunakan sequence diagrams, tapi jika penekanannya pada konteks gunakan collaboration diagram.
h. Activity Diagram
Menggambarkan alur dari aktifitas. Dideskripsikan menggunakan intialstate dan diakhiri menggunakan finalstate. Jika ada pilihan menggunakan synchronization.
i. Conceptual Diagram
Untuk memodelkan konsep-konsep yang ada di dalam aplikasi.
j. Object Diagram
Untuk memodelkan struktur object. Pada object diagram digambarkan hubungan antar elemen dalam model, tapi dengan memakai objeknya, bukan class. Class ialah kumpulan dari objek-objek yang memiliki attribute, behaviour atau operation yang sama.
k. Interaction Overview
Diagram menunjukan layout dari activity diagram untuk memodelkan alur dari logic dalam sekumpulan interaksi.
l. Package Diagram
Menggambarkan
dekomposisi dari sistem menjadi unit-unit dan hubungan ketergantungannya.
m. Timing Diagram
Menyediakan perubahan statis
yang menekankan pada waktu sebenarnya.
Tujuan Penggunaan UML
1. Menyatukan praktek-praktek terbaik yang terdapat dalam
pemodelan.
2. Memberikan bahasa pemodelan yang bebas dari berbagai
bahas pemrograman dan proses rekayasa. 3. Memberikan model yang siap pakai, bahsa pemodelan
visual yang ekspresif untuk mengembangkan dan saling
menukar model dengan mudah dan dimengerti secara umum.
4. UML bisa juga berfungsi sebagai sebuah (blue print) cetak
biru karena sangat lengkap dan detail. Dengan cetak biru ini
maka akan bias diketahui informasi secara detail tentang
coding program atau bahkan membaca program dan
menginterpretasikan kembali ke dalam bentuk diagram
(reserve enginering).