Unified Modeling Language merupakan
salah satu alat bantu yang dapat digunakan dalam bahasa pemograman
yang berorientasi objek, saat ini UML akan mulai menjadi standar masa depan
bagi industri pengembangan sistem/perangkat lunak yang berorientasi objek sebab
pada dasarnya UML digunakan oleh banyak perusahaan raksasa seperti IBM,
Microsoft, dan sebagainya.
Definisi UML
- Unified Modeling Language merupakan metode pengembangan perangkat lunak (sistem
- informasi) dengan menggunakan metode grafis serta merupakan bahasa untuk visualisasi, spesifikasi, konstruksi serta dokumentasi [Adin05].
- Unified Modeling Language (UML) adalah bahasa yang telah menjadi standard untuk visualisasi, menetapkan, membangun dan mendokumentasikan arti suatu sistem perangkat lunak [Hend07].
- Unified Modeling Language (UML) dapat didefinisikan sebagai sebuah bahasa yang telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem perangkat lunak [Afif02].
- Unified Modeling Language (UML) merupakan standard modeling language yang terdiri dari kumpulan-kumpulan diagram, dikembangkan untuk membantu para pengembang sistem dan software agar bisa menyelesaikan tugas-tugas seperti [Joml07] :
- Spesifikasi
- Visualisasi
- Desain arsitektur
- Konstruksi
- Simulasi dan testing
- Dokumentasi
BAGIAN-BAGIAN UML
Bagian-bagian utama dari UML
adalah view, diagram, model element, dan general mechanism.
View
View digunakan untuk melihat
sistem yang dimodelkan dari beberapa aspek yang berbeda. Beberapa
jenis view dalam UML antara lain: use case view, logical view,
component view, concurrency view,dan deployment view.
- Use case view
Mendeskripsikan fungsionalitas
sistem yang seharusnya dilakukan sesuai yang diinginkan external
actors. View ini digunakan terutama untuk pelanggan, perancang (designer),
pengembang (developer), dan penguji sistem (tester).
- Logical view
Mendeskripsikan bagaimana
fungsionalitas dari sistem, struktur statis (class,
object,danrelationship ) dan kolaborasi dinamis yang terjadi
ketika object mengirim pesan ke object lain dalam suatu
fungsi tertentu. View ini digunakan untuk perancang (designer) dan
pengembang (developer).
- Component view
Mendeskripsikan implementasi dan
ketergantungan modul. Komponen yang merupakan tipe lainnya dari code
module diperlihatkan dengan struktur dan ketergantungannya juga alokasi
sumber daya komponen dan informasi administrative lainnya.View ini
digunakan untuk pengembang (developer).
- Concurrency view
Membagi sistem ke dalam proses dan
prosesor.View ini digambarkan dalam diagram dinamis (state, sequence,
collaboration, dan activity diagrams) serta digunakan untuk pengembang
(developer), pengintegrasi (integrator), dan penguji (tester).
- Deployment view
Mendeskripsikan fisik dari sistem
seperti komputer dan perangkat (nodes) dan bagaimana hubungannya dengan
lainnya.View ini digunakan untuk pengembang (developer), pengintegrasi
(integrator), dan penguji (tester).
Diagram
Sebuah diagram merupakan bagian dari
suatu view tertentu dan ketika digambarkan biasanya dialokasikan
untuk view tertentu. Adapun jenis diagram antara lain :
1. Use Case Diagram
Use case adalah abstraksi dari
interaksi antara system dan actor. Use case bekerja dengan cara mendeskripsikan
tipe interaksi antara user sebuah system dengan sistemnya sendiri melalui
sebuah cerita bagaimana sebuah system dipakai.
2. Class Diagram
Class adalah dekripsi kelompok
obyek-obyek dengan property, perilaku (operasi) dan relasi yang sama. Sehingga
dengan adanya class diagram dapat memberikan pandangan global atas sebuah
system
3. 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. Sebuah komponent berisi informasi tentang logic
class atau class yang diimplementasikan sehingga membuat pemetaan
dari logical view ke component view.
4. Deployment Diagram
Menggambarkan tata letak sebuah
system secara fisik, menampakkan bagian-bagian software yang berjalan pada
bagian-bagian hardware, menunjukkan hubungan komputer dengan perangkat (nodes)
satu sama lain dan jenis hubungannya.
5. State Diagram
Menggambarkan
semua state (kondisi) yang dimiliki oleh suatu object dari
suatu class dan keadaan yang menyebabkan state berubah.
Kejadian dapat berupa object lain yang mengirim pesan
6. Sequence Diagram
Kegunaannya untuk menunjukkan
rangkaian pesan yang dikirim antara object juga interaksi
antaraobject, sesuatu yang terjadi pada titik tertentu dalam eksekusi sistem.
7. Collaboration Diagram
Menggambarkan kolaborasi dinamis
sepertisequence diagrams. Dalam menunjukkan pertukaran
pesan, collaboration diagrams menggambarkan objectdan
hubungannya (mengacu ke konteks).
8. Activity Diagram
digunakan untuk mendeskripsikan
aktifitas yang dibentuk dalam suatu operasi sehingga dapat juga digunakan untuk
aktifitas lainnya seperti use caseatau interaksi.
Perangkat lunak yang
mendukung pembuatan diagaram UML
StarUML adalah sebuah proyek open
source untuk mengembangkan cepat, fleksibel, extensible, featureful, dan
bebas-tersedia UML / platform MDA berjalan pada platform Win32.Tujuan dari
proyek StarUML adalah untuk membangun sebuah alat pemodelan perangkat lunak dan
juga platform yang menarik adalah pengganti alat UML komersial seperti Rational
Rose, Bersama dan sebagainya
Acceleo adalah generator kode yang
mengubah model menjadi kode. Acceleo mudah digunakan dan menyediakan “dari
rak” generator (Jee,. Bersih, Php …) dan template editor untuk Eclipse.
ArgoUML adalah open source UML modeling
tool terkemuka dan termasuk dukungan untuk semua diagram UML standar
1,4. Ini berjalan pada setiap platform Java dan tersedia dalam bahasa
sepuluh. ArgoUML ditulis seluruhnya di Jawa dan menggunakan Java Kelas
Foundation.Hal ini memungkinkan ArgoUML untuk berjalan di hampir semua platform
Kesimpulan
- UML mempermudah para analis dan programmer untuk melakukan forward maupun
reverse engineering.
- UML memudahkan meta model, sehingga pembacaan alur sebuah aplikasi dapat
dipermudah.
- UML adalah notasi visual untuk menggambarkan konsep berorientasi object
yang dewasa ini menjadi standar dalam proyek berorientasi object.