2.2.1 Konsep Dasar UML (Unified Modeling Language)

Unduh sebagai docx, pdf, atau txt
Unduh sebagai docx, pdf, atau txt
Anda di halaman 1dari 11

2.2.

1 Konsep dasar UML (Unified Modeling


Language)
1. Definisi Unified Modeling Language (UML)

Menurut Widodo, (2011:6), “UML adalah bahasa pemodelan standar yang memiliki sintak dan
semantik”.

Menurut Nugroho (2010:6), ”UML (Unified Modeling Language) adalah bahasa pemodelan
untuk sistem atau perangkat lunak yang berparadigma (berorientasi objek).” Pemodelan
(modeling) sesungguhnya digunakan untuk penyederhanaan permasalahan-permasalahan yang
kompleks sedemikian rupa sehingga lebih mudah dipelajari dan dipahami.

Berdasarkan pendapat yang dikemukakan di atas dapat ditarik kesimpulan bahwa UML adalah
sebuah bahasa yang berdasarkan grafik atau gambar untuk menvisualisasikan,
menspesifikasikan, membangun dan pendokumentasian dari sebuah sistem pengembangan
perangkat lunak berbasis Objek (Object Oriented programming).

2. Langkah-langkah penggunaan Unified Modeling Language (UML)

Menurut Henderi (2008:6), langkah-langkah penggunaan Unified Modeling Language (UML)


sebagai berikut:

1. Buatlah daftar business process dari level tertinggi untuk mendefinisikan aktivitas dan
proses yang mungkin muncul.
2. Petakan use case untuk setiap business process untuk mendefinisikan dengan tepat
fungsional yang harus disediakan oleh sistem, kemudian perhalus use case diagram dan
lengkapi dengan requirement, constraints dan catatan-catatan lain.
3. Buatlah deployment diagram secara kasar untuk mendefinisikan arsitektur fisik sistem.
4. Definisikan requirement lain non fungsional, security dan sebagainya yang juga harus
disediakan oleh sistem.
5. Berdasarkan use case diagram, mulailah membuat activity diagram.
6. Definisikan obyek-obyek level atas package atau domain dan buatlah sequence dan/atau
collaboration untuk tiap alur pekerjaan, jika sebuah use case memiliki kemungkinan alur
normal dan error, buat lagi satu diagram untuk masing-masing alur.
7. Buatlah rancangan user interface model yang menyediakan antar muka bagi pengguna
untuk menjalankan skenario use case.
8. Berdasarkan model-model yang sudah ada, buatlah class diagram. Setiap package atau
domian dipecah menjadi hirarki class lengkap dengan atribut dan metodenya. Akan lebih
baik jika untuk setiap class dibuat unit test untuk menguji fungsionalitas class dan
interaksi dengan class lain.
9. Setelah class diagram dibuat, kita dapat melihat kemungkinan pengelompokkan class
menjadi komponen-komponen karena itu buatlah component diagram pada tahap ini.
Juga, definisikan test integrasi untuk setiap komponen meyakinkan ia bereaksi dengan
baik.
10. Perhalus deployment diagram yang sudah dibuat. Detilkan kemampuan dan requirement
piranti lunak, sistem operasi, jaringan dan sebagainya. Petakan komponen ke dalam node.
11. Mulailah membangun sistem. Ada dua pendekatan yang tepat digunakan : Pendekatan
use case dengan mengassign setiap use case kepada tim pengembang tertentu untuk
mengembangkan unit kode yang lengkap dengan test dan pendekatan komponen yaitu
mengassign setiap komponen kepada tim pengembang tertentu.

3. Konsep Pemodelan Menggunakan UML

Menurut Nugroho (2010:10), Sesungguhnya tidak ada batasan yag tegas diantara berbagai
konsep dan konstruksi dalam UML, tetapi untuk menyederhanakannya, kita membagi sejumlah
besar konsep dan dalam UML menjadi beberapa view. Suatu view sendiri pada dasarnya
merupakan sejumlah konstruksi pemodelan UML yang merepresentasikan suatu aspek tertentu
dari sistem atau perangkat lunak yang sedang kita kembangkan. Pada peringkat paling atas, view-
view sesungguhnya dapat dibagi menjadi tiga area utama, yaitu: klasifikasi struktural (structural
classification), perilaku dinamis (dinamic behaviour), serta pengolahan atau manajemen model
(model management).

