UML (Unified Modeling Language)
Dalam suatu proses pengembangan software, analisa dan rancangan
telah merupakan terminologi yang sangat tua. Pada saat masalah ditelusuri dan
spesifikasi dinegoisasikan, dapat dikatakan kita berada pada tahap rancangan.
Merancang adalah menemukan suatu cara untuk menyelesaikan masalah, salah satu
tool / model untuk merancang pengembangan software yang berbasis object
oriented adalah UML.
Konsep Objek
Obyek dalam ‘software analysis & design’ adalah sesuatu berupa konsep (concept), benda (thing), dan sesuatu yang membedakannya dengan lingkungannya. Secara sederhana obyek adalah mobil, manusia, alarm dan lainlainnya. Tapi obyek dapat pula merupakan sesuatu yang abstrak yang hidup didalam sistem seperti tabel, database, event, system messages.
Obyek dikenali dari keadaannya dan juga operasinya. Sebagai contoh sebuah mobil dikenali dari warnanya, bentuknya, sedangkan manusia dari suaranya. Ciriciri ini yang akan membedakan obyek tersebut dari obyek lainnya.
Teknik Dasar OOA/D (Object-Oriented Analysis/Design)
Dalam dunia pemodelan, metodologi implementasi obyek walaupun terikat kaidah-kaidah standar, namun teknik pemilihan obyek tidak terlepas pada subyektifitas software analyst & designer. Beberapa obyek akan diabaikan dan beberapa obyek menjadi perhatian untuk diimplementasikan di dalam sistem. Hal ini sah-sah saja karena kenyataan bahwa suatu permasalahan sudah tentu memiliki lebih dari satu solusi. Ada 3 (tiga) teknik/konsep dasar dalam OOA/D yaitu pemodulan (encapsulation), penurunan (inheritance) dan polymorphism.
Sejarah Singkat UML
UML (Unified Modeling Language) adalah bahasa yang di gunakan dalam permodelan berorientasi object.
UML (Unified Modeling Language) 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 komponen-komponen yang diperlukan dalam sistem software.
Pengenalan UML
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. Seperti halnya
UML adalah sebuah bahasa standard untuk pengembangan sebuah software yang dapat menyampaikan bagaimana membuat dan membentuk model-model, tetapi tidak menyampaikan apa dan kapan model yang seharusnya dibuat yang merupakan salah satu proses implementasi pengembangan software.
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
3 (tiga) macam yang terdapat dalam building block adalah katagori benda/Things, hubungan, dan diagram. Benda/things adalah abstraksi yang pertama dalam sebuah model, hubungan sebagai alat komunikasi dari bendabenda, dan diagram sebagai kumpulan / group dari benda-benda/things.
Konsep Objek
Obyek dalam ‘software analysis & design’ adalah sesuatu berupa konsep (concept), benda (thing), dan sesuatu yang membedakannya dengan lingkungannya. Secara sederhana obyek adalah mobil, manusia, alarm dan lainlainnya. Tapi obyek dapat pula merupakan sesuatu yang abstrak yang hidup didalam sistem seperti tabel, database, event, system messages.
Obyek dikenali dari keadaannya dan juga operasinya. Sebagai contoh sebuah mobil dikenali dari warnanya, bentuknya, sedangkan manusia dari suaranya. Ciriciri ini yang akan membedakan obyek tersebut dari obyek lainnya.
Teknik Dasar OOA/D (Object-Oriented Analysis/Design)
Dalam dunia pemodelan, metodologi implementasi obyek walaupun terikat kaidah-kaidah standar, namun teknik pemilihan obyek tidak terlepas pada subyektifitas software analyst & designer. Beberapa obyek akan diabaikan dan beberapa obyek menjadi perhatian untuk diimplementasikan di dalam sistem. Hal ini sah-sah saja karena kenyataan bahwa suatu permasalahan sudah tentu memiliki lebih dari satu solusi. Ada 3 (tiga) teknik/konsep dasar dalam OOA/D yaitu pemodulan (encapsulation), penurunan (inheritance) dan polymorphism.
Sejarah Singkat UML
UML (Unified Modeling Language) adalah bahasa yang di gunakan dalam permodelan berorientasi object.
UML (Unified Modeling Language) 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 komponen-komponen yang diperlukan dalam sistem software.
Pengenalan UML
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. Seperti halnya
UML adalah sebuah bahasa standard untuk pengembangan sebuah software yang dapat menyampaikan bagaimana membuat dan membentuk model-model, tetapi tidak menyampaikan apa dan kapan model yang seharusnya dibuat yang merupakan salah satu proses implementasi pengembangan software.
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
3 (tiga) macam yang terdapat dalam building block adalah katagori benda/Things, hubungan, dan diagram. Benda/things adalah abstraksi yang pertama dalam sebuah model, hubungan sebagai alat komunikasi dari bendabenda, dan diagram sebagai kumpulan / group dari benda-benda/things.
- Benda/Things
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.
- Interface
merupakan sebuah antar-muka yang menghubungkan dan melayani antar kelas dan
atau elemen. ‘Interface’ / antarmuka mendefinisikan sebuah set / kelompok dari
spesifikasi pengoperasian,
umumnya digambarkan dengan sebuah lingkaran yang disertai dengan namanya.
umumnya digambarkan dengan sebuah lingkaran yang disertai dengan namanya.
-Colaboration
didefinisikan dengan interaksi dan sebuah kumpulan / kelompok dari
kelas-kelas/elemen-elemen yang bekerja secara bersama-sama. Collaborations
mempunyai struktura dan dimensi. Pemberian sebuah kelas memungkinkan
berpartisipasi didalam beberapa collaborations dan
digambarkan dengan sebuah ‘elips’ dengan garis terpotong-potong.
digambarkan dengan sebuah ‘elips’ dengan garis terpotong-potong.
-Use Case
adalah rangkaian/uraian sekelompok yang saling terkait dan membentuk sistem
secara teratur yang dilakukan atau diawasi oleh sebuah aktor. ‘use case’
digunakan untuk membentuk tingkah-laku benda/ things dalam sebuah model serta
di realisasikan oleh sebuah collaboration. Umumnya use case’ digambarkan dengan
sebuah ‘elips’ dengan garis yang solid.
-Node merupakan
fisik dari elemen-elemen yang ada pada saat dijalankannya sebuah sistem,
contohnya adalaha sebuah komputer, umumnya mempunyai sedikitnya memory dan
processor. Sekelompok komponen mungkin terletak pada sebuah node dan juga
mungkin akan berpindah dari node satu ke node lainnya. Umumnya node ini
digambarkan seperti kubus.
- • Hubungan / Relationship
Ada 4 macam hubungan didalam
penggunaan UML, yaitu; dependency, association, generalization,
dan realization.
-Dependency adalah hubungan semantik antara dua
benda/things yang mana sebuah benda berubah mengakibatkan benda satunya akan
berubah pula. Umumnya sebuah dependency digambarkan sebuah panah dengan
garis terputus-putus .
-Association adalah 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 assosiation digambarkan dengan sebuah garis yang
dilengkapi dengan sebuah label, nama,
dan status hubungannya.
-Generalization adalah menggambarkan hubungan khusus
dalam obyek anak/child yang menggantikan obyek parent / induk .
Dalam hal ini, obyek anak memberikan pengaruhnya dalam hal struktur dan tingkah
lakunya kepada obyek induk.
-Realization merupakan hubungan semantik antara
pengelompokkan yang menjamin adanya ikatan diantaranya. Hubungan ini dapat
diwujudkan diantara interface dan kelas atau elements, serta
antara use cases dan collaborations.
• Diagram
UML sendiri terdiri atas pengelompokkan diagram-diagram sistem
menurut aspek atau sudut pandang tertentu. Diagram adalah yang menggambarkan
permasalahan maupun solusi dari permasalahan suatu model. Adapun jenis-jenis
diagram antara lain :
-Use Case Diagram 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 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.
-Component Diagram 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 stateyang berbeda.
-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.
-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.
-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
1.
Memberikan bahasa pemodelan yang
bebas dari berbagai bahas pemrograman dan proses rekayasa.
2.
Menyatukan praktek-praktek terbaik
yang terdapat dalam pemodelan.
3.
Memberikan model yang siap pakai,
bahsa pemodelan visual yang ekspresif untuk mengembangkan dan saling menukar
model dengan mudah dan dimengerti secara umum.
4.
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).
Tidak ada komentar:
Posting Komentar