Unified Modelling Language (UML) adalah sebuah bahasa yang telah menjadi
standar dalam industri untuk visualisasi, merancang dan mendokumentasikan
sistem perangkat lunak.UML menawarkan sebuah standar untuk merancang model
sebuah sistem. Dengan menggunakan UML model dapat dibuat untuk semua jenis
aplikasi perangkat lunak, dimana aplikasi tersebut dapat berjalan pada
perangkat keras, sistem operasi dan jaringan apapun serta ditulis dalam bahasa
pemrograman apapun. Tetapi karena UML juga menggunakan class dan operation
dalam konsep dasarnya, maka UML lebih cocok untuk penulisan perangkat lunak
dalam bahasa-bahasa berorientasi objek seperti C++, Java, C# atau
VB.NET.Walaupun demikian, UML tetap dapat digunakan untuk memodelkan aplikasi
prosedural dalam VB atau C.
UML
mendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan. Notasi
UML terutama diturunkan dari 3 notasi yang telah ada sebelumnya: Grady Booch
OOD (Object-Oriented Design),
Jim Rumbaugh OMT (Object Modeling
Technique) dan Ivar Jacobson OOSE (Object-Oriented Software Engineering).
UML mendefinisikan diagram-diagram berikut ini :
1. Use Case Diagram
2. Class Diagram
3. Statechart Diagram
4. Activity Diagram
5. Sequence Diagram
6. Collaboration Diagram
7. Component Diagram
8. Deployment Diagram
Use Case
Diagram
Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang
ditekankan adalah apa yang diperbuat sistem, dan bukan bagaimana. Sebuah use case merepresentasikan sebuah
interaksi antara aktor dengan sistem. Use
case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem,
meng-create sebuah daftar belanja,
dan sebagainya. Seorang atau sebuah aktor adalah sebuah entitas manusia atau
mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan
tertentu.
Use case diagram dapat membantu bila kita sedang menyusun requirement sebuah sistem, mengkomunikasikan rancangan dengan
klien, dan merancang test case untuk
semua feature yang ada pada
sistem. Sebuah use case dapat
meng-include fungsionalitas use case lain sebagai bagian dari proses
dalam dirinya. Secara umum diasumsikan bahwa use case yang di-include
akan dipanggil setiap kali use
case yang meng-include dieksekusi
secara normal. Sebuah use case dapat
di-include oleh lebih dari satu
use case lain, sehingga
duplikasi fungsionalitas dapat dihindari dengan cara menarik keluar
fungsionalitas yang common.
Class
Diagram
Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan
sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi
objek. Class menggambarkan
keadaan (atribut atau properti) suatu sistem, sekaligus menawarkan
layanan untuk memanipulasi keadaan tersebut (metoda atau fungsi).Class diagram menggambarkan struktur
dan deskripsi class, package dan
objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain. Class memiliki tiga area pokok :
1. Nama
2. Atribut
3. Metoda
Atribut dan
metoda dapat memiliki salah satu sifat berikut :
1.
Private, tidak dapat
dipanggil dari luar class yang
bersangkutan.
2.
Protected, hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak
yang mewarisinya.
3.
Public, dapat
dipanggil oleh siapa saja.
Class dapat merupakan implementasi dari sebuah interface, yaitu class abstrak
yang hanya memiliki metoda.Interface tidak
dapat langsung diinstansiasikan, tetapi harus diimplementasikan dahulu menjadi
sebuah class. Dengan demikian interface mendukung resolusi metoda
pada saat run-time. Sesuai
dengan perkembangan class model,
class dapat dikelompokkan
menjadi package. Kita juga
dapat membuat diagram yang terdiri atas package.
Hubungan
Antar Class, yaitu :
1. Asosiasi,
yaitu hubungan statis antar class.
Umumnya menggambarkan class yang
memiliki atribut berupa class lain,
atau class yang harus
mengetahui eksistensi class lain.
Panah navigability menunjukkan
arah query antar class.
2. Agregasi,
yaitu hubungan yang menyatakan bagian (“terdiri atas..”).
3.
Pewarisan, yaitu hubungan hirarkis antar class.
Class dapat diturunkan dari class lain dan mewarisi semua atribut
dan metoda class asalnya dan
menambahkan fungsionalitas baru, sehingga ia disebut anak dari class yang diwarisinya. Kebalikan
dari pewarisan adalah generalisasi.
4. Hubungan
dinamis, yaitu rangkaian pesan (message)
yang di-passing dari satu class kepada class lain. Hubungan dinamis dapat digambarkan dengan
menggunakan sequence diagram yang
akan dijelaskan kemudian.
Activity
Diagram
Activity diagram menggambarkan
berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana
masing-masing alir berawal, decision yang
mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang
mungkin terjadi pada beberapa eksekusi. Activity
diagram merupakan state diagram
khusus, di mana sebagian besar state
adalah action dan
sebagian besar transisi di-trigger oleh
selesainya state sebelumnya (internal processing). Oleh karena itu
activity diagram tidak
menggambarkan behaviour internal sebuah sistem (dan interaksi antar subsistem)
secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur
aktivitas dari level atas secara umum. Aktivitas menggambarkan proses yang
berjalan, sementara use case menggambarkan
bagaimana aktor menggunakan sistem untuk melakukan aktivitas.
Sama seperti
state, standar UML menggunakan
segiempat dengan sudut membulat untuk menggambarkan aktivitas.Decision digunakan untuk
menggambarkan behaviour pada kondisi tertentu. Untuk mengilustrasikan
proses-proses paralel (fork dan
join) digunakan titik
sinkronisasi yang dapat berupa titik, garis horizontal atau vertikal. Activity diagram dapat dibagi menjadi
beberapa object swimlane untuk
menggambarkan objek mana yang bertanggung jawab untuk aktivitas tertentu.
Sequence
Diagram
Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem
(termasuk pengguna, display,
dan sebagainya) berupa message yang
digambarkan terhadap waktu. Sequence
diagram terdiri atas dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang
terkait).
Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian
langkah-langkah yang dilakukan sebagai respon dari sebuah event untuk menghasilkan output tertentu. Diawali dari proses
dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan. Masing-masing objek, termasuk aktor,
memiliki lifeline vertikal. Message digambarkan sebagai garis
berpanah dari satu objek ke objek lainnya. Pada fase desain berikutnya, message akan dipetakan menjadi
operasi atau metoda dari class. Activation bar menunjukkan lamanya eksekusi sebuah proses,
biasanya diawali dengan diterimanya sebuah message.Untuk objek-objek yang
memiliki sifat khusus, standar UML mendefinisikan icon
khusus untuk objek boundary,
controller, dan persistent entity.
Tidak ada komentar:
Posting Komentar