Anda di halaman 1dari 12

1.

Pendahuluan Dan Definisi

Unified Modeling Language (UML) adalah bahasa spesifikasi standar untuk


mendokumentasikan, menspesifikasikan, dan membangun system.

Unified Modeling Language (UML) adalah himpunan struktur dan teknik untuk pemodelan
desain program berorientasi objek (OOP) serta aplikasinya. UML adalah metodologi untuk
mengembangkan sistem OOP dan sekelompok perangkat tool untuk mendukung pengembangan
sistem tersebut. UML mulai diperkenalkan oleh Object Management Group, sebuah organisasi
yang telah mengembangkan model, teknologi, dan standar OOP sejak tahun 1980-an. Sekarang
UML sudah mulai banyak digunakan oleh para praktisi OOP. UML merupakan dasar bagi
perangkat (tool) desain berorientasi objek dari IBM.

UML adalah suatu bahasa yang digunakan untuk menentukan, memvisualisasikan, membangun,
dan mendokumentasikan suatu sistem informasi. UML dikembangkan sebagai suatu alat untuk
analisis dan desain berorientasi objek oleh Grady Booch, Jim Rumbaugh, dan Ivar Jacobson
Namun demikian UML dapat digunakan untuk memahami dan mendokumentasikan setiap
sistem informasi. Penggunaan UML dalam industri terus meningkat. Ini merupakan standar
terbuka yang menjadikannya sebagai bahasa pemodelan yang umum dalam industri peranti lunak
dan pengembangan sistem. Singkatnya Unified Modelling Language (UML) adalah sebuah
bahasa yg telah menjadi standar dalam industri untuk visualisasi, merancang dan
mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar untuk merancang
model sebuah sistem.

Sampai era tahun 1990 puluhan metodologi pemodelan berorientasi objek telah 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 pendesainan berorientasi objek. Masing-masing
metodologi membawa notasi sendiri-sendiri, yang mengakibatkan timbul masalah baru apabila
kita bekerjasama dengan kelompok/perusahaan lain yang menggunakan metodologi yang
berlainan.

Dimulai pada bulan Oktober 1994 Booch, Rumbaugh dan Jacobson, yang merupakan tiga tokoh
yang boleh dikata metodologinya banyak digunakan mempelopori usaha untuk penyatuan
metodologi pendesainan berorientasi objek. Pada tahun 1995 direlease draft pertama dari UML
(versi 0.8). Sejak tahun 1996 pengembangan tersebut dikoordinasikan oleh Object Management
Group (OMG ).

Bagian-bagian UML

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.

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 diagrams dan kadang-kadang dengan activity diagrams.
View ini digunakan terutama untuk pelanggan, perancang (designer), pengembang (developer),
dan penguji sistem (tester).

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).

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).

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).

Deployment view
Mendeskripsikan fisik dari sistem seperti komputer dan perangkat (nodes) dan bagaimana
hubungannya dengan lainnya.

View ini digambarkan dalam deployment diagrams dan digunakan untuk pengembang
(developer), pengintegrasi (integrator), dan penguji (tester).

b. 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 :

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 case merupakan 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.

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.
Class memiliki tiga area pokok :

1.Nama (dan stereotype)


2. Atribut
3. Metoda

Atribut dan metoda dapat memiliki salah satu sifat berikut :

- Private, tidak dapat dipanggil dari luar class yang bersangkutan

- Protected, hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak yang
mewarisinya

- Public, dapat dipanggil oleh siapa saja

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.

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.

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 state yang berbeda.

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.

Collaboration Diagram

Menggambarkan kolaborasi dinamis seperti sequence diagrams. Dalam menunjukkan pertukaran


pesan, collaboration diagrams menggambarkan object dan hubungannya (mengacu ke konteks).
Jika penekannya pada waktu atau urutan gunakan sequencediagrams, tapi jika penekanannya
pada konteks gunakan collaboration diagram.

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
case atau interaksi.
Tujuan Penggunaan UML

a. Memberikan bahasa pemodelan yang bebas dari berbagai bahas pemrograman dan proses
rekayasa.

b. Menyatukan praktek-praktek terbaik yang terdapat dalam pemodelan.

c. Memberikan model yang siap pakai, bahsa pemodelan visual yang ekspresif untuk
mengembangkan dan saling menukar model dengan mudah dan dimengerti secara umum.

d. 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).

Langkah-Langkah Penggunaan UML

Berikut ini adalah tips pengembangan piranti lunak dengan menggunakan UML:
1. Buatlah daftar business process dari level tertinggi untuk mendefinisikan aktivitas dan
proses yang mungkin muncul.
2. Petakan use case untuk tiap business process untuk mendefinisikan dengan
tepatfungsionalitas yang harus disediakan oleh sistem. Kemudian perhalus use case
diagram danlengkapi 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 objek-objek level atas (package atau domain) dan buatlah sequence dan/atau
collaboration diagram untuk tiap alir pekerjaan. Jika sebuah use case memiliki
kemungkinan alir normal dan error, buatlah satu diagram untuk masing-masing alir.
7. Buarlah rancangan user interface model yang menyediakan antarmuka bagi pengguna
untuk menjalankan skenario use case.
8. Berdasarkan model-model yang sudah ada, buatlah class diagram. Setiap package atau
domain dipecah menjadi hirarki class lengkap dengan atribut dan metodanya. 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 pengelompokan class
menjadi komponen-komponen. Karena itu buatlah component diagram pada tahap ini.
Juga,definisikan tes integrasi untuk setiap komponen meyakinkan ia berinteraksi 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 dapat digunakan :
Pendekatan use case, dengan meng-assign setiap use case kepada tim pengembang
tertentu untuk mengembangkan unit code yang lengkap dengan tes.
Pendekatan komponen, yaitu meng-assign setiap komponen kepada tim pengembang
tertentu.
12. Lakukan uji modul dan uji integrasi serta perbaiki model berserta codenya.
Model harus selalu sesuai dengan code yang aktual.
13. Piranti lunak siap dirilis.

