Unified Modeling Language (UML)
UML merupakan suatu bahasa
yang digunakan untuk menggambarkan suatu system informasi terutama yang berorientasi objek. Bahasa pemodelan ini telah banyak digunakan dalam rekayasa
perangkat lunak, sehingga bahasa ini telah menjadi standar dalam pembuatan dan pengembangan sistem. Blok pembangun utama UML adalah diagram. Berikut dijabarkan beberapa diagram yang sering digunakan, yaitu:
a. Uses Case Diagram
Komponen pembentuk diagram use case adalah: 1) Aktor (Actor)
Gambar 2.1. Aktor (Actor)
Aktor menggambarkan pihak-pihak yang berperan dalam sistem. Menurut Widodo (2011:18) “Perioritaskan calon actor berdasarkan pengaruhnya terhadap system yang akan dirancang”. Maka actor dibagi menjadi dua, actor primer dan actor sekunder.
Gambar 2.2. Use Case
Use case digambarkan dalam bentuk ellips/oval yang menggambarkan fungsi tertentu berupa komponen, kejadian atau kelas.
3) Hubungan (Link)/Asosiasi (Association)
Hubungan (Link) atau asosiasi/relasi antara use case dengan actor atau sebaliknya dapat digambarkan dengan garis lurus, terhubung antara dua simbol. Ada empat tipe asosiasi yang terbentuk pada diagram use case, yaitu:
a) Asosiasi antar Actor dan use case
Asosiasi/relasi antara actor dan use case digambarkan dengan menggunakan garis lurus.
Gambar 2.3. Asosiasi antara Actor dan Use Case
Dan dapat juga digambarkan dengan menggunakan anak panah terbuka jika salah satu bersifat pasif.
Gambar 2.4. Asosiasi Pasif
Gambar 2.5. Asosiasi/Relasi antara Actor dan Use Case
b) Asosiasi antara Use Case
Dimaksudkan untuk penyederhanaan model dengan cara menarik keluar sifat-sifat actor yang sama ini juga berlaku untuk use case. Di simbolkan dengan garis anak panah tertutup.
Gambar 2.6. Generalisasi (Generalisation)
2. Inklusi (Inclusion)
Hubungan/asosiasi inklusi (inclusion) dengan menggunakan garis putus-putus dengan anak panah terbuka dan terdapat keterangan ‘<<include>>’.
Gambar 2.7. Inklusi (Inclusion)
Use case inklusi merupakan use case yang harus dijalankan dan kebutuhannya sangat diperlukan terhadap use case lain.
3. Ekstensi (Extension)
Hubungan/asosiasi ekstensi (extension) dengan menggunakan garis putus-putus dengan anak panah terbuka dan terdapat keterangan ‘<<extend>>’.
Use case yang akan diekstensi seharusnya memiliki extension point dan jelas kondisinya. Extension ini merupakan perluasan fungsi. c) Generalisasi (Generalisation) antara Actor
Telah dijelaskan diatas, generalisasi digunakan untuk penyederhanaan, terhadap skenario yang sama.
Gambar 2.9 Generalisation antar Actor d) Generalisasi (Generalisation) antara Use Case
Generalisasi tidak hanya digunakan dalam symbol Actor. Namun dapat juga digunakan pada use case.
Class Diagram/Diagram Kelas merupakan inti dari pemodelan objek. Forward engineering ataupun reverse engineering memanfaatkan diagram kelas. Widodo menjelaskan (2011:37) “forward engineering merupakan proses perubahan model menjadi kode program, sedangkan reverse engineering sebaliknya.” Kelas dinyatakan dalam kotak yang terbagi menjadi tiga kompartmen utama.
Gambar 2.11. Class Symbol
Attribute dan method memiliki sifat tertentu dengan istilah lain visibility, dimana visibility ini mengindikasikan bagaimana atribut atau method terlihat dan berhubungan dengan kelas lainnya. Visibility terdapat beberapa jenis diantaranya, 1) Private, mengindikasikan bahwa atribut atau method yang hanya dapat
digunakan pada kelas itu sendiri, yang disimbolkan dengan “ - “.
2) Public, atribut atau method dengan visibility ini berarti dapat di panggil diluar kelas lainnya, deng simbol visibility “ + ”.
3) Protected, visibility ini dapat digunakan pada kelas diri sendiri dan membolehkan subclass dapat mengaksesnya, dengan simbol “ # “.
Diagram kelas juga memiliki hubungan (relationship) antara kelas lainnya. Berikut akan dijelaskan mengenai hubungan antara kelas.
1) Ketergantungan (Dependency)
Gambar 2.12. Simbol Dependency antar Kelas 2) Assosiasi (Association)
Hubungan ini dapat dibaca dengan “menggunakan” sama halnya seperti ketergantungan (dependency), namun asosiasi lebih kuat.
Gambar 2.13. Simbol Assosiation antar Kelas 3) Agregasi (Agregration)
Agregasi menjelaskan kepemilikan suatu kelas. Hubungan ini dibaca “memiliki” atau “terdiri dari”.
Gambar 2.14. Simbol Agregation antar Kelas 4) Komposisi (Composition)
Hubungan komposisi dibaca “bagian dari”. Komposisi digunakan untuk mengambil seluruh bagian hubungan.
Gambar 2.15. Simbol Composition antar Kelas 5) Generalisasi (Generalisation)
Pembacaan hubungan ini dapat disebut “adalah”, dari kelas khusus/spesifik menuju kelas yang lebih umum.
Paket/Package Diagram mengambarkannya dengan gambar persegi panjang yang terdapat tab pada kiri atas.
Gambar 2.17. Simbol Package Diagram
Menurut Widodo (2011:82) “hanya kemungkinan level element yang diimport adalah public dan private.” Jadi elemen-elemen yang ada dalam diagram paket memiliki level pengaksesan, tanda “ + “ untuk public dan “ – “ untuk private. d. Sequence Diagram
Sequence diagram (Diagram urutan) menggambarkan interaksi antar objek dan bukan memanipulasi data saat berkomunikasi. Sequence Diagram sering digunakan untuk menggambarkan sekenario atau rangkaian langkah-langkah yang dilakukan. Diagram ini digambarkan atas garis waktu secara vertikal dan objek-objek yang terkait digambarkan secara horizontal.
Menurut Widodo (2011:175) “anggota interaksi digambarkan persegi panjang yang diberi nama garis hidup (lifeline).”
Gambar 2.19. Lifeline/Objek
Gambar 2.20. Lifeline Boundary
Gambar 2.21. Lifeline Control
Gambar 2.22. Lifeline Entity
Dalam sequence diagram terdapat istilah pesan (messages). Messages merupakan komunikasi antar objek yang saling berinteraksi. Messages
digambarkan dengan garis lurus horizontal. Berikut beberapa tipe message yang sering digunakan.
1) Message Synchronous
Gambar 2.23. Message Synchronous 2) Message Asynchronous
Ditandai dengan garis berpanah terbuka.
Gambar 2.24. Message Asynchronous
3) Message Return
Dengan simbol garis putus-putus berpanah terbuka.
Gamabr 2.25. Message Return 4) Message Delete
Simbol garis panah tertutup dengan keterangan <<destroy>> dan tanda silang pada proses yang di tunjuk.
Gambar 2.26. Message Delete e. Activity Diagram
Diagram ini lebih menggambarkan proses-proses dan jalur-jalur aktifitas dari level atas secara umum.
1) Initial Node
Menggambarkan awal aktifitas, dengan simbol lingkaran berisi hitam.
Gambar 2.27. Initial Node 2) Activities/Action
Menggambarkan proses bisnis dan aksi, dengan simbol pesegi panjang tumpul.
Gambar 2.28. Activities 3) Decision Node
Menggambarkan pilihan (Decision) terhadap aksi yang terjadi, dengan simbol ketupat.
Gambar 2.29. Decision Node 4) Transition
Menggambarkan aliran aksi atau aktifitas, dengan simbol garis berpanah terbuka.
Gambar 2.30. Transition 5) Final Node
Gambar 2.31. Final node 6) Fork Node
Memiliki satu incoming transition dan banyak outgoing transition.
Gambar 2.32. Fork Node 7) Join Node
Memiliki banyak incoming transition dan satu outgoing transition.