4. Bangunan dasar Metodologi Unified Modeling Language (UML)

Menurut Nugroho (2010:117). Bangunan dasar metodologi UML menggunakan tiga bangunan
dasar untuk mendeskripsikan sistem/perangkat lunak yang akan dikembangkan, yaitu :

1. Sesuatu (things)

Ada 4 (empat) things dalam UML, yaitu:

1. Structural things merupakan bagian yang relatif statis dalam model Unified Modeling
Language (UML). Bagian yang relatif statis dapat berupa elemen-elemen yang bersifat
fisik maupun konseptual.
2. Behavioral things merupakan bagian yang dinamis pada model Unified Modeling
Language (UML), biasanya merupakan kata kerja dari model Unified Modeling
Language (UML), yang mencerminkan perilaku sepanjang ruang dan waktu.
3. Grouping things merupakan bagian pengorganisasi dalam Unified Modeling Language
(UML). Dalam penggambaran model yang rumit kadang diperlukan penggambaran paket
yang menyederhanakan model. Paket-paket ini kemudian dapat didekomposisi lebih
lanjut. Paket berguna bagi pengelompokkan sesuatu, misalnya model-model dan
subsistem-subsistem.
4. Annotational things merupakan bagian yang memperjelas model Unified Modeling
Language (UML) dan dapat berupa komentar-komentar yang menjelaskan fungsi serta
ciri-ciri setiap elemen dalam model Unified Modeling Language (UML).

2. Relasi (Relationship)
Ada 4 (empat) macam relationship dalam Unified Modeling Language (UML), yaitu:

1. Ketergantungan merupakan hubungan dimana perubahan yang terjadi pada suatu elemen
mandiri (independent) akan mempengaruhi elemen yang bergantung padanya elemen
yang tidak mandiri (dependent).
2. Asosiasi merupakan apa yang menghubungkan antara objek satu dengan objek lainnya,
bagaimana hubungan suatu objek dengan objek lainnya. Suatu bentuk asosiasi adalah
agregasi yang menampilkan hubungan suatu objek dengan bagian-bagiannya.
3. Generalisasi merupakan hubungan dimana objek anak (descendent) berbagi perilaku dan
struktur data dari objek yang ada diatasnya objek induk (ancestor). Arah dari atas ke
bawah dari objek induk ke objek anak dinamakan spesialisasi, sedangkan arah
berlawanan sebaliknya dari arah bawah ke atas dinamakan generalisasi.
4. Realisasi merupakan operasi yang benar-benar dilakukan oleh suatu objek.

5. Jenis-jenis diagram UML (Unified Modeling Language)

Menurut Henderi (2008:5), Berikut ini adalah definisi mengenai 5 diagram UML:

1. Use Case Diagram secara grafis menggambarkan interaksi antara sistem, sistem
eksternal dan pengguna. Dengan kata lain use case diagram secara grafis
mendeskripsikan siapa yang akan menggunakan sistem dan dalam cara apa pengguna
(user) mengharapkan interaksi dengan sistem itu. Use case secara naratif digunakan
untuk secara tekstual menggambarkan sekuensi langkah-langkah dari setiap interaksi.
2. Class Diagram menggambarkan struktur object sistem. Diagram ini menunjukkan class
object yang menyusun sistem dan juga hubungan antara class object tersebut.
3. Sequence Diagram secara grafis menggambarkan bagaimana objek berinteraksi dengan
satu sama lain melalui pesan pada sekuensi sebuah use case atau operasi.
4. State Chart Diagram digunakan untuk memodelkan behaviour objek khusus yang
dinamis. Diagram ini mengilustrasikan siklus hidup objek berbagai keadaan yang dapat
diasumsikan oleh objek dan event-event (kejadian) yang menyebabkan objek beralih dari
satu state ke state yang lain.
5. Activity Diagram secara grafis digunakan untuk menggambarkan rangkaian aliran
aktivitas baik proses bisnis maupun use case. Activity diagram dapat juga digunakan
untuk memodelkan action yang akan dilakukan saat sebuah operasi dieksekusi, dan
memodelkan hasil dari action tersebut.
State Machine Diagram
1. Pengertian State Machine Diagram
Menggambarkan transisi dan perubahan keadaan (dari satu state ke state lainnya) suatu obyek
pada sistem sebagai akibat dari stimulans yang diterima.
State Machine Diagram Untuk memodelkan behavior/methode (lifecycle) sebuah kelas atau
object Memperlihatkan urutan kejadian sesaat (state) yang dilalui sebuah object, transisi dari
sebuah state ke state lainnya.

