Definisi UML
Unified
Modeling Language merupakan metode pengembangan perangkat lunak (sistem
informasi) dengan menggunakan metode grafis serta merupakan bahasa untuk
visualisasi, spesifikasi, konstruksi serta dokumentasi [Adin05].
Unified
Modeling Language (UML) adalah bahasa yang telah menjadi standard untuk
visualisasi, menetapkan, membangun dan mendokumentasikan arti suatu sistem
perangkat lunak [Hend07].
Unified
Modeling Language (UML) dapat didefinisikan sebagai sebuah bahasa yang
telah menjadi standar dalam industri untuk visualisasi, merancang dan
mendokumentasikan sistem perangkat lunak [Afif02].
Unified
Modeling Language (UML) merupakan standard modeling language yang terdiri
dari kumpulan-kumpulan diagram, dikembangkan untuk membantu para pengembang
sistem dansoftware agar bisa menyelesaikan tugas-tugas seperti [Joml07] :
Spesifikasi
Visualisasi
Desain
arsitektur
Konstruksi
Simulasi dan
testing
Dokumentasi
Berdasarkan
beberapa pendapat yang dikemukakan diatas dapat ditarik kesimpulan bahwa “Unified
Modeling Language (UML) adalah sebuah bahasa yang berdasarkan grafik atau
gambar untuk menvisualisasikan, menspesifikasikan, membangun dan
pendokumentasian dari sebuah sistem pengembangan perangkat lunak berbasis Objek
(OOP) (Object Oriented programming)”.
Sejarah Singkat UML
UML (Unified Modeling Language) adalah bahasa
yang berdasarkan grafik atau 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 komponen – komponen yang diperlukan
dalam software.
Pendekatan
analisa dan rancangan dengan menggunakan model OO mulai diperkenalkan sekitar
pertengahan tahun 1970 hingga akhir 1980 dikarenakan pada saat itu
aplikasi software sudah meningkat dan mulai komplek. Jumlah yang
menggunakan metode OO mulai diuji cobakan dan diaplikasikan antara tahun 1989 –
1994, seperti halnya oleh grady Booch dari Rational Sotfware Co., serta
James Rumbaugh dari General Electric, dikenal dengan OMT (Object Modelling
Technique).
Kelemahan
saat itu disadari oleh Booch maupun Rumbaugh adalah tidak adanya standar
penggunaan model yang berbasis OO, katika mereka bertemu ditemani rekan lainnya
Ivar Jacobson dari Objectory mulai mendiskusikan untuk mengadopsi masing-masing
pendekatan metode OO untuk membuat suatu model bahasa yang uniform atau
seragam yang disebut UML (Unified Modeling language) dan dapat digunakan
oleh seluruh dunia.
Penggunaan
UML Secara Resmi
Secara resmi
bahasa UML dimulai pada bulan oktober 994, ketika Rumbaugh bergabung dengan
Booch untuk membuat sebuah project pendekatan metode yang uniform atau seragam
dari masing – masing metode mereka. Saat itu baru
dikembangkan draft metode UML version 0.8 dan diselesaikan
serta direlease pada bulan oktober 1995. Bersamaan dengan saat itu, Jacobson
bergabung dan UML tersebut diperkaya ruang lingkupnya dengan metode OOSE
sehingga muncul release version 0.9 pada bulan juni 1996. Hingga saat ini sejak
Juni 1998 UML version 1.3 telah diperkaya dan direspons oleh OMG
(ObjectManagement Group). Anderson Consulting, Ericson, Platinum technology,
ObjecTime Limited dan lain lain serta dipelihara oleh OMG yang dipimping oleh
Cris Kobryn.
UML adalah
standar dunia yang dibuat oleh Object Management Group, sebuah badan yang
bertugas mengeluarkan standar-standar
teknologi objectoriented dan software component.
BAGIAN-BAGIAN UML
Bagian-bagian
utama dari UML adalah view, diagram, model element, dan general mechanism.
1. View
View
digunakan untuk melihat sistem yang dimodelkan dari beberapa aspek yang
berbeda. View bukan melihat grafik, tapi merupakan suatu abstraksi yang berisi
sejumlah diagram.
Beberapa
jenis view dalam UML antara lain: use case view, logical view, component view,
concurrency view,dan deployment view.
2. Use case view
Mendeskripsikan
fungsionalitas sistem yang seharusnya dilakukan sesuai yang diinginkan external
actors. Actor yang berinteraksi dengan sistem dapat berupa user atau sistem
lainnya.
View
ini digambarkan dalam use case diagramsdan kadang-kadang dengan activity
diagrams. Viewini digunakan terutama untuk pelanggan, perancang (designer),
pengembang (developer), dan penguji sistem (tester).
3. Logical view
Mendeskripsikan
bagaimana fungsionalitas dari sistem, struktur statis (class,
object,danrelationship ) dan kolaborasi dinamis yang terjadi ketika object
mengirim pesan ke object lain dalam suatu fungsi tertentu.
View
ini digambarkan dalam class diagrams untuk struktur statis dan dalam state,
sequence, collaboration, dan activity diagram untuk model dinamisnya. View ini
digunakan untuk perancang (designer) dan pengembang (developer).
4. Component view
Mendeskripsikan
implementasi dan ketergantungan modul. Komponen yang merupakan tipe lainnya
dari code module diperlihatkan dengan struktur dan ketergantungannya juga
alokasi sumber daya komponen dan informasi administrative lainnya.
View
ini digambarkan dalam component view dan digunakan untuk pengembang
(developer).
5. Concurrency view
Membagi
sistem ke dalam proses dan prosesor.View ini digambarkan dalam diagram dinamis
(state, sequence, collaboration, dan activity diagrams) dan diagram
implementasi (component dan deployment diagrams) serta digunakan untuk
pengembang (developer), pengintegrasi (integrator), dan penguji (tester).
6. Deployment view
Mendeskripsikan
fisik dari sistem seperti komputer dan perangkat (nodes) dan bagaimana
hubungannya dengan lainnya.
View
ini digambarkan dalam deployment diagramsdan digunakan untuk pengembang
(developer), pengintegrasi (integrator), dan penguji (tester).
7. Diagram
Diagram
berbentuk grafik yang menunjukkan simbol elemen model yang disusun untuk
mengilustrasikan bagian atau aspek tertentu dari sistem. Sebuah diagram
merupakan bagian dari suatu view tertentu dan ketika digambarkan biasanya
dialokasikan untuk view tertentu. Adapun jenis diagram antara lain :
a. Use Case Diagram
Use
case adalah abstraksi dari interaksi antara system dan actor. Use case bekerja
dengan cara mendeskripsikan tipe interaksi antara user sebuah system dengan
sistemnya sendiri melalui sebuah cerita bagaimana sebuah system dipakai. Use
casemerupakan konstruksi untuk mendeskripsikan bagaimana system akan terlihat
di mata user. Sedangkan use case diagram memfasilitasi komunikasi diantara
analis dan pengguna serta antara analis dan client.
b. Class Diagram
Class
adalah dekripsi kelompok obyek-obyek dengan property, perilaku (operasi) dan
relasi yang sama. Sehingga dengan adanya class diagram dapat memberikan
pandangan global atas sebuah system. Hal tersebut tercermin dari class- class
yang ada dan relasinya satu dengan yang lainnya. Sebuah sistem biasanya
mempunyai beberapa class diagram. Class diagram sangat membantu dalam
visualisasi struktur kelas dari suatu system.
c. Component Diagram
Component
software merupakan bagian fisik dari sebuah system, karena menetap di komputer
tidak berada di benak para analis. Komponent merupakan implementasi software
dari sebuah atau lebih class. Komponent dapat berupa source code, komponent
biner, atau executable component. Sebuah komponent berisi informasi tentang
logic class atau class yang diimplementasikan sehingga membuat pemetaan dari
logical view ke component view.Sehingga component diagram merepresentasikan
dunia riil yaitu component software yang mengandung component, interface dan
relationship.
d. Deployment Diagram
Menggambarkan
tata letak sebuah system secara fisik, menampakkan bagian-bagian software yang
berjalan pada bagian-bagian hardware, menunjukkan hubungan komputer dengan
perangkat (nodes) satu sama lain dan jenis hubungannya. Di dalam
nodes,executeable component dan object yang dialokasikan untuk memperlihatkan
unit perangkat lunak yang dieksekusi oleh node tertentu dan ketergantungan
komponen.
e. State Diagram
Menggambarkan
semua state (kondisi) yang dimiliki oleh suatu object dari suatu class dan
keadaan yang menyebabkan state berubah. Kejadian dapat berupa object lain yang
mengirim pesan. State class tidak digambarkan untuk semua class, hanya yang
mempunyai sejumlah state yang terdefinisi dengan baik dan kondisi class berubah
oleh stateyang berbeda.
f. Sequence Diagram
Sequence
Diagram digunakan untuk menggambarkan perilaku pada sebuah scenario.
Kegunaannya untuk menunjukkan rangkaian pesan yang dikirim antara object juga
interaksi antaraobject, sesuatu yang terjadi pada titik tertentu dalam eksekusi
sistem.
g. Collaboration Diagram
Menggambarkan
kolaborasi dinamis sepertisequence diagrams. Dalam menunjukkan pertukaran
pesan, collaboration diagrams menggambarkan objectdan hubungannya (mengacu ke
konteks). Jika penekannya pada waktu atau urutan gunakansequencediagrams, tapi
jika penekanannya pada konteks gunakan collaboration diagram.
h. Activity Diagram
Menggambarkan
rangkaian aliran dari aktivitas, digunakan untuk mendeskripsikan aktifitas yang
dibentuk dalam suatu operasi sehingga dapat juga digunakan untuk aktifitas
lainnya seperti use caseatau interaksi.
ConversionConversion EmoticonEmoticon