UML
07.56
By
Ramdhan Muhammad
Artikel Pelajaran
0
komentar
Artikel P.S.B.O : UML (Unified Modelling Language)
Pengertian dan Sejarah UML (Unified Modelling
Language)
UML (Unified Modeling Language) adalah sebuah bahasa
untuk menetukan, visualisasi, kontruksi, dan mendokumentasikan artifact (bagian
dari informasi yang digunakan atau dihasilkan dalam suatu proses pembuatan perangkat
lunak. Artifact dapat berupa model, deskripsi atau perangkat lunak) dari system
perangkat lunak, seperti pada pemodelan bisnis dan system non perangkat lunak
lainnya.
UML (Unified Modeling Language) merupakan pengganti
dari metode analisis berorientasi object dan design berorientasi object
(OOA&D) yang dimunculkansekitar akhir tahun 80-an dan awal tahun 90-an.UML
merupakan gabungan dari metode Booch, Rumbaugh
(OMT) dan Jacobson. Tetapi UML ini akan mencakup lebih luas daripada OOA&D. Pada
pertengahan pengembangan UML dilakukan standarisasi proses dengan OMG (Object
Management Group) dengan harapan UML akan menjadi
bahasa standar pemodelan pada masa yang akan
datang. UML disebut sebagai bahasa pemodelan
bukan metode. Kebanyakan metode terdiri paling sedikit prinsip, bahasa
pemodelan dan proses. Bahasa pemodelan (sebagian besar grafik) merupakan notasi
dari metode yang digunakan untuk mendesain secara cepat.
Bagian-bagian
utama dari UML adalah view, diagram, model element, dan general mechanism.
a. 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.
b. 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).
c. Logical
view
Mendeskripsikan
bagaimana fungsionalitas dari sistem, struktur statis (class,
object,dan relationship ) 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).
d. 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).
e. 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).
g. Diagram
Diagram berbentuk grafik yang menunjukkan simbol
elemen model yang disusun untuk mengilustrasikan bagian atau aspek tertentu
dari sistem.
1. 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.
2. 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.
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.
3. 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.
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.
4.
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.
5. 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.
6. Sequence
Diagram
Sequence
Diagram digunakan untuk menggambarkan perilaku pada sebuah scenario.
Kegunaannya untuk menunjukkan rangkaian pesan yang dikirim antara object juga
interaksi antara object, sesuatu yang terjadi pada titik tertentu dalam eksekusi
sistem.
7.
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
gunakan sequence diagrams, tapi jika penekanannya pada konteks
gunakan collaboration diagram.
8. 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.
Tujuan
Penggunaan UML
- Memberikan
bahasa pemodelan yang bebas dari berbagai bahas pemrograman dan proses
rekayasa.
- Menyatukan
praktek-praktek terbaik yang terdapat dalam pemodelan.
- Memberikan
model yang siap pakai, bahsa pemodelan visual yang ekspresif untuk
mengembangkan dan saling menukar model dengan mudah dan dimengerti secara
umum.
- UML
bisa juga berfungsi sebagai sebuah (blue print) cetak biru karena sangat
lengkap dan detail. Dengan cetak biru ini maka akan bias diketahui
informasi secara detail tentang coding program atau bahkan membaca program
dan menginterpretasikan kembali ke dalam bentuk diagram (reserve
enginering).
Perangkat
lunak yang mendukung pembuatan diagram UML
- StarUML
(http://staruml.sourceforge.net/en/)
StarUML adalah sebuah proyek open source untuk
mengembangkan cepat, fleksibel, extensible, featureful, dan bebas-tersedia UML
/ platform MDA berjalan pada platform Win32.Tujuan dari proyek StarUML adalah
untuk membangun sebuah alat pemodelan perangkat lunak dan juga platform yang
menarik adalah pengganti alat UML komersial seperti Rational Rose, Bersama dan
sebagainya.
Acceleo
adalah generator kode yang mengubah model menjadi kode. Acceleo mudah
digunakan dan menyediakan “dari rak” generator (Jee,. Bersih, Php …) dan
template editor untuk Eclipse.
ArgoUML
adalah open source UML modeling tool terkemuka dan termasuk dukungan untuk
semua diagram UML standar 1,4. Ini berjalan pada setiap platform Java dan
tersedia dalam bahasa sepuluh. ArgoUML ditulis seluruhnya di Jawa dan
menggunakan Java Kelas Foundation.Hal ini memungkinkan ArgoUML untuk berjalan
di hampir semua platform.
Sejarah UML
UML dimulai secara resmi pada oktober 1994, ketika
Rumbaugh bergabung dengan Booch pada Relational Software Corporation. Proyek
ini memfokuskan pada penyatuan metode Booch dan OMT. UML versi 0.8
merupakan metode penyatuanyang dirilis pada bulan Oktober 1995. Dalam waktu
yang sama, Jacobson bergabung dengan Relational dan cakupan dari UML semakin
luas sampai diluar perusahaan OOSE. Dokumentasi UML versi 0.9 akhirnya dirilis
pada bulan Juni 1996. Meskipun pada tahun 1996 ini melihat dan
menerima feedback dari komunitas Software Engineering.
Dalam waktu
tersebut, menjadi lebih jelas bahwa beberapa organisasi perangkat lunak melihat
UML sebagai strategi dari bisnisnya. Kemudian dibangunla hUML Consortium dengan
beberapa organisasi yang akan menyumbangkan sumber dayanya untuk bekerja,
mengembangkan, dan melengkapi UML. Di sini beberapa partner yang
berkontribusi pada UML 1.0, diantaranya Digita lEquipment Corporation,
Hewlett-Packard, I-Logix, Intellicorp, IBM, ICON Computing, MCI Systemhouse,
Microsoft, Oracle, Relational, Texas Instruments dan Unisys. Dari
kolaborasi ini dihasilkan UML 1.0 yang merupakan bahasa pemodelan yang
ditetapkan secara baik,expressive, kuat, dan cocok untuk lingkungan masalahyang
luas. UML 1.0 ditawarkan menjadi standarisasi dari Object Management Group
(OMG). Dan pada Januari 1997 dijadikan sebagai standar bahasa pemodelan.
Antara
Januari–Juli 1997 gabungan group tersebut memperluas kontribusinya sebagai
hasil respon dari OMG dengan memasukkan Adersen Consulting, Ericsson, Object Time
Limeted, Platinum Technology, Ptech, Reich Technologies, Softeam,Sterling
Software dan Taskon. Revisi dari versi UML (versi 1.1) ditawarkan kepada OMG
sebagai standarisasi pada bulan Juli 1997. Dan pada bulan September 1997,versi
ini dierima oleh OMG Analysis dan Design Task Force (ADTF) dan OMG Architecture
Board. Dan Akhirnya pada Juli 1997 UML versi 1.1 menjadi standarisasi.
Pemeliharaan
UML terus dipegang oleh OMG Revision Task Force (RTF) yang dipimpin
oleh Cris Kobryn. RTP merilis editorial dari UML 1.2 pada Juni 1998. Danpada
tahun 1998 RTF juga merilis UML 1.3 disertai dengan user guidedan memberikan
technical cleanup.
0 komentar: