BAB I PENDAHULUAN
2.11. Unified Modelling Language (UML)
2.11.3. Diagram-Diagram dalam UML
Diagram merupakan penjelasan secara grafis yang berkaitan dengan elemen-elemen dalam sistem. Diagram-diagram ini dibuat supaya model yang dibuat semakin mendekati realitas. Berikut ini merupakan tipe-tipe diagram UML yang terdapat dalam UML:
1. Use Case Diagram
Use case adalah deskripsi fungsi dari sebuah sistem dari perspektif pengguna. Use case bekerja dengan cara mendeskripsikan tipikal interaksi
antara user (pengguna) sebuah sistem dengan sistemnya sendiri melalui sebuah cerita bagaimana sebuah sistem dipakai. Urutan langkah-langkah yang menerangkan antara pengguna dan sistem disebut scenario. Setiap scenario mendeskripsikan urutan kejadian. Setiap urutan diinisialisasikan oleh orang, sistem yang lain, perangkat keras atau urutan waktu. Dengan demikian secara singkat bisa dikatakan use case adalah serangkaian yang scenario yang digabungkan bersama-sama oleh tujuan umum pengguna. Diagram use case menunjukan 3 aspek dari sistem yaitu aktor, use case dan sistem/ sub sistem boundary. Aktor mewakili peran orang, sistem yang lain atau alat ketika berkomunikasi dengan use case. Gambar 2.12 menunjukkan use case diagram.
Tabel 2.1 Use Case Diagram
Notasi Elemen Keterangan
Aktor
Mewakili setiap orang atau segala sesuatu dari bagian
external system yang berinteraksi dengan sistem. Aktor tidak selalu manusia. Tetapi juga seperti hardware dan software.
Aktor melakukan langkah-langkah dalam use case dan bisa
terlibat dalam benyak use case. Sebuah use case dapat
dilakukan oleh beberapa aktor.
Use Case
Menggambarkan perilaku sistem, menjelaskan segala hal yang diinginkan oleh pengguna dari sebuah sistem system dalam bentuk sekelompok yang memiliki suatu tujuan
bersama bagi pengguna. Use case ini diletakkan di dalam
lingkup sistem (system boundary). Use case adalah
rangkaian aksi yang dilakukan aktor dengan sistem aplikasi dan memberikan hasilnya pada aktor tertentu.
Lingkup sistem
Mempresentasikan isi dalam lingkup dari sistem termasuk nama dari isi sistem dari use case diagram.
Relationship
Use caserelationship menerangkan bagaimana use case satu
berhubunghan dengan use case lainnya dan user.
Relationship ini merupakan koneksi antar model satu elemen dengan elemen lainnya.
Generalization
Menunjukkan hubungan antara elemen yang lebih umum ke
elemen yang lebih spesifik. Dengan generalization, class
yang lebih spesifik (subclass) akan menurunkan atribut dan
operasi dari class yang lebih umum (superclass). Dengan
menggunakan notasi generalization ini, konsep inheritance
dari prinsip hirarki dapat dimodelkan.
<<include>> Include Relationship
Hubungan include atau use case dibuat antar use case baru dan use case induk yang menggunakan fungsi dari use case
baru. Hubungan ini mengambarkan bahwa suatu use case
meliputi fungsionalitas dari use case yang lainnya secara
keseluruhan. Hubungan include digambarkan dengan anak
panah menunjuk dari use case induk ke use case baru.
<<extend>>
Include Relationship
Menunjukkan beberapa kemungkinan tingkah laku di mana tingkah laku yang dijalankan pada kondisi atau syarat tertentu dipenuhi, serta beberapa aliran langkah yang berbeda yang mungkin dijalankan berdasarkan pilihan aktor.
2. Activity Diagram
Activity Diagram adalah teknik untuk mendeskripsikan logika prosedural, proses bisnis, dan aliran kerja dalam banyak kasus. Activity Diagram mempunyai peranan seperti halnya flowchart, akan tetapi perbedaannya dengan flowchart adalah activity diagram bisa mendukung perilaku paralel. Diagram ini menunjukan langkah-langkah, keputusan dan percabangan yang terjadi dengan tingkah laku dari obyek, atau dengan sebuah proses bisnis. Obyek adalah benda secara fisik atau konseptual yang ada dalam kenyataan dalam sekeliling hidup kita. Contoh dari obyek seperti hardware, software, dokumen, manusia dan bahkan juga konsep. Sebuah obyek mempunyai keadaan sesaat (state). Diagram ini digunakan untuk mempresentasikan sebuah operasi obyek dan proses bisnis. Gambar 2.13 menunjukkan contoh activity diagram.
Tabel 2.2 Activity Diagram
Notasi Elemen Keterangan
Initial state /start state
Initial state adalah state yang menunjuk ke obyek untuk memulai dari bisnis proses atau operasi obyek yang berada pada sebuah sistem.
Activity Transition
Menunjukan hubungan sebuah obyek pada
state pertama yang akan memasuki ke state
selanjutnya pada sebuah sistem.
Action state
Aktivitas yang menggambarkan tahapan
Decision /
Percabangan
Elemen yang menyediakan pilihan alur dalam
workflow. Ekspresi Boolean diletakkan pada setiap transisi yang dievaluasi ketika hanya memasuki sekali ke dalam percabangan.
Forking dan
joining
Garis sinkronisasi untuk menyeimbangkan, yang akan berarti bahwa sejumlah aliran pada
fork ini yang akan dicocokkan dengan sejumlah aliran memasuki hubungan aktivitas
state yang sesuai (corresponding join). Aktivitas berada pada aliran secara bersamaan (parallel flows) yang memasuki untuk komunikasi dengan satu sama lain.
Final state
Final state melambangkan proses akhir dari suatu activity diagram.
Gambar 2.13 Activity Diagram 3. Sequence Diagram
Squence diagram digunakan untuk menggambarkan perilaku pada sebuah skenario. Diagram ini menunjukan sejumlah contoh obyek dan message (pesan) yang diletakan di antara obyek-obyek ini di dalam use case. Komponen utama squence diagram terdiri atas obyek yang dituliskan dengan kotak segi empat bernama. Message diwakili oleh garis dengan
tanda panah dan waktu yang ditujukan dengan progress vertikal. Sequence diagram menekankan interaksi obyek yang disusun dalam suatu urutan waktu. Diagram ini secara khusus berasosiasi dengan use case. Sequence diagram menerangkan tahap demi tahap apa yang seharusnya terjadi untuk menghasilkan sesuatu di dalam use case. Tipe diagram ini sebaiknya digunakan pada awal tahap desain atau analisa, disebabkan karena kesederhanaannya dan mudah dimengerti. Sequence diagram menunjukkan interaksi antar obyek berupa message yang digambarkan terhadap perubahan waktu. Setiap obyek yang terlibat dalam sebuah use case digambarkan dengan garis putus-putus vertikal, kemudian message yang dikirim oleh obyek digambarkan dari laporan. Oleh karena itu, setelah sedikit iterasi, biasanya bagian yang telah dikembangkan akan dihentikan dan dilanjutkan dengan langkah pengembangan selanjutkan dengan garis horizontal secara kronologis dari atas ke bawah. Pada pelaksanaannya, setiap langkah saling memberikan informasi satu sama lainnya. Proses software tidak linier dan sederhana tapi memiliki urutan iterasi dari aktivitas pengembangan sampai di langkah terakhir perangkat lunak digunakan. Model yang banyak mengandung iterasi membuat sulit pihak manajemen untuk memeriksa seluruh rencana. Gambar 2.14 menunjukkan contoh sequence diagram.
Tabel 2.3 Sequence Diagram
Aktor
Mewakili setiap orang atau segala sesuatu dari bagian eksternal sistem yang berinteraksi dengan sistem. Aktor tidak selalu manusia.
Tetapi juga seperti hardware dan software.
Aktor melakukan langkah-langkah dalam use
case dan bisa terlibat dalam banyak use case.
Sebuah use case dapat dilakukan oleh
beberapa aktor.
Obyek/
Participant
Obyek diletakan di dekat bagian atas diagram dengan urutan dari kiri ke kanan. Setiap
obyek atau participant terhubung dengan
garis titik-titik yang disebut lifeline.
Sepanjang lifeline ada kotak yang disebut
activation.
>
Message
Sebuah message bergerak dari satu
participant ke participant lain dan dari satu
lifeline ke lifeline yang lain. Sebuah
participant bisa mengirim sebuat message
kepada dirinya sendiri. Sebuah message bisa
jadi simple, synchronous atau asynchronous.
Message yang simple adalah sebuah perpindahan (transfer) kontrol dari satu
participant ke participant lainnya. Jika
sebuah participant mengirimkan sebuah
message synchronous, maka jawaban atas
message tersebut akan ditunggu sebelum
diproses, sedangkan asynchronous
kebalikannya, maka jawaban atas message
tersebut tidak perlu ditunggu.
Time
Time adalah diagram yang mewakili waktu pada arah vertikal. Waktu dimulai dari atas ke bawah.
Gambar 2.14 Squence Diagram 4. Class Diagram
Class diagarm adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah obyek dan merupakan inti dari pengembangan dan desain berorientasi obyek. Class menggambarkan keadaan (atribut/ properti) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metode/ fungsi). Class biasanya digunakan untuk mendefinisikan obyek-obyek bisnis. Class-class seperti ini biasanya mendefinisikan model database dari suatu aplikasi. Atas dasar itulah class seperti ini sering disebut dengan class entity karena mewakili obyek database.
Gambar 2.15 Class Diagram
Class diagram menggambarkan struktur dan deskripsi class, package, dan obyek beserta hubungan satu sama lainnya seperti containment, pewarisan, asosiasi, dan lain-lain. Class memiliki tiga area pokok, yaitu nama, atribut dan metode. Atribut dan metode dapat memiliki salah satu sifat berikut:
a. Private, fitur ini tidak dapat dipanggil dari luar class yang bersangkutan. Fitur ini mempunyai simbol (-).
b. Protected, fitur ini hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak yang mewarisinya. Fitur ini mempunyai simbol (#).
c. Public, fitur (sebuah operation atau attribute) dapat dipanggil oleh siapa saja atau diakses oleh class manapun. Fitur ini mempunyai simbol (+).
d. Package, fitur ini hanya bisa diakses langsung oleh instance sebuah class pada package yang sama. Fitur ini mempunyai simbol (~).