Anda di halaman 1dari 9

UNIFIED MODELING LANGUAGE

UML (Unified Modeling Language) adalah metode pemodelan secara visual


sebagai sarana untuk merancang dan atau membuat software berorientasi objek. Karena
UML ini merupakan bahasa visual untuk pemodelan bahasa berorientasi objek, maka
semua elemen dan diagram berbasiskan pada paradigma object oriented.
UML adalah salah satu tool / model untuk merancang pengembangan software
yang berbasis object oriented. UML sendiri juga memberikan standar penulisan sebuah
sistem blue print, yang meliputi konsep bisnis proses, penulisan kelas-kelas dalam bahasa
program yang spesifik, skema database, dan komponenkomponen yang diperlukan dalam
sistem software.
Dengan menggunakan UML kita dapat membuat model untuk semua jenis
aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem
operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun. Tetapi
karena UML juga menggunakan class dan operation dalam konsep dasarnya, maka ia
lebih cocok untuk penulisan piranti lunak dalam bahasa-bahasa berorientasi objek seperti
C++, Java, C# atau VB.NET. Walaupun demikian, UML tetap dapat digunakan untuk
modeling aplikasi prosedural dalam VB atau C.
Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax/semantik.
Notasi UMLmerupakan sekumpulan bentuk khusus untuk menggambarkan berbagai
diagram piranti lunak. Setiap bentuk memiliki makna tertentu, dan UML syntax
mendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan. Notasi UML
terutama diturunkan dari 3 notasi yang telah ada sebelumnya: Grady Booch OOD
(Object-Oriented Design), Jim Rumbaugh OMT (Object Modeling Technique), dan Ivar
Jacobson OOSE (Object-Oriented Software Engineering).

UML dibangun atas model 4+1 view

Design View Implementation

Use Case
View
Proses View Deployment
View

 Use Case View


mendefinisikan perilaku eksternal sistem
 Design View
mendefinisikan struktur logika yang mendukung fungsi-fungsi yang dibutuhkan
use case (computer program, kelas-kelas, interkasi)
 Implementation View :
menjelaskan komponen-komponen fifik dari sistem (file exe, library, database)
 Process View
berkaitan dengan concurrency di dalam sistem
 Deployment View
menjelaskan bagaimana komponen-komponen fisik didistribusikan.

Diagram - Diagram Yang Terdapat Pada UML

UML sendiri terdiri atas pengelompokkan diagram-diagram sistem menurut aspek atau
sudut pandang tertentu. Diagram adalah yang menggambarkan permasalahan maupun
solusi dari permasalahan suatu model.

Diagram UML terdiri dari :


1. Diagram Use Case
2. Diagram Class
3. Behavior Diagram
 Statechart Diagram
 Activity Diagram
 Interaction Diagram : - Sequence Diagram
- Collaboration Diagram
4. Implentation Diagram
 Component Diagram
 Deployment Diagram

1. Diagram Use Case

Diagram Use Case menggambarkan apa saja aktifitas yang dilakukan oleh suatu
sistem dari sudut pandang pengamatan luar. yang menjadi persoalan itu apa yang
dilakukan bukan bagaimana melakukannya. Diagram Use Case dekat kaitannya dengan
kejadian-kejadian. Kejadian (scenario) merupakan contoh apa yang terjadi ketika
seseorang berinteraksi dengan sistem.

Notasi Use Case

 Actor
Actor merupakan pengguna sistem, sistem yang berhubungan dengan sistem lain,
atau time/waktu

Lambang :

 Use Case
Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-
create sebuah daftar belanja, dan sebagainyayang disediakan sistem
Lambang :
 Asosiasi
Menghubungkan antara actor dengan use case
Lambang :
 Sistem
Digambarkan dengan kotak

Tipe Relasi/Asosiasi pada Use Case :


 Include
Memungkinkan 1 use case menggunakan fungsionalitas yang disediakan oleh
usecase lain
 Extends
Memungkinkan 1 use case secara optional menggunakan fungsionalitas yang
disediakan oleh use case lain.
 Generalization/inheritance antara use case
Dibuat ketika ada sebuah keadaan yang lain/perlakuan khusus Inheriting use case
dibawah base/parent use case

Contoh : Use Case Buka tabungan di bank

bukaTabungan

<<include>>
<<extends>>
Nasabah Teller
bukaInvestasi
IsiData

2. Class Diagram
Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah
objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class
menggambarkan keadaan (atribut/properti) suatu sistem, sekaligus menawarkan layanan
untuk memanipulasi keadaan tersebut (metoda/fungsi).
Class diagram menggambarkan struktur dan deskripsi class, package dan objek beserta
hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain.

Class memiliki tiga area pokok :


1. Nama (dan stereotype)
2. Atribut
3. Method (operasi)

Atribut dan metoda dapat memiliki salah satu sifat berikut :


