UML (Unified Modelling Language) adalah bahasa pemodelan visual standar untuk sistem berorientasi objek yang memungkinkan pemodelan, spesifikasi, konstruksi dan dokumentasi dari artefak sistem berorientasi objek. UML terdiri dari diagram-diagram seperti use case diagram, class diagram, sequence diagram, dan lainnya untuk membantu pemodelan sistem.
2. PENGERTIAN UML (UNIFIED
MODELLING LANGUAGE)
• Unified Modelling Language (UML) adalah salah
satu alat bantu yang sangat handal di dunia
pengembangan sistem yang berorientasi obyek.
• Hal ini disebabkan karena UML menyediakan
bahasa pemodelan visual yang memungkinkan
bagi pengembang sistem untuk membuat cetak
biru atas visi pengembang dalam bentuk yang
baku, mudah dimengerti serta dilengkapi
dengan mekanisme yang efektif untuk berbagi
(sharing) dan mengkomunikasikan rancangan
pengembang dengan yang lain.
3. PENGERTIAN UML (UNIFIED
MODELLING LANGUAGE)
• UML merupakan kesatuan dari bahasa
pemodelan yang dikembangkan oleh Grady
Booch (metode Design Object Oriented),
Rumbaugh (metode Object Modelling
Technice/OMT) dan Ivar Jacobson (metode
Object Oriented Software
Engineering/OOSE).
• Dari penggabungan ketiga metode ini, maka di
dalam UML membuang elemen-elemen yang
tidak praktis ditambah dengan elemen-elemen
dari metode lain yang lebih efektif dan elemen-
elemen baru yang belum ada pada metode
terdahulu, sehingga UML lebih ekspesif dan
seragam daripada metode lainnya.
4. PENGERTIAN UML (UNIFIED
MODELLING LANGUAGE)
• UML juga adalah hasil kerja dari konsorium
berbagai organisasi yang berhasil dijadikan sebagai
standar baku dalam OOAD (Object oriented
Analysis & Design).
• Paling tidak, ada tiga karakter penting yang melekat
di UML, yaitu sketsa, cetak biru dan bahasa
pemrograman.
• Sebagai sebuah sketsa, UML bisa berfungsi
sebagai jembatan dalam mengkomunikasikan
beberapa aspek dari sistem. Dengan demikian,
semua anggota tim akan mempunyai gambaran
yang sama tentang sebuah sistem.
5. PENGERTIAN UML (UNIFIED
MODELLING LANGUAGE)
• UML juga dapat berfungsi sebagai cetak
biru, ini akan bisa diketahui informasi detail
tentang coding program (forward
engineering) atau bahkan membaca
program dan menginterpretasikannya
kembali ke dalam diagram (reverse
engineering).
• Dan sebagai bahasa pemrograman, UML
dapat menterjemahkan diagram yang ada di
UML menjadi kode program yang siap untuk
dijalankan.
6. BEKERJA DENGAN MODEL UML
• UML dibagun atas model 4+1 view.
• Model ini didasarkan pada fakta bahwa
struktur sebuah sistem dideskripsikan di
dalam 5 (lima) view.
• Kelima view tersebut adalah :
a. Use Case View
b. Design View
c. Implementation View
d. Process View
e. Deployment View
7. BEKERJA DENGAN MODEL UML
a. Use Case View
Use Case View mendefinisikan perilaku
eksternal sistem. Hal ini menjadi daya
tarik bagi end user, analisis dan tester.
Pandangan ini mendefinisikan kebutuhan
sistem karena mengandung semua view
yang lain.
Itulah sebabnya Use Case View menjadi
pusat peran dan sering dikatakan yang
mendrive proses pengembangan
perangkat lunak.
8. BEKERJA DENGAN MODEL UML
b. Design View
Design View mendeskripsikan struktur logika yang
mendukung fungsi-fungsi yang dibutuhkan use
case.
Design view ini berisi tentang definisi komponen
program, class-class utama dengan spesifikasi
data, perilaku dan interaksinya.
Informasi yang terkandung di view ini, menjadi
perhatian para programmer, karena menjelaskan
secara detail bagaimana fungsionalitas sistem
akan diimplementasikan.
9. BEKERJA DENGAN MODEL UML
c. Implementation View
Implementation View menjelaskan
komponen-komponen fisik dari sistem yang
akan dibangun. Didalam view ini, terdapat
file exe, library dan database.
d. Process View
Process View berhubungan dengan hal-hal
yang berkaitan dengan concurrency di
dalam sistem.
10. BEKERJA DENGAN MODEL UML
e. Deployment View
Deployment View menjelaskan bagaimana
komponen-komponen fisik diditribusikan ke
lingkungan fisik seperti jaringan komputer
dimana sistem akan dijalankan.
Process View dan Deployment View
menunjukkan kebutuhan non fungsional
dari sistem, seperti toleransi kesalahan dan
hal-hal yang berhubungan dengan kinerja.
11. BEKERJA DENGAN MODEL UML
• Kelima view tersebut tidak berhubungan
dengan diagram yang dideskripsikan oleh
UML.
• Setiap view berhubungan dengan perspektif
tertentu dimana sistem akan diuji.
• View yang berbeda akan menekankan pada
aspek yang berbeda dari sistem yang
mewakili ketertarikan sekelompok
stakeholder tertentu.
12. BEKERJA DENGAN DIAGRAM UML
• UML mempunyai sejumlah elemen grafis yang bisa
dikombinasikan menjadi diagram.
• Diagram-diagram dalam UML adalah sebagai
berikut :
a. Use Case Diagram
b. Class Diagram
c. Sequency Diagram
d. Collaboration Diagram
e. Activity Diagram
f. Statechart Diagram
g. Component Diagram
h. Deployment Diagram
13. BEKERJA DENGAN DIAGRAM UML
a. USE CASE DIAGRAM
• Use Case menjelaskan urutan kegiatan yang
dilakukan actor dan sistem untuk mencapai
suatu tujuan tertentu. Walaupun menjelaskan
kegiatan namun use case hanya menjelaskan
apa yang dilakukan oleh actor dan sistem,
bukan bagaimana actor dan sistem
melakukan kegiatan tersebut.
• Di dalam use case terdapat teks untuk
menjelaskan urutan kegiatan yang disebut
Use Case Spesification.
14. BEKERJA DENGAN DIAGRAM UML
• Use Case Spesification tersebut terdiri dari :
a. Nama Use Case :
Mencantumkan nama dari use case yang
bersangkutan. Sebaiknya diawali dengan kata
kerja untuk menunjukkan suatu aktivitas.
Contoh : Menerima Pendaftaran Mahasiswa Baru
b. Deskripsi singkat (Brief Description) :
Menjelaskan secara singkat dalam 1 atau 2 kalimat
tentang tujuan use case ini.
Contoh : Use Case ini untuk mencatat data mahasiswa
baru. Use case ini dimulai saat mahasiswa datang
untuk mendaftarkan diri.
15. BEKERJA DENGAN DIAGRAM UML
c. Aliran Normal (Basic Flow) :
– Ini adalah jantung dari use case. Menjelaskan interaksi
antara actor dan sistem dalam keadaan normal, yaitu
segala sesuatu berjalan dengan lancar, tiada halangan
dalam mencapai tujuan dari use case ini.
– Contoh :
• Petugas mengisi data mahasiswa baru.
• Setelah selesai mengisi semua data yang
diperlukan, petugas mengkonfirmasi untuk
menyimpan data tersebut.
• Sistem menuliskan data mahasiswa ke dalam
database.
• Sistem memunculkan pesan bahwa proses
pendaftaran sukses dilakukan.
16. BEKERJA DENGAN DIAGRAM UML
d. Aliran Alternatif (Alternate Flow) :
– Merupakan pelengkap dari basic flow karena tidak ada
yang sempurna dalam setiap kali use case berlangsung.
Di dalam alternate flow ini dijelaskan apa yang akan
terjadi bila suatu halangan atau hambatan terjadi
sewaktu use case berlangsung. Ini terutama
berhubungan dengan error yang mungkin terjadi.
– Contoh :
• Bila proses penulisan ke database gagal : sistem
memunculkan pesan bahwa proses pendaftaran
gagal dilakukan,
• Bila ada data yang diperlukan belum terisi : sistem
meminta petugas untuk mengecek isian kembali,
17. BEKERJA DENGAN DIAGRAM UML
e. Special Requirement :
– Berisi kebutuhan lain yang belum tercakup
dalam aliran normal dan alternatif. Biasanya
secara tegas dibedakan bahwa basic flow dan
alternate flow menangani kebutuhan fungsional
dari use case., sementara special requierement
yang tidak berhubungan dengan kebutuhan
fungsional.
– Misalnya : kecepatan transaksi maksimum
berapa cepat dan berapa lama, serta kapasitas
akses yaitu jumlah user yang akan mengakses
dalam waktu bersamaan.
18. BEKERJA DENGAN DIAGRAM UML
f. Pre-Condition :
– Menjelaskan persyaratan yang harus
dipenuhi sebelum use-case bisa dimulai.
g. Post-Condition :
– Menjelaskan kondisi yang berubah atau
terjadi saat use case selesai dieksekusi.
19. BEKERJA DENGAN DIAGRAM UML
• Bentuk dari Use Case Diagram adalah
sebagai berikut :
UseCase1
UseCase2
Pelaku
UseCase3
20. CLASS DIAGRAM
• Class diagram menunjukkan hubungan antar class
dalam sistem yang sedang dibangun dan
bagaimana diagram tersebut saling berkolaborasi
untuk mencapai suatu tujuan.
• Class diagram umumnya tersusun dari elemen
class, interface, dependency, generalization dan
association.
• Relasi dependency menunjukkan bagaimana
ketergantungan terjadi antar class yang ada.
• Relasi generalization menunjukkan bagaimana
suatu class menjadi superclass dari class lainnya
dan class yang lain tersebut menjadi subclass dari
class tersebut.
21. CLASS DIAGRAM
• Relasi association menggambarkan navigasi antar
class, berapa banyak obyek lain bisa berhubungan
dengan satu obyek (multiplicity antar class), dan
apakah suatu class menjadi bagian dari class
lainnya(aggregation).
• Relasi agregasi adalah bentuk khusus dari asosiasi
yang menggambarkan seluruh bagian suatu obyek
merupakan bagian dari obyek yang lain.
• Class diagram juga digunakan untuk
menggambarkan desain statis dari sistem yang
sedang dibangun.
22. CLASS DIAGRAM
• Bentuk dari Class diagram yang
mempuyai hubungan asosiasi
ditunjukkan pada gambar :
23. CLASS DIAGRAM
• Bentuk dari Class diagram yang
mempuyai hubungan generalisasi
ditunjukkan pada gambar :
24. CLASS DIAGRAM
• Class diagram yang mempuyai hubungan
agregasi ditunjukkan pada gambar :
25. SEQUENCY DIAGRAM
• Sequency diagram digunakan untuk
menggambarkan perilaku pada sebuah
skenario. Diagram ini menunjukkan
sejumlah contoh obyek dan message
(pesan) yang diletakkan diantara obyek-
obyek ini di dalam use case.
• Komponen utama Sequence Diagram terdiri
atas obyek yang dituliskan dengan kotak
segiempat bernama. Message diwakili oleh
garis dengan tanda panah dan waktu yang
ditunjukkan dengan progress vertical.
26. SEQUENCY DIAGRAM
• Sequence diagram menambahkan dimensi
waktu pada interaksi diantara obyek. Pada
diagram ini participant diletakkan di atas dan
waktu ditunjukkan dari atas ke bawah.
• Life line participant diurutkan dari setiap
participant. Kotak kecil pada lifeline
menyatakan activation : yaitu menjalankan
salah satu operation dari participant.
• State bisa ditambahkan dengan
menempatkannya sepanjang life line.
27. SEQUENCY DIAGRAM
• Message (sederhana, synchronous atau
asynchronous) adalah tanda panah yang
menghubungkan suatu life line ke life line yang
lain.
• Lokasi life line dalam dimensi vertikal mewakili
urutan waktu dalam sequency diagram.
• Message yang pertama terjadi adalah yang
paling dekat dengan bagian atas diagram dan
yang terjadi belakangan adalah yang dekat
dengan bagian bawah.
28. SEQUENCY DIAGRAM
• Pada beberapa sistem, operasi bisa
dilakukan kepada dirinya sendiri. Hal ini
disebut dengan rekursif.
• Untuk melukiskannya digunakan anak
panah dari activation kembali kedirinya
sendiri, dan sebuah kotak kecil diletakkan
pada bagian atas dari activation.
30. COLLABORATION DIAGRAM
• Collaboration diagram adalah :
perluasan dari obyek diagram.
• Obyek diagram menunjukkan obyek-obyek
dan hubungan-hubungannya satu dengan
yang lain.
• Collaboration diagram menunjukkan
message-message obyek yang dikirimkan
satu sama lain.
32. ACTIVITY DIAGRAM
• Activity Diagram adalah teknik untuk
mendeskripsikan logika prosedural, proses bisnis
dan aliran kerja dalam banyak kasus.
• Activity diagram mempunyai peran seperti halnya
flowchart, akan tetapi perbedaannya dengan
flowchart adalah activity diagram bisa mendukung
perilaku paralel sedangkan flowchart tidak bisa.
• Activity Diagram menunjukkan apa yang terjadi,
tetapi tidak menunjukkan siapa yang melakukan
apa.
• Tetapi jika diinginkan, activity diagram bisa dibagi
dalam partision untuk menunjukkan siapa
melakukan apa yang juga disebut dengan
Swimlane.