Tool Yang Mendukung UML

Saat ini banyak sekali tool pendesainan yang mendukung UML, baik itu tool komersial
maupun
opensource. Beberapa diantaranya adalah:
Rational Rose (www.rational.com)
Together (www.togethersoft.com)
Object Domain (www.objectdomain.com)
Jvision (www.object-insight.com)
Objecteering (www.objecteering.com)
MagicDraw (www.nomagic.com/magicdrawuml)
Visual Object Modeller (www.visualobject.com)

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

Bahasa pemodelan berorientasi objek muncul antara sekitar pertengahan tahun 1970-an
dan akhir tahun 1980-an yang dikenal dengan bahasa pemograman berorientasi objek dan
aplikasi komplek yang berkembang, yang dimulai untuk eksperimen dengan pendekatan
alternatif untuk analisis dan desain. Sejumlah metode berorientasi objek bertambah dari kurang
lebih 10 sampai lebih dari 50 selama periode 1989 dan 1994.Beberapa user pengguna metode ini
menemukan permasalahan dalam bahasa pemodelan ini yang dibutuhkan mereka untuk
kelengkapan, sehingga timbul yang dinamakan perang metode. Belajar dari pengalaman, metode
generasi baru mulai muncul dengan metode yang terkemuka, seperti Booch, Jacobsons
OOSE(Object Oriented Software Engineering) dan Rumbaughs OMT(Object Modelling
Technique). Metode penting lainya seperti Fusion, Shler_mellor dan Coad-Yourdan.Setiap
metode ini merupakan metode yang lengkap, meskipun setiap metode diakui memiliki kelebihan
dan kekurangan. Dalam waktu yang singkat metode Booch paling terasa dalam mendesain dan
membangun tahapan project,OOSE memberikan dukungan yang baik untuk use cases seperti
cara untuk menjalankan permintaan, analisis dan desain level tinggi, dan OMT-2 sangat berguna
untuk analisis dan sistem informasi data intensif.
Banyak ide-ide yang kritis dimulai dari pertengahan tahun 1990-an ketika Grady Booch
(Relational Software Corporation), Ivar Jacobson(Objectory) dan James Rumbaugh(General
Electric) mulai mengadopsi ide-ide dari metode lainnya yang dikumpulkan yang akhirnya diakui
sebagai Metode Object Oriented yang mudah diseluruh dunia. Kemudian mereka termotivasi
untuk membangun UML(Unified Modelling Language).
Ada tiga tujuan dibangunnya penyatuan metode tersebut yaitu :
1. Untuk memodelkan sistem, dari konsep ke bentuk yang cocok dengan menggunakan teknik
berorientasi objek.
2. Untuk menunjukkan skala persoalan yang komplek.
3. Untuk membangun bahasa pemodelan yang berguna bagi manusia dan mesin.
Perencanaan bahasa untuk digunakan pada analisa dan desain yang berorientasi objek
tidak seperti mendesain bahasa pemograman.Pertama, kita harus mengetahui masalah seperti
dapatkah bahasa mencakup spesikasi permintaan?Dapatkah bahasa penting untuk pemograman
visual?Kedua, kita harus menemukan keseimbangan antara komplek dan kesederhanaan. Bahasa
yang terlalu sederhana akan terbatas untuk problem yang luas yang akan dipecahkan. Sedangkan
untuk bahasa yang komplek akan berakibat terlalu pengembang pada sistem yang sederhana.
UML dimulai secara resmi pada oktober 1994, ketika Rumbaugh bergabung dengan
Booch pada Relational Software Coorporation.Proyek ini mengfokuskan pada penyatuan metode
Booch dan OMT.Versi 0.8 merupakan Metode Penyatuan yang direlease pada bulan oktober
1995. Dalam waktu yang sama Jacobson bergabung dengan Ralational dan cakupan dari UML
semakin luas sampai diluar perusahaan OOSE. Dokumentasi UML versi 0.9 akhirnya direlease
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 software melihat kalau UML merupakan strategi dari bisnisnya. Kemudian
dibangunlah UML Consortium dengan beberapa organisasi yang akan menyumbangkan sumber
dayanya untuk bekerja mengembangkan dan melengkapi UML.
Disini beberapa patner yang berkontribusi pada UML 1.0 diantaranya Digital Equipment
Corporation, Hewlett-packard, I-Logix, Intellicorp, IBM, ICON Computing, MCI Systemhouse,
Microsoft, Oracle, Relational, Texas Instruments dan Unisys. Dari Colaboration ini dihasilkan
UML 1.0 yang merupakan bahasa pemodelan yang ditetapkan secara baik, Expressive, kuat dan
cocok untuk lingkungan masalah yang luas. UML 1.0 ditawarkan menjadi standarisasi dari
Object Management Group(OMG). Dan pada januari 1997 sebagai standar bahasa pemodelan.

Anda mungkin juga menyukai