A. Pengertian UML
Unified
Modeling Language (UML) adalah sebuah bahasa yang
berdasarkan grafik/gambar untuk memvisualisasi, menspesifikasikan, membangun,
dan pendokumentasian dari sebuah sistem pengembangan software berbasis OO (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. UML adalah salah satu
tool / model untuk merancang pengembangan software yang berbasis object
oriented. UML sebagai sebuah bahasa yang memberikan vocabulary dan tatanan
penulisan kata-kata dalam ‘MS Word’ untuk kegunaan komunikasi. Sebuah bahasa
model adalah sebuah bahasa yang mempunyai vocabulary dan konsep tatanan /
aturan penulisan serta secara fisik mempresentasikan dari sebuah sistem.
UML tidak hanya
merupakan sebuah bahasa pemograman visual saja, namun juga dapat secara
langsung dihubungkan ke berbagai bahasa pemograman, seperti JAVA, C++, Visual
Basic, atau bahkan dihubungkan secara langsung ke dalam sebuah object-oriented
database. Begitu juga mengenai pendokumentasian dapat dilakukan seperti;
requirements, arsitektur, design, source code, project plan, tests, dan
prototypes. Untuk dapat memahami UML membutuhkan bentuk konsep dari sebuah
bahasa model, dan mempelajari 3 (tiga) elemen utama dari UML seperti building
block, aturan-aturan yang menyatakan bagaimana building block diletakkan secara bersamaan, dan beberapa mekanisme
umum (common).
Building blocks.
Tiga macam yang terdapat dalam building block
adalah:
1)
Benda/Things, adalah
abstraksi yang pertama dalam sebuah model
2)
Hubungan/Relationships,
sebagai alat komunikasi dari benda-benda,
3)
Bagan/Diagrams. Sebagai
kumpulan / group dari benda-benda/things.
B. Diagram UML
1. Use
Case Diagram
Use
case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem.
Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”.
Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem.
Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem,
meng-create sebuah daftar belanja, dan sebagainya. Seorang/sebuah aktor adalah sebuah entitas
manusia atau mesin yang berinteraksi dengan sistem untuk melakukan
pekerjaan-pekerjaan tertentu.
Use case diagram dapat sangat membantu bila kita
sedang menyusun requirement sebuah sistem, mengkomunikasikan rancangan dengan
klien, dan merancang test case untuk semua feature yang ada pada sistem. Sebuah use case dapat meng-include
fungsionalitas use case lain sebagai bagian dari proses dalam dirinya. Secara
umum diasumsikan bahwa use case yang di-include akan dipanggil setiap kali use
case yang meng-include dieksekusi secara normal.
Sebuah use case dapat di-include oleh lebih
dari satu use case lain, sehingga duplikasi fungsionalitas dapat dihindari
dengan cara menarik keluar fungsionalitas yang common. Sebuah use case juga dapat meng-extend use
case lain dengan behaviour-nya sendiri. Sementara hubungan generalisasi antar
use case menunjukkan bahwa use case yang satu merupakan spesialisasi dari yang
lain.
Komponen use case sendiri hanya ada 3
macam, yaitu Sistem, aktor dan juga use case sendiri. Berikut ini adalah
penjelasan mengenai Use case diagram:
a. System
Sebagai
batasan sistem yang ada pada relasi dengan actor actor yang biasa
menggunakannya dari luar sistem, dan fitur-fitur yang harus disediakan dalam
sistem. Perangkat ini akan digambarkan dengan pola segi empat yang akan
membatasi semua use case yang ada dalam sistem terhadap pihak yang mana sistem
tersebut akan berinteraksi.
Sistem tersebut akan dibeli label, sesuai dengan nama
label tersebut. Tapi umumnya sistem ini tidak diberi gambar karena tidak
terlalu memberikan arti bagi diagram tersebut.
b.
Actor
Actor disini sebenarnya bukan bagian
dari diagram, akan tetapi actor ini adalah salah satu alat untuk menciptakan
use case diagram jadi lebih mudah. Actor ini akan digunakan untuk menjelaskan
sesuatu atau juga seseorang yang sedang berinteraksi dengan sistem.
Dimana actor ini akan memberikan
informasi pada sistem, hanya akan menerima informasi dari sistem, atau juga
keduanya (yaitu memberikan informasi dari sistem, atau menerima informasi dari
sistem). Disini Actor juga tidak akan memiliki kontrol terhadap use case itu
sendiri, namun hanya diberikan gambaran umum atau juga spesifik, guna
memudahkan Anda dalam menggunakan hubungan atau relationship yang ada.
Ada beberapa hal yang memungkinkan
actor berhubungan dengan sistem lainnya, antara lain :
·
Ketika seseorang ataupun pihak lain akan mengelola sistem
tersebut.
·
Adanya kepentingan terhadap sistem, dimana arus informasi
baik untuk si penerima maupun inputan sistem saling berkepentingan.
·
Adanya external resource yang digunakan oleh sistem
tersebut.
·
Adanya sistem lain yang tengah berinteraksi dengan sistem
yang dibuat.
c. Relasi dalam usecase
Use case diagram
memiliki relasi sebagai berikut, yaitu:
Association: Menghubungkan link antar element.
Generalization: Sebuah elemen dapat merupakan spesialis dari elemen lainnya bisa disebut dengan pewarisan sifat (inheritance).
Dependency: Sebuah elemen bergantung dalam beberapa cara ke element lain.
Aggregation: Bentuk association dimana sebuah elemen berisi elemen lainnya.
Association: Menghubungkan link antar element.
Generalization: Sebuah elemen dapat merupakan spesialis dari elemen lainnya bisa disebut dengan pewarisan sifat (inheritance).
Dependency: Sebuah elemen bergantung dalam beberapa cara ke element lain.
Aggregation: Bentuk association dimana sebuah elemen berisi elemen lainnya.
Tipe-tipe
/streo type yang mungkin trjadi pada usecase diagram:
·
<<Include>>, kelakuan yang harus terpenuhi agar
sebuah event dapat terjadi.
·
<<Extends>>, kelakuan yang hanya berjalan pada
kondisi tertentu.
·
<<Communicates>>, mungkin ditambahkan untuk
asosiasi yang menunjukkan asosiasinya adalah communicates association.
2. Diagram
Kelas
Diagram kelas 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.
3. Diagram Objek
Diagram Objek
menggambarkan struktur sistem dari segi penamaan objek dan jalannya objek dalam
sistem. dalam diagram objek harus di pastikan bahwa semua kelas yang sudah
didefinisikan pada diagram kelas harus dipakai objeknya, karena jika tidak
pendefinisian kelas itu tidak dapat dipertanggung jawabkan. Sebuah diagram
objek merupakan gambaran objek-objek pada sebuah sistem pada satu titik waktu.
karena lebih menonjolkan printah-printah dari pada kelas daigram objek sering
disebut juga sebagai diagram perintah. Elemen-elemen sebuah diagram objek
adalah spesifikasi perintah.
4. Diagram
Sekuen
Diagram sekuen
menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk
pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap
waktu. Sequence diagram terdiri atar dimensi vertikal (waktu) dan dimensi
horizontal (objek-objek yang terkait).
Sequence diagram biasa digunakan untuk menggambarkan skenario atau
rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event
untuk menghasilkan output tertentu. Diawali dari apa yang men-trigger aktivitas
tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output
apa yang dihasilkan.
Masing-masing objek, termasuk aktor, memiliki lifeline
vertikal. Message digambarkan sebagai
garis berpanah dari satu objek ke objek lainnya. Pada fase desain berikutnya,
message akan dipetakan menjadi operasi/metoda dari class.
Activation bar menunjukkan lamanya eksekusi
sebuah proses, biasanya diawali dengan diterimanya sebuah message. Untuk
objek-objek yang memiliki sifat khusus, standar UML mendefinisikan icon khusus
untuk objek boundary, controller dan persistent entity.
5. Diagram
Kolaborasi/Komunikasi
Model
Komunikasi Diagram interaksi antara benda atau
bagian dalam hal mengurutkan.
Diagram komunikasi merupakan kombinasi dari informasi yang diambil dari Kelas, urutan, dan Use case
diagram menggambarkan baik struktur statis dan perilaku dinamis dari suatu sistem.
Namun, diagram komunikasi
menggunakan pengaturan bebas-berupa
objek dan link seperti
yang digunakan dalam diagram Object.
Dalam rangka mempertahankan Urutan pesan dalam
suatu diagram format bebas,
pesan diberi label dengan nomor kronologis dan ditempatkan di dekat link pesan yang dikirim.
Membaca diagram komunikasi
yaitu mulai dari pesan
1.0, dan mengikuti pesan dari objek ke objek.
Diagram
komunikasi menunjukkan banyak informasi yang sama seperti diagram urutan,
tetapi karena cara informasi tersebut disajikan, beberapa di antaranya
lebih mudah untuk mencari salah satu diagram daripada
yang lain. Diagram komunikasi
menunjukkan tiap elemen berinteraksi dengan baik, namun diagram urutan menunjukkan
urutan di mana interaksi berlangsung lebih jelas.
Tujuan
Communication Diagram:
1. Model pesan melewati antara objek atau
peran yang mengantarkan fungsionalitas kasus dan operasi penggunaan.
2. Mekanisme model dalam desain arsitektur
system.
3. Tangkap interaksi yang menunjukkan
pesan yang dilewatkan antara objek dan peran dalam skenario kolaborasi.
4. Model skenario alternatif dalam kasus
penggunaan atau operasi yang melibatkan kolaborasi dari berbagai objek dan
interaksi.
5. Dukung identifikasi objek (karenanya
kelas), dan atributnya (parameter pesan) dan operasi (pesan) yang ikut serta
dalam use case.
6. Diagram
Status
Diagram status
atau state diagram atau statechart diagram menunjukkan kondisi yang dapat
dialami atau terjadi pada sebuah objek sehingga setiap objek memiliki sebuah
diagram status. Diagram status diadopsi dari penggambaran kondisi mesin status
(state machine) yang menggambarkan status apa saja yang dialami oleh mesin,
misalnya mesin pembelian kopi dengan uang koin.
Diagram Status
mengambarkan seluruh state/status yang memungkinkan obyek-obyek dalam class
dapat dimiliki dan kejadian-kejadian yang menyebabkan satus berubah. Perubahan
dalam suatu state disebut juga transisi (transition).
Suatu transisi juga dapat
memiliki sebuah aksi yang dihubungkan pada status, lebih spesifik apa yang
harus dilakukan dalam hubungannya dengan transisi status. Pada diagram ini,
perilaku sistem ditunjukkan. Sebuah status adalah kondisi selama hidup objek
atau interaksi selama memenuhi suatu kondisi, melaksanakan suatu aksi, atau
menunggu suatu kejadaian. Simbol-simbol yang ada pada diagram status adalah
sebagai berikut:
7. Diagram
Aktivitas
Diagram aktivitas
diagram menggambarkan berbagai alir aktivitas dalam sistem yang sedang
dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi,
dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses
paralel yang mungkin terjadi pada beberapa eksekusi. Activity diagram merupakan state diagram
khusus, di mana sebagian besar state adalah action dan sebagian besar transisi
di-trigger oleh selesainya state sebelumnya (internal processing).
Oleh karena
itu activity diagram tidak menggambarkan behaviour internal sebuah sistem (dan
interaksi antar subsistem) secara eksak, tetapi lebih menggambarkan proses-proses
dan jalur-jalur aktivitas dari level atas secara umum. Sebuah aktivitas dapat direalisasikan oleh
satu use case atau lebih. Aktivitas menggambarkan proses yang berjalan,
sementara use case menggambarkan bagaimana aktor menggunakan sistem untuk
melakukan aktivitas. Sama seperti state, standar UML menggunakan segiempat
dengan sudut membulat untuk menggambarkan aktivitas. Decision digunakan untuk
menggambarkan behaviour pada kondisi tertentu. Untuk mengilustrasikan
proses-proses paralel (fork dan join) digunakan titik sinkronisasi yang dapat
berupa titik, garis horizontal atau vertikal. Activity diagram dapat dibagi
menjadi beberapa object swimlane untuk menggambarkan objek mana yang
bertanggung jawab untuk aktivitas tertentu.
8. Diagram
Komponen
Diagram komponen adalah diagram UML yang menampilkan
komponen dalam system dan hubungan antara mereka. Pada component View, akan
difokuskan pada organisasi fisik system. Pertama, diputuskan bagaimana
kelas-kelas akan diorganisasikan menjadi kode pustaka. Kemudia akan dilihat
bagaimana perbedaan antara berkas eksekusi, berkas dynamic link library (DDL),
dan berkas runtime lainnya dalam system.
Beberapa tipe komponen sebagai berikut :
a. Komponen
Notasi-notasi komponen mempresentasikan module perangkat
lunak dengan sebuah antar muka yang di Devinisikan dengan baik. Para
spesifikasi komponen, kita dapat menspesifikasi tipe komponen dalam kolom
stereotype (Active X, Applet, Aplikasi, DLL, Executable). Dalam UML, notasi
keadaan digambarkan sebagai berikut.
b. Subprogram specification
and Body
Notasi ini mempresentasikan spesifikasi subprogram yang
terlihat dan bagian implementasi. Subprogram secara tipikal adalah kumpulan
beberapa subroutine. Subprogram tidak berisi devinisi kelas.
c. Main program
Notasi ini mempresentasikan program utama. Program utama
adalah berkas yang berisi root program. Contoh, pada power builder, ada berkas
yang berisi obyek Aplikasi.
d. Package
Specification and Body
Sebuah paket atau package adalah implementasi kelas. Sebuah
paket spesifikasi adalah berkas header, yang berisi informasi fungsi prototype
untuk kelas. Di C++, spesifikasi paket adalah berkas .h. di Java, kita
menggunakan notasi paket spesifikasi untuk mempresentasikan berkas .java.
Sebuah package Body berisi kode untuk operasi-operasi dari kelas. Di C++,
package body adalah berkas .cpp.
Ada notasi tambahan
yang digunakan untuk komponen runtime termasuk berkas-berkas executable, berkas
DLL, dan beberapa task lainnya.
e. Task
Specification and Body
Notasi-notasi ini mempresentasikan paket yang memiliki
Thread kontrol yang berdiri sendiri. Berkas executable biasanya
mempresentasikan spesifikasi task dengan ekstensi.
f. Database
Notasi ini mempresentasikan sebuah basis data, yang berisi
satu atau beberapa skema. Pada komponen diagram, basis data ditunjukkan seperti
ini :
9. Diagram
Deployment
Deployment diagram adalah salah satu jenis alat
atau bahasa (UML) yang digunakan untuk memvisualisasikan,
menspesifikasikan, dan mendokumentasikan proses yang terjadi pada suatu sistem
perangkat lunak berbasis Object Oriented yang akan dibangun. Tujuan
atau fungsi dari deployment diagram
yaitu untuk menggambarkan/memvisualisasikan secara umum proses yangterjadi pada suatu sistem/software. Dalam
deployment diagram terdapat simbol-simbol serta relasi yang sering digunakan
yaitu sbb :
1. Node
Node digunakan untuk
menggambarkan infrastruktur apa saja yang terdapat pada sistem. Biasanya node
digambarkan sebagai server, pc, dan lain-lain.
2. Component
Komponen digunakan untuk
menggambarkan elemen-elemen apa saja yang terdapat pada suatu node.
3. Communicates
/ Link
Communicates
digunakan untuk menghubungkan antar node yang saling
berinteraksi.
4. Dependency
Tidak ada komentar:
Posting Komentar