• Private(-), tidak dapat dipanggil dari luar class yang bersangkutan
• Protected(#), hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak yang
mewarisinya
• Public(+), dapat dipanggil oleh siapa saja

Contoh :
public class Ujian {
private nilai;
public int hasil;
public void total( ) {}
protected int Rata(int n) { }
}

Bentuk :

ujian
-nilai : int
+hasil : int
+Total()
#Rata(in n : int) : int

Untuk abstract class :

Binatang {abstract}
-Jenis : String
+berkembang()

Hubungan Antar Class


1. Asosiasi, yaitu hubungan statis antar class. Umumnya menggambarkan class yang
memiliki atribut berupa class lain, atau class yang harus mengetahui eksistensi
class lain. Panah navigability menunjukkan arah query antar class.
Lambang :

2. Agregasi, yaitu hubungan yang menyatakan bagian (“terdiri atas..”) atau biasa
disebut relasi mempunyai sebuah.
Lambang :

3. Composition, yaitu sebuah kelas tidak bisa berdiri sendiri dan harus merupakan
bagian dari class yang lain, maka class tersebut memiliki relasi composition.
Lambang :

4. Dependency, yaitu hubungan yang menunjukan operasi pada suatu kelas yang
menggunakan class yang lain.
Lambang :
5. Generalisasi / Pewarisan, yaitu hubungan hirarkis antar class. Class dapat
diturunkan dari class lain dan mewarisi semua atribut dan metoda class asalnya
dan menambahkan fungsionalitas baru, sehingga ia disebut anak dari class yang
diwarisinya.
Lambang :

Multiplicity

Multiplicity pada asosiati adlah jumlah banyakna obyek sebuah class yang
berelasi dengan sebuah obyek class lain yang berasosiasi dengan class tersebut. Berikut
tabel multiplicity :

Indikator Arti Keterangan/Contoh

0..1 Kosong atau satu

0..* Kosong atau lebih

0..n Kosong atau n, n > 1 0..3

1 Hanya satu

1..* Lebih dari sama dengan satu

1..n Satu atau n, n >1 1..5

* Banyak atau Many

N Hanya N, dimana N lebih dari satu 9

n..* Lebih dari sama dengan N, N > 1 7..*

n..m Lebih dari sama dengan N dan kurang 3..10


dari sama dengan M. Dimana M dan N
lebih dari satu.
Contoh :

1. Setiap 1 rekening tabungan dapat tidak memiliki ATM atau hanya memiliki 1
ATM

rekening ATM

1 0..1

2. 1 Dosen dapat mengajar banyak mata kuliah dan 1 Mata kuliah dapat diajar 1 atau
lebih dosen.

Dosen Mata Kuliah

1..* 1..*

Contoh Class Diagram pada Pemesanan Barang

Package, Interface dan Object

Package adalah kumpulan elemen-elemen logika UML. Untuk mengatur


pengorganisasian diagram Class yang kompleks, dapat dilakukan pengelompokan kelas-
kelas berupa package (paket-paket). Gambar di bawah ini mengenai model bisnis dengan
pengelompokan kelas-kelas dalam bentuk paket-paket
Contoh :

MahlukHidup

Object diagram adalah diagram yang memberikan gambaran model instance-instance


dari sebuah class. Diagram ini digunakan untuk menggambarkan sebuah sistem dari sudut
pandang waktu tertentu.
Contoh:
Dewa : Manusia Pohon_mangga : Tumbuhan
kaki : int = 2 Jenis : String = Harum manis
MasaBuah : int = 1

Interface adalah satu set operation yang memberikan spesifikasi bebera aspek dari
prilaku dan operasi dari suatu class ke class lain.

Contoh :
Keyboard
«interface»
-jmlTombol : int MesinTik
+ctrl() +tekanTombol()
+alt()

3. Statechart Diagram

Statechart atau biasa disebut dengan state diagram digunakan untuk


mendokumentasikan beragam kondisi atau keadaan yang terjadi terhadap sebuah class
dan kegiatan apa saja yang dapat merubah keadaan/kondisi tersebut.
Pada umumnya statechart diagram menggambarkan class tertentu (satu class dapat
memiliki lebih dari satu statechart diagram).
Transisi antar state umumnya memiliki kondisi guard yang merupakan syarat
terjadinya transisi yang bersangkutan.
Action ( aktifitas: menjalankan atau membuat state berubah) yang dilakukan sebagai
akibat dari event ( penyebab terjadinya perubahan ).
Kategori action :
1. Entry : apa yang terjadi ketika system memasuk state
2. Do : apa yang terjadi ketika system berada dalam state
3. Exit : apa yang terjadi ketika system meninggalkan state
Notasi Pada statechart :
1. Start State 3. End State

2. State 4. Transition

State1

Contoh :

4. Diagram Sequence

Diagram Class dan diagram Object merupakan suatu gambaran model statis.
Namun ada juga yang bersifat dinamis, seperti Diagram Interaction. Diagram sequence
merupakan salah satu diagram Interaction yang menjelaskan bagaimana suatu operasi itu
dilakukan; message (pesan) apa yang dikirim dan kapan pelaksanaannya. Diagram ini
diatur berdasarkan waktu. Obyek-obyek yang berkaitan dengan proses berjalannya
operasi diurutkan dari kiri ke kanan berdasarkan waktu terjadinya dalam pesan yang
terurut.

Notasi pada diagram sequence :


1. Object
Merupakan instance class dan dituliskan tersusun secara horizontal.
Simbol :
: Object
2. Actor
Actor juga dapat berkomunikasi dengan object.
Simbol :

3. Lifeline
Mengindikasikan keberadaan sebuah obyek dalam basis waktu.
Simbol :

4. Activation
Mengindikasikan sebuah obyek yang melakukan sebuah aksi
Simbol :

5. Message
Mengindikasikan komunikasi antar obyek.
Simbol :

Contoh , diagram sequence yang menggambarkan sistem mesin minuman otomatis

front register Dispenser

insert(input)

Select(selection) send(input)
user
send(input)

Deliver(selection)

Anda mungkin juga menyukai