Diagram UML
Diagram UML
Pengertian :
Use-case diagram merupakan model diagram UML yang digunakan untuk
menggambarkan requirement fungsional yang diharapkan dari sebuah sistem. Use-case
diagram menekankan pada siapa melakukan apa dalam lingkungan sistem perangkat
lunak akan dibangun. Use-case diagram sebenarnya terdiri dari dua bagian besar; yang
pertama adalah use case diagram (termasuk gambar use case dependencies) dan use
case description.
Use-case diagram adalah gambaran graphical dari beberapa atau semua actor, use-case, dan interaksi diantara
komponen-komponen tersebut yang memperkenalkan suatu sistem yang akan dibangun. Use-case
diagram menjelaskan manfaat suatu sistem jika dilihat menurut pandangan orang yang berada di luar sistem.
Diagram ini menunjukkan fungsionalitas suatu sistem atau kelas dan bagaimana sistem tersebut berinteraksi
dengan dunia luar.
Use-case diagram dapat digunakan selama proses analisis untuk menangkap requirement system dan untuk
memahami bagaimana sistem seharusnya bekerja. Selama tahap desain, use-case diagram berperan untuk
menetapkan perilaku (behavior) sistem saat diimplementasikan. Dalam sebuah model mungkin terdapat satu atau
beberapa use-case diagram. Kebutuhan atau requirements system adalah fungsionalitas apa yang harus
disediakan oleh sistem kemudian didokumentasikan pada model use-case yang menggambarkan fungsi sistem
yang diharapkan (use-case), dan yang mengelilinginya (actor), serta hubungan antara actor dengan use-case
(use-case diagram) itu sendiri.
Use case class digunakan untuk memodelkan dan menyatakan unit fungsi/layanan yang disediakan oleh sistem
(or bagian sistem: subsistem atau class) ke pemakai.
Use case dapat dilingkupi dengan batasan sistem yang diberi label nama sistem.
Use case adalah sesuatu yang menyediakan hasil yang dapat diukur ke pemakai atau sistem eksternal.
Karakteristik :
Use cases adalah interaksi atau dialog antara sistem dan actor, termasuk pertukaran pesan dan tindakan yang
dilakukan oleh sistem.
Use cases diprakarsai oleh actor dan mungkin melibatkan peran actor lain. Use cases harus menyediakan nilai
minimal kepada satu actor.
Use cases bisa memiliki perluasan yang mendefinisikan tindakan khusus dalam interaksi atau use case lain
mungkin disisipkan.
Use case class memiliki objek use case yang disebut skenario. Skenario menyatakan urutan pesan dan
tindakan tunggal.
Keterangan:
Pasien harus membuat temu janji sebelum diberikan perawatan yang diperlukan untuk mengobati penyakit yang
dideritanya. Use-case Make Appointment meng-include fungsionalitas dari Use-case Get Treatment sebagai
bagian dari proses saat dieksekusi.
Dependency extend:
Sebuah Use-case juga dapat meng-extend Use-case lain dengan behaviour-nya sendiri. Sementara hubungan
generalisasi antar Use-case menunjukkan bahwa Use-case yang satu merupakan spesialisasi dari yang lain.
Keterangan:
Setelah pasien membuat temu janji dengan dokter, pasien ini tiba-tiba mendapat halangan sehingga tidak dapat
memenuhi janjinya. Oleh karena itu, pasien ini membatalkan janji yang sudah dibuat. Ini merupakan contoh dari
kasus extend dimana Make Appointment adalah base Use-case dan Cancel Appointment merupakan
extended Use-case.
Gambar Contoh Interaksi Antara Aktor dan Sistem (Use-case):
Keterangan
Normal course:
Rangkaian kejadian yang terjadi sesuai harapan.
Alternate course:
Mendokumentasikan kelakuan Use-case jika terjadi exception.
Pre-condition:
Kondisi yang harus dipenuhi sebelum Use-case ini dijalankan. Hal ini dapat dilakukan dengan memberikan
penjelasan singkat atau dapat pula berupa nama Use-case.
Post-condition:
Batasan pada keadaan sistem setelah Use-case ini diesksekusi dengan baik. Dapat berupa nama Use-case.
Komponen Pembentuk Use Case Diagram :
1. Actor
Pada dasarnya actor bukanlah bagian dari use case diagram, namun untuk dapat terciptanya suatu use case
diagram diperlukan beberapa actor. Actor tersebut mempresentasikan seseorang atau sesuatu (seperti perangkat,
sistem lain) yang berinteraksi dengan sistem. Sebuah actor mungkin hanya memberikan informasi inputan pada
sistem, hanya menerima informasi dari sistem atau keduanya menerima, dan memberi informasi pada sistem.
Actor hanya berinteraksi dengan use case, tetapi tidak memiliki kontrol atas use case. Actor digambarkan dengan
stick man . Actor dapat digambarkan secara secara umum atau spesifik, dimana untuk membedakannya kita
dapat menggunakan relationship.
2. Use Case
Use case adalah gambaran fungsionalitas dari suatu sistem, sehingga customer atau pengguna sistem paham dan
mengerti mengenai kegunaan sistem yang akan dibangun.
Catatan : Use case diagram adalah penggambaran sistem dari sudut pandang pengguna sistem tersebut (user),
sehingga pembuatan use case lebih dititikberatkan pada fungsionalitas yang ada pada sistem, bukan berdasarkan
alur atau urutan kejadian.
Cara menentukan Use Case dalam suatu sistem:
a. Pola perilaku perangkat lunak aplikasi.
b. Deskripsi tugas dari sebuah actor.
c. Sistem atau benda yang memberikan sesuatu yang bernilai kepada actor.
d. Apa yang dikerjakan oleh suatu perangkat lunak (*bukan bagaimana cara mengerjakannya).
Sequence Diagram
6) Untuk objek-objek yang memiliki sifat khusus, standar UML mendefinisikan icon khusus untuk
objek boundary, controller dan persistent entity.
Berikut saya berikan contoh sebuah proses menggambar Sequence Diagram. Proses bisnis yang
digambarkan adalah proses pembelian minuman yang dilakukan oleh seorang actor lewat vending
machine. Untuk mempermudah proses penggambaran maka bisnis proses ini dibagi menjadi 3 bagian
dengan scenario yang berbeda-beda.
Identifikasi dan klasifikasi obyek adalah:
Front adalah interface, register adalah controller untuk pembayaran, dan dispenser adalah controller
untuk pilihan minuman.
Scenario pertama mendemonstrasikan proses pembelian dimana:
1) Actor mengisi uang (insert input) sesuai dengan harga minuman.
2) Input ini diteruskan ke bagian register control. Oleh karena jumlah uang yang dimasukkan sama
persis dengan harga minuman, maka dari itu proses ini berhenti disini saja.
3) Selain uang, actor juga menyeleksi minuman yang diinginkan (select selection). Dispenser controller
mengirim minuman tersebut ke front.
Lihar Gambar Sequence Diagram Skenario Pertama dibawah ini:
UML
Use case diagram menggambarkan fungsionalitas yang diharapkan ari sebuh system, yang
ditekankan adalah Apa yang diperbuat system, dan bukan bagaiman. Sebuah use case
mempresentasikan sebuah interaksi antara actor dengan system . Use case menggambarkan kata kerja
sseper ti Login ke system, maintenance user dan sebagainya. Model use case seperti gambar di bawah
ini.
Actor adalah segala sesuatu yang berinteraksi langsung dengan system aplikasi komputer, seperti
orang, benda atau lainnya.
Tugas actor adalah memberikan informasi kepada rystem dan dapat memerintahkan system agar
melakukan sesuatu tugas.
Urutan langkah-langkah yang menerangkan antara pengguna dan system disebut scenario.
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.
Sebuah use case juga dapat meng-extend use case lain dengan behaviour-nya sendiri.
Sementara hubungan generalisasi antar use case menunjukkan bahwa use case yang satu merupakan
sperialisasi dari yang lain.
Pada Latihan Pertama Seorang siswa untuk menjadi anggota harus mendaftar terlebih dahulu
kepada petugas setelah mendaftar mahasiswa tersebut boleh membaca buku. Jika sudah
menjadianggota, siswa tersebut boleh meminjam buku kepada petugas perpustakaan dan
mengembalikannya sesuai dengan ketentuan tersebut apabila anggota tersebut telat mengembalikan
buku maka anggota dikenakan denda dan membayar denda tersebut kepada petugas.
Pada latihan ini seorang penjaga toko mencatat permintaan setelah itu melihat berapa banyak
permintaan yang masuk.kemudian penjaga toko harus membuat laporannya. Petugas stok menghitung
stok barang apa saja barang yang di stok kemudian membuat laporannya dan untuk petugas keuangan
yaitu menghitung barang yang sudah dijual dan pemasukannya kemudian membuat laporan keuangan.
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 jalurjalur aktivitas dari level atas secara umum.
Contoh Activity Diagram
Diagram Pendaftaran.
Logika untuk table pendaftaran yaitu Siswa harus mendaftar terlebih dahulu kepada petugas, kemudian
petugas registrasi dan membuatkan kartu untuk siswa tersebut, setelah kartu tersebut di buat maka
siswa tersebut mendapatkan kartu dan syah menjadi anggota.
Diagram Peminjaman
Untuk diagram peminjaman anggota harus membawa kartu jika ia ingin meminjam buku, kemudoan
kartu tersebut diserahkan kepasa petugas, dan petugas mengecek kartu tersebut dan mengecek buku
yang ingin di pinjam oleh anggota tersebut jika anggota tersebut memenuhi syarat-syarat untuk
meminjam buku maka anggota berhak menerima buku tersebut dan jika tidak memenuhi syaratsyaratnya maka anggota tidak menerima buku yang akan ia pinjam.
SEQUENCE DIAGRAM
Sequence diagram adalah interaksi antar objek di dalam dan di sekitar sistem (termasuk
pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu.
Sequence diagram terdiri atar dimensi vertikal (waktu) dan dimensi horizontal (objek-objek
yang terkait).
Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkahlangkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu.
Diawali dari apa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang
terjadi secara internal dan output apa yang dihasilkan.
CONTOH SEQUENCE DIAGRAM
Diagram Peminjaman
Untuk diagram peminjaman Petugas dan pinjam sebagai objek, ketika anggota mengembalikan buku
maka petugas memasukan id buku dan id siswa pada pinjaman kemudian diproses querynya, setelah
berhasil diproses maka maka sistem akan menampilkan data buku yang akan dipinjam oleh siswa
tersebut, setelah itu petugas menyimpan data pinjaman pada database pinjaman,kemudian sistem akan
memberi pesan kepada petugas bahwa data tersebut sudah berhasil disimpan.
Diagram Pengembalian
Untuk diagram pengembalian petugas dan form buku sebagai objek, jika siswa mau mengembalikan
buku maka petugad harus memasukan data buku yaitu id buku,setelah itu system akan memproses
query dan menampilkan data siswa kepada petugas, kemudian petugas menginput tanggal dimana
tanggal tersebut ketika siswa meminjam buku, dan system akan mengecek apakah siswa tersebut
terlambat atau tidak-nya untuk mengembalikan buku, jika terlambat maka system akan menampilkan
denda tersebut kepada petugas, pastinya siswa akan membayar denda tersebut dan petugas menyimpan
pengembalian buku yang di pinjam siswa pada database bahwa siswa tersebut sudah mengembalikan
buku, maka system akan menyampaikan pesan kepada petugas bahwa menyimpan pengembalian buku
sudah berhasil.
Sequence diagram biasanya digunakan untuk tujuan analisa dan desain, memfokuskan pada
identifikasi method didalam sebuah system. Sequence diagram biasanya dipakai untuk memodelkan :
Deskripsi tentang system yang ada pada sebuah / beberapa use case pada use case diagram, yang
menggambarkan hubungan antara actor dan use case diagram.
Logika dari method (operation, function atau procedure).
Logika dari service (high level method).
sequence diagram
Actor
Sebuah actor bisa diwakili dengan gambar stick figure atau sebuah kotak.
Interface
Sebuah Interface bisa diwakili dengan Gambar Boundary atau sebuah Kotak (Boxes).
Message.
- Message digunakan untuk menggambarkan hubungan antara objek yang ada dalam
sistem.
- Message digambarkan dengan garis berpanah, yang menunjukkan arah messages.
- Message yang dikirim untuk dirinya sendiri (boxes).
Return Value
- Ditampilkan dengan garis berpanah terputus, yang menggambarkan hasil dari pengiriman
- Return value digambarkan dengan arah dari kanan ke kiri.
- Messages dan return Value dapat digabungkan.
Control
Digunakan untuk menggambarkan hubungan antara interface dengan database melalui
fungsi/method yang ada dalam sistem dengan perantara message.
Database (Tempat Penyimpanan)
Digunakan untuk menggambarkan database / tempat penyimpanan yang digunakan dalam sistem