Hai Reader !! ^^, kali ini aku akan menjelaskan tentang Unified
Modeling Language atau biasa dikenal UML. Design system tidak kalah
penting untuk membuat sebuah program, tidak jarang perusahaan - perusahaan
besar membutuhkan design system untuk project/program yang mereka buat. Nah
sekarang mari kita berkenalan dengan UML, pemodelan design program berorientasi
object. Karena tak kenal maka KENALAN ehe canda
Yuk simak dibawah
materi tentang UML
UML(Unified
Modeling Language)
adalah
metode pemodelansecaravisual sebagai sarana untuk merancang dan atau membuat
software berorientasi objek. Karena UML ini merupakan bahasa visual untuk
pemodelanbahasa berorientasi objek, maka semua elemen dan diagramberbasiskan
pada paradigma object oriented.UML memberikan standar penulisan sebuah sistem
blueprint ,yang meliputi konsep bisnis proses, penulisan kelas-kelas
dalambahasa program yang spesifik, skema database, dan komponen-komponen yang diperlukan
dalam software.
Sebuah bahasa model
adalah sebuah bahasa yang mempunyai vocabulary dan konsep tatanan / aturanpenulisan
serta secara fisik mempresentasikan darisebuah sistem. UML adalah sebuah bahasa
standar untuk pengembangan software yang dapat menyampaikan bagaimana membuat
dan membentuk model-model,tetapi tidak menyampaikan apa dan kapan model yang
seharusnya dibuat. UML tidak hanya merupakan sebuah bahasa pemograman visual
saja, namun juga dapat secaralangsung dihubungkan ke berbagai bahasa pemograman,seperti
JAVA, C++, Visual Basic, atau bahkandihubungkan secara langsung ke dalam sebuah
object-oriented database. UML juga dapat digunakan untukmodeling aplikasi
prosedural dalam VB atau C. Begitu juga mengenai pendokumentasian dapat dilakukan
seperti; requirements, arsitektur,design,source code, project plan,tests, dan
prototypes.
MENGAPA
UML?
Pada
masa lalu, UML mempunyai peranan sebagaisoftware blueprint (gambaran) language
untuk analisis sistem, designer, dan programmer. Sedangkan pada saatini, merupakan
bagian dari software trade (bisnis software). UML memberikan jalur komunikasi
dari sistem analis kemudian designer, lalu programmer mengenai rancangan
software yang akan dikerjakan. Salah satu pemecahan masalah Object Oriented
adalah dengan menggunakanUML. Oleh karena itu orang-orang yang berminat dalam
mempelajari UMLharus mengetahui dasar-dasar mengenai Object Oriented Solving;
antara lain dengan pembentukan model.
Model
adalah gambaran abstrak dari suatu dasar masalah. Dan dunia nyata atau tempat
dimana masalah itu timbul bisa disebut dengan domain. Model mengandung obyek-obyek
yang beraktifitas dengan saling mengirimkan messages (pesan-pesan). Obyek
mempunyai sesuatu yang diketahui(atribut /attributes) dan sesuatu yang
dilakukan (behaviors atau operations). Attributes hanya berlaku dalam ruang
lingkup obyek itu sendiri (state). Lalu“blue print” dari suatu obyek adalah
Classes (kelas). Obyek merupakan bagian-bagian dari kelas.
PERKEMBANGAN
UML
Sampai
era tahun 1990 terdapat puluhan metodologi pemodelan berorientasi objek
bermunculan di dunia.Diantaranya adalah: metodologi booch, metodologi
coad,metodologi OOSE, metodologi OMT, metodologi shlaer-mellor, metodologi
wirfs-brock, dsb. Masa itu terkenal dengan masa perang metodologi(method war ) dalam
perancangan berorientasi objek.Masing-masing metodologi membawa notasi
sendiri-sendiri, yang mengakibatkan timbul masalah baru apabila kita bekerjasama
dengan group/perusahaan lain yang menggunakan metodologi yang berlainan. Dimulai
pada bulan Oktober 1994 Booch, Rumbaugh danJacobson, mempelopori usaha untuk penyatuanmetodologi
perancangan berorientasi objek.
Pada
tahun 1995 direlease draft pertama dari UML (versi0.8). Sejak tahun 1996
pengembangan tersebut dikoordinasikan oleh Object Management Group (OMG – http://www.omg.org). Tahun 1997 UML versi 1.1
muncul, dan saat ini versi terbaru adalah versi 2.0 yang direlease tahun 2005.
Sejak saat itulah UML telah menjelma menjadi standar Bahasa pemodelan untuk
aplikasi berorientasi objek.
KONSEP
DASAR UML
Seperti
bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax /semantik. Notasi
UML merupakan sekumpulan bentuk khusus untuk menggambarkanberbagai 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 (ObjectModelling Technique), dan Ivar
Jacobson OOSE (Object-Oriented Software Engineering).
BUILDING
BLOCKS
Untuk
dapat memahami UML membutuhkan bentuk konsep darisebuah bahasa model, dan mempelajari
3 elemen utama dariUML, seperti building block , aturan-aturan yang menyatakan bagaimana
building block diletakkan secara bersamaan, dan beberapa mekanisme umum
(common).
Tiga macam yang terdapat
dalam building block adalah
1.
Benda/Things; adalah abstraksi yang pertama dalam sebuah model
Adalah
hal yang sangat mendasar dalam model UML, juga merupakan bagian paling statik
dari sebuah model, serta menjelaskan elemen-elemen lainnya dari sebuah konsep
dan atau fisik.Bentuk dari things ada 5 :
Classes,
yang diuraikan sebagai sekelompok dari object yang mempunyai atribute,operasi,
hubungan yang semantik. Sebuah kelas mengimplementasikan 1 atau lebih interfaces
. Sebuah kelas dapat digambarkan sebagai sebuah persegi panjang, yangmempunyai
sebuah nama, atribute, dan metoda pengoperasiannya.
Interfaces,
merupakan sebuah antar-muka yang menghubungkan dan melayani antar kelas dan atau
elemen. Interface/ antar-muka mendefinisikan sebuah set / kelompokdari
spesifikasi pengoperasian, umumnya digambarkan dengan sebuah lingkaran yang disertai
dengan namanya. Sebuah antar-muka berdiri sendiri dan umumnya merupakanpelengkap
dari kelas atau komponen.
Collaboration,yang
didefinisikan dengan interaksi dan sebuah kumpulan / kelompok dari kelas-kelas
/ elemen-elemen yang bekerja secara bersama-sama. Collaborations mempunyai
struktur dan dimensi. Pemberian sebuah kelas memungkinkan berpartisipasi didalam
beberapa collaborations dan digambarkan dengan sebuah‘ elips’ dengan garis
terpotong-potong.
Use
cases, adalah rangkaian/uraian sekelompok yang saling
terkait dan membentuk sistem secara teratur yang dilakukan atau diawasioleh sebuah aktor. ‘use case’ digunakan untuk
membentuk tingkah-laku benda /things dalam sebuah model serta direalisasikan
oleh sebuah collaboration . Umumnya ‘use case’ digambarkan dengansebuah ‘elips’
dengan garis yang solid, biasanya mengandung nama.
Nodes,merupakan
fisik dari elemen-elemen yang adapada saat dijalankannya sebuah sistem,
contohnya adalah sebuah komputer, umumnya mempunyaisedikitnya memory dan
processor. Ke kelompok komponen mungkin terletak pada sebuah node dan juga
mungkin akan berpindah dari node satu ke nodelainnya. Umumnya node ini digambarkan
seperti kubusserta hanya mengandung namanya.
2.Hubungan/Relationships;
sebagai alat komunikasi dari benda-benda
Ada 4 macam hubungan dalam
penggunaan UML :
Dependency,
adalah hubungan semantik antara dua benda/ things dimana sebuah benda berubah
mengakibatkan benda satunya akan berubah pula. Umumnya sebuah dependency
digambarkan dengan sebuah panah dengan garis terputus-putus.
Association,
hubungan antar benda struktural yang terhubung diantara obyek. Kesatuan obyek
yang terhubung merupakan hubungan khusus, yang menggambarkan sebuah hubungan struktural
diantara seluruh atau sebagian.Umumnya association digambarkan dengan sebuah
garis yang dilengkapi dengan sebuah label, nama, dan status hubungannya.
Generalizations,
menggambarkan hubungan khususdalam obyek anak/ child yang menggantikan obyek
parent / induk. Dalam hal ini, obyek anak memberikan pengaruhnya dalam hal
struktur dan tingkah lakunya kepada obyek induk. Digambarkan dengan garis panah.
Realizations,
merupakan hubungan semantik antara pengelompokan yang menjamin adanya ikatan
diantaranya. Hubungan ini dapat diwujudkan diantara interface dan kelas atau elements
, serta antara usecases dan collaborations.
3.Bagan/Diagrams;
sebagai kumpulan / group dari benda-benda/things
UML
terdiri atas pengelompokan diagram-diagram sistem menurut aspekatau sudut
pandang tertentu. Diagram menggambarkan permasalahan maupun solusi dari
permasalahan suatu model.
UML mempunyai 8
diagram, yaitu:
-Diagram Use Case
-Diagram Class
-Diagram Package
-Diagram Sequence
-Diagram Collaboration
-Diagram StateChart
-Diagram Activity
-Diagram Deployment