2. Simbol-simbol State Machine Diagram


3. Contoh State Machine Diagram
Pengertian
State Machine Diagram adalah teknik yang umum digunakan untuk menggambarkan behaviour
sebuah sistem. Hal ini digunakan untuk membantu analis, perancang dan pengembang untuk
memahami perilaku obyek pada sistem.

Atau pada sumber ini http://www.scribd.com/doc/44031853/State-Machine-Diagram State


Machine Diagram (Statechart diagram in versi 1.x) adalah Untuk memodelkan behavior/methode
(lifecycle) sebuah kelas atau object dan memperlihatkan urutan kejadian sesaat (state) yang
dilalui sebuah object,transisi dari sebuah state ke state lainnya

Simbol
Simbol UML untuk state chart diagram adalah segiempat yang tiap pojoknya dibuat rounded.
Titik awalnya menggunakan lingkaran solid yang diarsir dan diakhiri dengan mata. UML juga
memberi pilihan untuk menambahkan detil ke dalam simbol tersebut dengan membagi 3 area
yaitu nama state, variabel dan aktivitas. State variabel seperti timer dan counter yang
kadangkala sangat membantu.

Activity terdiri atas events dan action, tiga hal yang sering
digunakan dalam activity adalah:
1. Entry = Apa yang terjadi ketika sistem masuk ke state
2. Exit = Apa yang terjadi ketika sistem meninggalkan state
3. Do = Apa yang terjadi ketika sistem ada di state

State, Event, Transition


Statechart diagram menampilkan state-state yang mungkin dari sebuah obyek, event yang bisa
dideteksi dan respon atas eventevent tersebut. Secara umum, pendeteksian sebuah event dapat
menyebabkan sebuah obyek bergerak dari satu state ke state yang lain yang disebut dengan
transition.Contoh :
Label pada transisi memiliki dua bagian yang dipisahkan dengan garis miring. Yang pertama
adalah nama dari peristiwa yang memicu transisi. Yang kedua adalah nama dari suatu tindakan
yang akan dilakukan setelah transisi telah dipicu. Properties dari Gambar Diagram sebuah
PINTU PUTAR di atas adalah sebagai berikut:

 Jika pintu putar dalam keadaan terkunci, dan Coin dimasukkan, maka transisi
pintu putar keUnlocked state, dan tindakan Aktifkan dilakukan.
 Jika pintu putar dalam keadaan unlocked, setelah berhasi dibuka, maka transisi
pintu putar ke Lock state, dan tindakan Lock dilakukan.

Sebuah state machine diagram mempunyai :


