Use Case diagram merupakan suatu diagram yang menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Sebuah use case dapat memrepresentasikan interaksi antara aktor dengan sistem. Use Case Diagram adalah abstraksi dari interaksi antara sistem dan aktor. Use case bekerja dengan cara mendeskripsikan tipe interaksi antara user sebuah sistem dengan systemnya sendiri melalui sebuah cerita bagaimana sebuah sistem dipakai. Use case merupakan kontruksi untk mendeskripsikan bagaimana system akan terlihat di mata user, sedangkn use case diagram memfalisitasi komunikasi di antara analis dan pengguna serta analis dan klien.
Penjelasan bagian bagian use case diagram, ada 6 tool yang terpenting pada use case diagram :
a) System
Menyatakan batasan sistem dalam relasi dengan aktor-aktor yang menggunakannya (di luar sistem) dan fitur-fitur yang harus disediakan (dalam sistem). Digambarkan dengan segi empat yang membatasi semua use case dalam
Silakan Download StarUML dari website resminya. Gunakan fasilitas pencarian untuk menemukan web tersebut.
Instalasilah StarUML di komputer Anda, sebelum melanjutkan ke materi berikut.
20 KB 1, Konsep OOAD Dalam Perancangan Aplikasi/Sistem Infomasi Modul 2, Rekayasa Perangkat Lunak
sistem terhadap pihak mana sistem akan berinteraksi. Sistem disertai label yang menyebutkan nama dari sistem, tapi umumnya tidak digambarkan karena tidak terlalu memberi arti tambahan pada diagram.
b) Actor
Actor adalah segala hal diluar sistem yang akan menggunakan sistem tersebut untuk melakukan sesuatu. Bisa merupakan manusia, sistem, atau device yang memiliki peranan dalam keberhasilan operasi dari sistem. Cara mudah untuk menemukan aktor adalah dengan bertanya hal-hal berikut: siapa yang akan menggunakan sistem? Aakah sistem tersebut akan memberikan nilai bagi aktor?
c) Use case
Mengidentifikasi fitur kunci dari sistem. Tanpa fitur ini, sistem tidak akan memenuhi permintaan user/actor. Setiap use case mengekspresikan goal dari sistem yang harus dicapai. Diberi nama sesuai dengan goal-nya dan digambarkan dengan elips dengan nama di dalamnya. Fokus tetap pada goal bukan bagaimana mengimplementasikannya walaupun use case berimplikasi pada prosesnya nanti.
Setiap use case biasanya memiliki trigger/pemicu yang menyebabkan use case memulai (misalnya, pasien mendaftar dan membuat janji baru atau meminta untuk membatalkan atau mengubah janji yang sudah ada). Terdapat 2 triger, pertama triger eksternal, seperti pelanggan memesan atau alarm kebakaran berbunyi, kedua triger temporal, seperti tanggal pengembalian buku terlewati di perpustakaan atau keterlambatan bayar sewa.
d) Assosiation
Mengidentifikasikan interaksi antara setiap aktor tertentu dengan setiap use case tertentu. Digambarkan sebagai garis antara aktor terhadap use case yang bersangkutan. Asosiasi bisa berarah (garis dengan anak panah) jika komunikasi satu arah, namun umumnya terjadi kedua arah (tanpa anak panah) karena selalu diperlukan demikian.
e) Dependency
Dependensi <<include>>
- Mengidentifikasi hubungan antar dua use case di mana yang satu memanggil yang lain.
- Jika pada beberapa use case terdapat bagian yang memiliki aktivitas yang sama maka bagian aktivitas tersebut biasanya dijadikan use case tersendiri dengan relasi dependensi setiap use case semula ke use case yang baru ini sehingga memudahkan pemeliharaan.
- Digambarkan dengan garis putus-putus bermata panah dengan notasi
<<include>> pada garis.
- Arah mata panah sesuai dengan arah pemanggilan.
Dependensi <<extend>>
- Jika pemanggilan memerlukan adanya kondisi tertentu maka berlaku dependensi <<extend>>.
- Note: konsep “extend” ini berbeda dengan “extend” dalam Java!
- Digambarkan serupa dengan dependensi <<include>> kecuali arah panah berlawanan
e) Generalization
Mendefinisikan relasi antara dua actor atau dua use case yang mana salah satunya meng-inherit dan menambahkan atau override sifat dari yang lainnya.
Penggambaran menggunakan garis bermata panah kosong dari yang meng-inherit mengarah ke yang di-inherit.
Use case diagram
Berikut ialah contoh sederhana cara membuat use case diagram dengan StarUML:
1) Buka aplikasi starUML
2) Pada tampilan awal, pilih model yang terletak pada toolbar, lalu Add Diagram dan pilih Use Case Diagram
22 KB 1, Konsep OOAD Dalam Perancangan Aplikasi/Sistem Infomasi Modul 2, Rekayasa Perangkat Lunak
Gambar 1. 1. Memulai Use Case Diagram
3) Maka tampilan toolbox pada sebelah kiri akan berubah menjadi gambar di bawah ini.
Gambar 1. 2. Toolbox use case diagram
4) Klik pada gambar aktor dan taruh kursor pada samping toolbox. Maka akan muncul gambar orang yang disebut dengan actor dan beri nama actor.
Gambar 1. 3. Pemberian nama actor
5) Selanjutnya pilih usecase pada menu toolbox, tekan tiga kali pada lembar kerja untuk membuat tiga use case dan beri nama pada setiap use case.
Gambar 1. 4. Objek Use Case
6) Untuk membuat garis hubung antara actor dan use case pilih directed association tekan kursor pada gambar actor lalu arahkan pada usecase dan lepas, maka garis akan terhubung.
7) Pastikan pada model explorer akan tersimpan nama dan use case diagram yang telah dibuat.
8) Jika telah selesai simpan file dengan cara pilih file → save as.
Activity Diagram
Activity diagram menggambarkan berbagai alur aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alur 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.
24 KB 1, Konsep OOAD Dalam Perancangan Aplikasi/Sistem Infomasi Modul 2, Rekayasa Perangkat Lunak
Berikut ini adalah simbol-simbol dari activity diagram.
Tabel 1. 1. Simbol Activity Diagram
Berikut contoh activity diagram dengan actor mahasiswa dan petugas perpustakaan.
Gambar 1. 5. Contoh activity diagram Sistem Informasi Perpustakaan
Activity diagram memodelkan workflow proses bisnis dan urutan aktivitas dalam sebuah proses. Diagram ini sangat mirip dengan flowchart karena memodelkan workflow dari satu aktivitas ke aktivitas lainnya atau dari aktivitas ke status. Menguntungkan untuk membuat activity diagram pada awal pemodelan proses untuk membantu memahami keseluruhan proses. Activity diagram juga bermanfaat untuk menggambarkan parallel behaviour atau menggambarkan interaksi antara beberapa use case.
Untuk membuat membuat activity diagram menggunakan starUML, berikut akan diuraikan secara tahap-demi tahap :
1) Pilih model -> add diagram -> activitiy diagram.
2) Selanjutnya akan muncul toolbox yang berisikan gambar atau simbol yang menjelaskan alur activity diagram.
3) Untuk membuat activity diagram diawali dengan memasukkan simbol initial state yang menunjukkan awal dari sebuah alur activity.
4) Setelah memasukkan simbol initial state pilih simbol action state, beri nama dengan cara klik dua kali pada simbol action.
5) Selanjutnya untuk menghubungkan antara simbol, menggunakan garis transition yang terletak pada toolbox.
6) Setelah membuat garis pada activity diagram terdapat simbol decision yang menjelaskan terjadi dua hasil dari sebuah alur.
7) Terakhir setelah alur selesai dalam activity wajib menggunakan simbol finalstate yang menjelaskan alur diagram telah selesai.
8) Untuk cara penyimpanan pilih File → save as dan tentukan tempat penyimpanan file.
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 atar dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait). Sequence diagram dapat digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang
26 KB 1, Konsep OOAD Dalam Perancangan Aplikasi/Sistem Infomasi Modul 2, Rekayasa Perangkat Lunak
dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu.
Diawali dari apa yang mentrigger aktivitas tersebut, 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/metoda dari class.
Sequence diagram merupakan suatu penyajian perilaku yang tersusun sebagai rangkaian langkah-langkah percontohan dari waktu ke waktu. Sequence diagram digunakan untuk menggambarkan arus pekerjaan, pesan yang sampaikan dan bagaimana elemen-elemen di dalamnya bekerja sama dari waktu ke waktu untuk mencapai suatu hasil.
Tabel 1. 2. Simbol sequence diagram
Berikut contoh sederhana membuat sequence diagram dengan starUML:
1) Pertama pilih model -> add diagram -> Sequence Diagram.
Gambar 1. 6. Menu squence diagram
2) Selanjutnya pada toolbox sequence diagram terdapat simbol untuk membuat alur diagram.
Gambar 1. 7. Toolbox squence diagram 3) Berikut adalah contoh dari sequence diagram
28 KB 1, Konsep OOAD Dalam Perancangan Aplikasi/Sistem Infomasi Modul 2, Rekayasa Perangkat Lunak
Gambar 1. 8. Contoh squence diagram
4) Cara membuat alur di atas adalah sebagai berikut:
a) Pembeli dalam alur diagram di atas menggunakan simbol object yang terletak pada toolbox.
b) Sedangkan untuk membuat garis yang menghubungkan antara object menggunakan stimulasi yang terletak pada toolbox.
c) Untuk memberikan nama pada garis klik dua kali pada garis maka akan muncul tempat untuk mengetik.
d) Dalam objek kasir terdapat garis melengkung kebawah yang menunjukkan suatu proses yang disebut setstimulasion.
5) Untuk menyimpan pilih file → save as dan pilih lokasi penyimpanan Statechart diagram
Statechart diagram menunjukkan siklus hidup dari obyek tunggal, dari saat dibuat sampai obyek tersebut dihapus. Diagram ini adalah cara tepat untuk memodelkan perilaku dinamis sebuah kelas. Statechart diagram tidak dibuat untuk setiap kelas, bahkan kadang-kadang untuk suatu proyek system informasi tidak menggunakan sama sekali. Berikut ini adalah simbol-simbol dari statechart diagram.
Tabel 1. 3. Simbol-simbol statechart diagram
Untuk menjalankan statechart diagram, dilakukan melalui menu model → statechart diagram, seperti yang ditujukan pada gambar di bawah ini.
Gambar 1. 9. Menjalankan statechart diagram Berikut ini contoh dari statechart diagram penyewaan kendaraan
30 KB 1, Konsep OOAD Dalam Perancangan Aplikasi/Sistem Infomasi Modul 2, Rekayasa Perangkat Lunak
Gambar 1. 10. Contoh statechart diagram
1) Seorang peminjam yang akan meminjam akan mengisi form peminjaman.
2) Sistem akan megecek keadaan barang. Barang tersebut tersedia apa tidak, atau barang tersebut dapat di pinjam atau tidak.
3) Setelah barang tersedia, sistem akan memvalidasi persetujuan peminjaman barang dan menyerahkan barang kepada peminjam.
4) Sistem juga akan mencari informasi tentang barang yang akan dipinjam, maka akan dilakukan permintaan akan informasi barang.
5) Jika informasi yang diterima masih kurang, akan dilakukan permintaan ulang sampai seluruh informasi yang dibutuhkan didapatkan.
6) Saat informasi sudah cukup, informasi tersebut akan diserahkan kepada peminjam barang tersebut.
Deployment diagram
Deployment diagram merupakan gambaran proses-proses berbeda pada suatu sistem yang berjalan dan bagaimana relasi di dalamnya. Hal inilah yang mempermudah user dalam pemakaian sistem yang telah dibuat dan diagram tersebut merupakan diagram yang statis. Misalnya untuk mendeskripsikan sebuah situs web, deployment diagram menunjukkan komponen perangkat keras ("node") apa yang digunakan (misalnya, web server, server aplikasi, dan database server), komponen perangkat lunak ("artefak") apa yang berjalan pada setiap node
(misalnya, aplikasi web, database), dan bagaimana bagian-bagian yang berbeda terhubung (misalnya JDBC, REST, RMI).
Node digambarkan sebagai kotak, dan artefak yang dialokasikan ke setiap node digambarkan sebagai persegi panjang di dalam kotak. Node mungkin memiliki subnodes, yang digambarkan sebagai kotak nested. Sebuah node tunggal secara konseptual dapat mewakili banyak node fisik, seperti sekelompok database server. Simbol dari deployment diagram dapat dilihat pada gambar di bawah ini:
Tabel 1. 4. Simbol deployment diagram
Untuk menjalankan deployment diagram, dilakukan melalui menu model → deployment diagram pada starUML, seperti yang ditunjukkan pada Gambar di bawah ini.
32 KB 1, Konsep OOAD Dalam Perancangan Aplikasi/Sistem Infomasi Modul 2, Rekayasa Perangkat Lunak
Gambar 1. 11. Memulai Deployment Diagram Contoh deployment diagram
Gambar 1. 12. Contoh deployment diagram Collaboration Diagram
Kolaborasi diagram atau collaboration diagram adalah suatu diagram yang memperlihatkan/menampilkan pengorganisasian interaksi yang terdapat disekitar objek (seperti halnya sequence diagram) dan hubungannya terhadap yang lainnya.
Berikut ini simbol-simbol yang ada pada kolaborasi diagram.
Tabel 1. 5. Simbol-simbol collaboration diagram
Contoh dari collaboration diagram
Gambar 1. 13. Contoh collaboration diagram
34 KB 1, Konsep OOAD Dalam Perancangan Aplikasi/Sistem Infomasi Modul 2, Rekayasa Perangkat Lunak
Componen Diagram
Komponen adalah bagian fisik atau replaceable dari sistem yang bersesuaian dan menyediakan realisasi dari sekumpulan interface. Component diagram menunjukkan organisasi dan ketergantungan antar komponen Component diagram tidak hanya penting untuk visualisasi, spesifikasi, dan dokumentasi, tapi juga mengembangkan executable system.
Berikut ini adalah simbol-simbol yang terdapat dalam component diagram Tabel 1. 6. Simbol component diagram
Untuk menjalankan dari starUML, dapat diakses melalui menu Model → componen diagram, seperti yang ditunjukkan dalam gambar di bawah ini.
Gambar 1. 14. Memulai component diagram
36 KB 1, Konsep OOAD Dalam Perancangan Aplikasi/Sistem Infomasi Modul 2, Rekayasa Perangkat Lunak
Contoh dari componen diagram
Gambar 1. 15. Contoh component diagram h. Dokumentasi Pengembangan Sistem Berorientasi Objek
Dokumentasi berisi penjelasan rinci tentang inti teknis dari rekayasa perangkat lunak yang meliputi struktur data, arsitektur program, interface dan detail prosedural
Bagian I Berisi ruang lingkup dari kerja desain.
Bagian II Berisi desain data, struktur file. Struktur dokumen adalah:ksternal dan referensi silang yang menghubungkan objek data dengan file tertentu.
Bagian III Berisi desain arsitektur.
Bagian IV dan V, berisi desain interface dan procedural
Bagian VI, berisi referensi silang yang bertujuan utnuk menetapkan bahwa semua persyaratan dipenuhi oleh desain perangkat lunak dan menunjukkan modul mana yang krites terhadap implementasi persyaratan spesifik.
Bagian VII berisi tahap pertama dari pembuatan dokumentasi pengujian.
Bagian VIII dan IX berisi data tambahan meliputi deskripsi algoritma, prosedur alternatif, data dalam bentuk tabel, kutipan dari dokumen lain, dan informasi relevan lainnya.