2. OOA&D adalah metode object-oriented
2.27 Unified Modeling Language (UML)
UM L atau Unified Modeling Language adalah satu set konvensi pemodelan yang digunakan untuk menggambarkan atau menspesifikasikan sebuah sistem software dalam bentuk objek–objek (Whitten et al., 2004, p430). UM L bukanlah suatu metode untuk pengembangan sistem, melainkan hanya notasi yang berisi diagram standard yang digunakan untuk mengembangkan OOA&D (Object Oriented Analysis and Design).
Diagram – diagram yang terdapat pada UM L antara lain sebagai berikut :
1. Rich picture
Rich picture berisi sebuah pandangan menyeluruh dari people, object, process, structure, dan problem dalam system problem dan application domain. People
dapat berupa system developer, user, pelanggan, atau pemain lain. Object dapat berupa banyak benda seperti mesin, dokumen, lokasi, departemen, dan yang
lainnya. Process menguraikan aspek dari sebuah situasi yang berubah, tidak stabil, atau di bawah pengembangan. Secara grafik, process diilustrasikan dengan simbol panah. Structure menguraikan aspek dari sebuah situasi yang terlihat stabil atau sulit untuk diubah. Secara grafik, structure diuraikan dalam satu dari dua cara: menggambar garis antara elemen-elemen atau menempatkan elemen-elemen yang berhubungan dalam sebuah figur umum, seperti segi empat atau lingkaran.
Gambar 2.10 Rich picture
2. Class Diagram
Diagram ini menampilkan sekumpulan class, interface, dan hubungan di antara
class. Diagram ini dapat digunakan untuk menggambarkan desain statis dari
sistem. Class diagram digunakan untuk mengetahui gambaran proses statis dari sebuah sistem.
Tabel 2.7 Notasi class diagram
++ Operation() -- Attribute
Class1
Class
Class ini terbagi menjadi tiga bagian, yaitu nama class
dibagian atas, atribut di bagian tengah, serta operasi di bagian bawah.
Association
Association menggambarkan adanya hubungan antara
dua class atau lebih.
1 1..*
Multiplicity
Penempatan notasi multiplicity ini dekat akhir dari asosiasi. Simbol – simbol ini mengindikasikan sejumlah instances dari suatu class yang terhubung ke satu instances dari class lain.
Generalization
Generalization sering disebut “adalah sebuah“. Ini
mengacu pada sebuah hubungan antara dua class dimana satu class merupakan versi khusus dari yang lain.
1 *
Aggregation
Tipe khusus dari aggregation yang menunjukkan hubungan yang kuat antara the “whole” class dan the
3. Use Case Diagram
Use Case adalah sebuah pola yang menggambarkan hubungan antara actor
dengan sistem di application domain. Actor itu sendiri adalah abstraksi dari user atau sistem yang lain yang berhubungan langsung dengan sistem. (M athiassen et
al., 2000, p119). Use case diagram ini berguna untuk mengorganisasi dan
memodel operasi dari sistem.
Setelah pembuatan use case diagram, kemudian dilanjutkan dengan pembuatan
use case specification yang berisi penjelasan dari masing-masing use case.
Penjelasan dari masing-masing use case ditujukan sebagai dokumentasi mengenai apa yang dapat dilakukan oleh actor terhadap sistem. Sehingga use
case specification dapat dipahami sebagai penggambaran secara rinci dari setiap use case yang telah digambarkan dalam use case diagram.
Gambar 2.12 Use case diagram
Tabel 2.8 Notasi use case diagram
S ystem System Boundary
Adalah suatu batas yang mengelilingi use case yang menandai adanya sistem itu.
UseCase1
Use Case
M enggambarkan satu set peristiwa yang terjadi ketika aktor menggunakan suatu sistem untuk melengkapi suatu proses.
Actor1
Actors
M enggambarkan suatu peran yang berhubungan dengan sistem atau mewakili suatu peran yang dimainkan oleh suatu objek diluar.
Relationship
M enggambarkan hubungan antara actor dengan sebuah
use case dengan garis yang sederhana.
4. Statechart Diagram
Diagram ini menampilkan organisasi dari state, yang terdiri dari state,
transistion, event dan activity (M athiassen et al., 2000, p341). Diagram ini
memfokuskan pada perubahan state dari sebuah class yang dikendalikan oleh
event.
Ada beberapa notasi yang biasa digunakan dalam menggambarkan behavioral
• Sequence. Event terjadi secara berurutan atau satu per satu. Setiap state hanya ada satu event yang menuju ke state berikutnya (gambar 2.13(a)).
• Selection. Hanya ada salah satu dari beberapa event yang terjadi. Semua kemungkinan event dibuat, sehingga ada beberapa event dalam sebuah state untuk dipilih yang kemudian akan menuju ke state berikutnya (gambar 2.13(b)). • Iteration. Sebuah event terjadi nol atau lebih (berulang). Sebuah event kembali
menuju ke state awalnya, atau tidak menuju ke state berikutnya. Ada juga iterasi dimana event nya menuju ke state berikutnya, tetapi dari state tersebut kembali lagi ke state awal (gambar 2.13(c)).
Gambar 2.13 Statechart diagram
Sumber: Mathiassen et al. (2000, p90)
amount withdrawn (date, amount) account opened (date) amount deposited (date, amount)
Open
account closed (date)Gambar 2.14 Notasi dalam statechart diagram
Sumber: Mathiassen et al. (2000, p95)
5. Sequence Diagram
M enurut M athiassen et al. (2000, p266) mengemukakan bahwa sequence
diagram menunjukkan interaksi antar banyak objek. Dengan kasus yang rumit
dimana banyak fungsi yang diimplementasikan oleh sejumlah operasi, diagram ini dapat digunakan untuk menggambarkan hubungan interaksi tersebut.
Sequence diagram mendeskripsikan interaksi antar beberapa objek dalam satuan
waktu (M athiassen et al, 2000, p340). Sequence a T 1 b T 2 z Selection Iteration T a a T b z z T 1 T2 b a a Event State M ove to next state (b) (c)
Initial state Final state
Gambar 2.15 Sequence Diagram
Sumber: Mathiassen et al. (2000, p157)
6. Navigation Diagram
M enurut M athiassen et al. (2000, p344) navigation diagram merupakan
statechart diagram khusus yang berfokus pada user interface. Diagram ini
menunjukkan window–window serta transisi di antara window–window tersebut. Sebuah window dapat digambarkan sebagai sebuah state. State ini memiliki nama dan berisi gambar miniatur window. Transisi antar state dipicu oleh ditekannya sebuah tombol yang menghubungkan dua window.
Tabel 2.9 Notasi navigation diagram Window
Adalah representasi dari state. State memiliki nama dan mengandung icon.
State Transition
M erupakan perpindahan dari 2 window yang saling berhubungan.
7. Component Diagram
Diagram ini menggambarkan sekumpulan komponen dan hubungan antara komponen. Komponen adalah bagian fisik dari sebuah sistem yang dapat digantikan dan ditempatkan yang menyediakan dan menyesuaikan realisasi dari sekumpulan interface.
Gambar 2.16 Component diagram
8. Deployment diagram
M enurut M athiassen et al. (2000, p340), deployment diagram mendeskripsikan konfigurasi sistem dalam bentuk processor dan objek yang terhubung dengan
processor tersebut. Diagram ini menunjukkan sekumpulan node dan
hubungannya. Deployment diagram ini dapat digunakan untuk modeling
embedded system, modeling client / server sistem, modeling sistem terdistribusi. Node adalah elemen fisik yang muncul pada saat run time dan mewakili sumber
daya yang bersifat komputer, pada umumnya adalah memory dan kemampuan proses.
Gambar 2.17 Deployment diagram
Tabel 2.10 Notasi deployment diagram
Node1
Processor
Processor adalah sebuah unit yang dapat
membentuk proses.
Interface
Sebuah interface menggambarkan sebuah grup dari operasi yang digunakan atau dibuat oleh komponen.
Program Component
Program component adalah komponen yang
koheren yang menawarkan fasilitas – fasilitas tertentu bagi komponen lain dan dicirikan oleh sebuah interface yang dibuat dari class dan
operation yang diimplementasikan oleh
komponen tersebut.
Dependency
Suatu hubungan antara dua elemen yang mengindikasikan bahwa perubahan kepada sumber elemen dapat menyebabkan perubahan dalam target elemen.