• state (kejadian sesaat) are represented by the values of attributes of an object
• State digambarkan dengan bentuk Data Kosong
• “Black Hole” states is state has transition into it but none out
• Miracle states is state has transition out of it but none
• Initial state / creation state dengantanda untuk memulai sebuah state diagram ( in western culture
people read from left to right, top to bottom, starting in the top – left corner
• Composite States
a. Kumpulan dari beberapa state yang yang setidaknya dalam sebuah region
b. Orthogonal State, jenis composite state yanglebih dari satu region
• Submachine State
a. Sejenis composite state yang isinya didefinisikan oleh state machine lain.
b. State machine yang berisi submachine state disebut “containing state machine.
c. Sebuah state yang dihubungkan dengan machine lainnya.
d. Dihubungkan ke satu / lebih entry point dan satu / lebih exit point

Digunakan untuk mendukung konsep encapsulation


e. Sebuah state tidak boleh mempunyai region dan submachine secara bersamaan
f. Nama state mempunyai sintaks
 Nama submachine state : referenced state machine
• Sub states
a. Sebuah state yang ada dalam sebuah region

b. Direct substate, sub state yang tidak berisi state lain


c. indirect substate, sub state yang berisi state lain
• region ( kelompok state )
a. dipisahkan dengan garis terputus, yang setiap region boleh mempunyai nama yang optional
b. sebuah state tidak boleh mempunyai region dan sub machine secarah bersamaan
• Transition
a. Digambarkan dengan tanda anak panah
b. Progressions from one states to another, will be triggered by an event
 Transition adalah hasil dari methode yang menyebabkan perubahan state, walaupun
tidak semua
methode menyebabkan perubahan state
 Event bisa dituliskan dengan past tense
 Event menyebabkan sebuah object berpindah dari satu state ke state lain
 Guard, condition that nust be true for the transition to be tiggered
 Guard harus konsisten dan tidak overlap
 Guard harus lengkap logikanya
 Mehode dijalankan. Ketika object memasuki state diindikasikan dengan methode
bernama entry() dan
ketika object keluar state diindikasikan dengan methode bernama exit()
 Methode menyebabkan perubahan disebuah state, bisa juga tidak
k. Join, menggabungkan beberapa transition menjadi sebuah transition
l. Fork, memecah sebuah transition menjadi beberapa transition yang berkondisi AND (transition
harus
dilewati semuanya).
• Junction
Menggabungkan sebuah / beberapa trasition dan memecahnya menjadi sebuah / beberapa
trasition yang berkondisi AND ( transition harus dilewati semuanya ).
Dimungkinkan transition ke sebuah state yang berisi beberapa state yang disebut state list
• Choice, mengkondisikan sebuah transition menjadi sebuah / beberapa transition, yang hanya
dipilih salah satu transition ( choice ).
o Digunakan lambang diamond
o Operand dapat diletakkan di dalam diamond atau pada transition
• Entry point dilambangkan sebuah lingkaran kecil yang ditaruh pada pinggiran state ( bisa di
dalam bisa juga di luar ), dan berguna sebagai sub machine state.

• Exit point dilambangkan sebuah lingkaran kecil bersilang yang ditaruh pada pinggiran state (
bisa juga di dalam atau di luar ), dan berguna sebagai submachine state.
State Machine Diagram ada 2 jenis
> Behavioral State machines
o Merupakan state machine diagram umumnya
o Digunakan untuk mendefinisikan perilaku sebuah object
> Protocol State Machine
o Digunakan untuk penggunaan protocol pada sebuah system
o Dapat didefinisikan ke spesifik Protocol State Machine atau Behavioral State Machines
o Didefinisikan sebagai diagram context ( global overview )
o Notasi yang digunakan sama dengan Behavioral State Machines dengan penambahan kata (
protocol )
o Tidak adanya internal activity seperti entry, exit, do
o Transition pada Protocol State Machine harus menggunakan Protocol Transition
o Protocol Transition
 Sintaks : [pre condition] event / [post condition]
 Precondition atau postcondition adalah guard ( Guard is condition that must be true for
the transition to
be triggered )
 Precondition, kondisi sebelum transition
 Postcondition, kondisi setelah transition

Dependencies
 Dimodelkan dengan garis terputus dengan panah terbuka
 Gambarkan dependencies dari kiri ke kanan

Inheritance
Inheriting / child component diletakkan di bawah parent component, dengan arah panah menuju ke
parent component Dimodelkan dengan garis dengan panah tertutup

Interface Component Diagram


Interface adalah kumpulan > =1 methode dan > = 0 attribute yang dapat dipakai pada class tanpa
menjadi behavior suatu class. Jenis interface ada 2 macam yaitu : Provide, digambarkan dengan
bentuk lollipop pada UML 1. * bisa juga digambarkan dengan garis terputus dengan panah
tertutup. Required, digambarkan dengan bentuk socket. Penggambaran interfaces dapat juga
dilakukkan dengan menambah bagian.

Port
Adalah bentuk object yang menjelaskan interaksi antara object dan lingkungannya. Digambarkan
sebagai kotak kecil di pinggiran component. Assembly connector penghubung antara 2 atau
lebih component dimana sebuah atau beberapa component provides interfaces dan component
lain required interfaces. (Greg - 1499)

Anda mungkin juga menyukai