2.2.3
Unfied
Modelling Language (UML)
UML adalah bahasa grafis untuk mendokumentasikan, menspesifikasikan
dan membangun sistem perangkat lunak. UML berorientasi pada objek yang
menerapkan banyak level abstraksi, tidak bergantung proses pengembangan, tidak
bergantung bahasa dan teknologi, pemaduan beberapa notasi di beragam
metodologi.
UML menyediakan beragam jenis diagram dan dapat diperluas sesuai
kebutuhan kita. Diagram adalah representasi secara grafis dari elemen-elemen
tertentu beserta hubungan-hubungannya sehingga mempermudah pemahaman terhadap
sistem.
Tujuan perancangan UML antara lain adalah:
1.
menyediakan bahasa pemodelan visual yang ekspresif dan siap pakai
untuk mengembangkan dan pertukaran model-model yang berarti;
2.
menyediakan mekanisme perluasan dan spesialisasi untuk memperluas
konsep-konsep inti;
3.
mendukung spesifikasi independen bahasa pemrograman dan proses
pengembangan tertentu;
4.
menyediakan basis formal untuk pemahaman bahasa pemodelan;
5.
mendorong pertumbuhan pemrograman yang berorientasi objek;
6.
mendukung konsep-konsep pengembangan level lebih tinggi seperti
komponen, kolaborasi, framework dan pattern.
2.2.3.1
Use Case Diagram
Diagram use case
digunakan untuk mendeskripsikan apa yang seharusnya dilakukan sistem. Diagram use case menyediakan cara
mendeskripsikan pandangan eksternal terhadap sistem dan interaksi-interaksinya
dengan dunia luar. Dengan cara ini, diagram use
case menggantikan diagram konteks pada pendekatan konvensional.
Tujuan utama pemodelan use case
adalah sebagai berikut:
1.
memutuskan dan mendeskripsikan kebutuhan-kebutuhan sistem;
2.
memberikan deskripsi jelas dan konsisten dari apa yang seharusnya
dilakukan, sehingga model use case digunakan
di seluruh proses pengembangan untuk komunikasi dan menyediakan basis untuk
pemodelan berikutnya yang mengacu sistem harus memberikan fungsionalitas yang
dimodelkan pada sistem;
3.
menyediakan basis untuk melakukan pengujian sistem yang memverifikasi sistem dan menguji apakah
sistem telah memberikan fungsionalitas yang diminta;
4.
menyediakan kemampuan melacak kebutuhan fungsionalitas menjadi
kelas-kelas dan operasi-operasi aktual di sistem. Untuk menyederhanakan
perubahan dan ekstensi ke sistem dengan mengubah model use case dan kemudian melacak use
case yang dipengaruhi perancangan dan implementasi sistem.
Diagram use case melibatkan
1.
Sistem, yaitu sesuatu yang hendak kita bangun.
2.
Aktor, yaitu entitas-entitas luar yang berkomunikasi dengan sistem.
3.
Use case adalah fungsionalitas yang dipersepsi oleh aktor.
4.
Relasi adalah hubungan antara aktor dengan use case.
Agar lebih mudah dipahami, contoh use case akan ditampilkan
pada Gambar 2.1. Berikut adalah contoh use case :
Gambar 2.1 Contoh Diagram Use Case
2.2.3.2
Class Diagram (Diagram Kelas)
Diagram kelas merupakan diagram yang paling umum dipakai di semua
pemodelan berorientasi objek. Pemodelan kelas merupakan pemodelan paling utama
pada pendekatan berorientasi objek. Pemodelan kelas menunjukkan kelas-kelas
yang ada pada sistem dan hubungan antar kelas-kelas, atribut-atribut dan
operasi-operasi pada kelas-kelas.
Diagram kelas menunjukkan aspek static
system terutama untuk mendukung kebutuhan fungsional sistem. Kebutuhan
fungsional merupakan layanan-layanan yang harus disediakan sistem kepada
pemakai. Meskipun diagram kelas serupa dengan model data, namun kelas-kelas
tidak hanya menunjukkan struktur informasi tapi juga mendeskripsikan perilaku.
Kelas pada diagram kelas dapat secara langsung diimplementasikan dalam bahasa
pemrograman berorientasi objek yang secara langsung mendukung bentukan kelas.
Kegunaan diagram kelas adalah sebagai berikut : ‘
1.
memodelkan
distribusi tanggungjawab dalam sistem;
2.
memodelkan tipe
primitif;
3.
memodelkan entitas
bukan perangkat lunak;
4.
memodelkan
kolaborasi;
5.
memodelkan skema
basis data logik.
Agar lebih mudah dipahami, contoh diagram kelas akan
ditampilkan pada Gambar 2.2. Berikut adalah contoh diagram kelas :
Gambar 2.2 : Contoh Diagram Kelas
2.2.3.3
Statechart Diagram
Statechart diagram menghubungkan kejadian-kejadian dan state. Ketika kejadian diterima, state berikutnya bergantung state
saat itu dan kejadian yang diterimanya. Perubahan state yang disebabkan kejadian disebut transisi. Statechart diagram adalah graph dimana simpul adalah state dan
busur adalah transisi berlabel nama kejadian. Diagram state menspesifikasikan barisan state
disebabkan barisan kejadian. Jika objek pada satu state dan kejadian terjadi, objek memasuki state target di ujung akhir transisi.
Statechart diagram mendeskripsikan perilaku satu kelas objek. Karena semua instan
kelas berperilaku sama, instan-instan itu mempunyai fitur-fitur yang sama. Tiap
objek mempunyai nilai-nilai atribut sendiri. Masing-masing mempunyai statenya sendiri, hasil barisan kejadian
unik yang diterimanya. Tiap objek tak bergantung objek-objek lain dan berproses
sesuai langkahnya sendiri.
2.2.3.4
Sequence
Diagram (Diagram Sekuen)
Diagram sekuen digunakan untuk memodelkan skenario penggunaan. Skenario penggunaan
adalah barisan kejadian yang terjadi selama satu eksekusi sistem. Cakupan
skenario dapat beragam, mulai
dari semua kejadian di sistem atau hanya kejadian
pada objek-objek tertentu. Skenario menjadi rekaman historis eksekusi sistem
atau gagasan eksperimen eksekusi sistem yang diusulkan.
Diagram sekuen menunjukkan objek sebagai garis vertikal dan setiap kejadian
sebagai panah horisontal dari objek pengirim ke objek penerima. Waktu berlalu
dari atas ke bawah dengan lama waktu tidak relevan. Diagram ini hanya
menunjukkan barisan kejadian, bukan pewaktuan nyata. Kecuali untuk sistem waktu
nyata yang mengharuskan konstrain baris kejadian. Gambar 2.3 adalah contoh diagram sekuen:
Gambar
2.3 Contoh Diagram
Sekuen