Unified Modeling Language
(UML) adalah bahasa spesifikasi
standar untuk mendokumentasikan, menspesifikasikan, dan membangun sistem perangkat
lunak.
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.
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.
Diagram UML
UML menyediakan 10 macam diagram untuk
memodelkan aplikasi berorientasi objek, yaitu:
- Use Case Diagram untuk memodelkan proses bisnis.
- Conceptual Diagram untuk memodelkan konsep-konsep yang ada di dalam aplikasi.
- Sequence Diagram untuk memodelkan pengiriman pesan (message) antar objects.
- Collaboration Diagram untuk memodelkan interaksi antar objects.
- State Diagram untuk memodelkan perilaku objects di dalam sistem.
- Activity Diagram untuk memodelkan perilaku Use Cases dan objects di dalam system.
- Class Diagram untuk memodelkan struktur kelas.
- Object Diagram untuk memodelkan struktur object.
- Component Diagram untuk memodelkan komponen object.
- Deployment Diagram untuk memodelkan distribusi aplikasi.
Berikut akan dijelaskan 4 macam
diagram yang paling sering digunakan dalam pembangunan aplikasi berorientasi
object, yaitu use case diagram, sequence diagram, collaboration diagram, dan class diagram.
Use Case Diagram
Use case diagram digunakan untuk memodelkan bisnis proses
berdasarkan perspektif pengguna sistem. Use case diagram terdiri atas diagram
untuk use case dan actor. Actor merepresentasikan orang yang akan
mengoperasikan atau orang yang berinteraksi dengan sistem aplikasi.
Use case merepresentasikan
operasi-operasi yang dilakukan oleh actor. Use case digambarkan
berbentuk elips
dengan nama
operasi
dituliskan di dalamnya. Actor yang melakukan operasi dihubungkan dengan
garis lurus ke use case.
Sequence Diagram
Diagram Class dan diagram Object
merupakan suatu gambaran model statis.Namun ada juga yang bersifat dinamis,
seperti Diagram Interaction.Diagram sequence merupakan salah satu diagram
Interaction yangmenjelaskan bagaimana suatu operasi itu dilakukan; message
(pesan) apa yang dikirimdan kapan pelaksanaannya. Diagram ini diatur
berdasarkan waktu. Obyek-obyek yang berkaitan dengan proses berjalannya operasi
diurutkan dari kiri ke kanan berdasarkan waktu terjadinya dalam pesan yang
terurut.
Collaboration Diagram
Collaboration diagram dipakai untuk memodelkan interaksi antar
object di dalam sistem.Berbeda dengan sequence diagram yang lebih menonjolkan
kronologis dari operasi-operasi yang dilakukan, collaboration diagram lebih
fokus pada pemahaman atas keseluruhan operasi yang dilakukan oleh object.
Class Diagram
Class diagram menggambarkan
struktur statis class di dalam sistem. class merepresentasikan sesuatu yang
ditangani oleh sistem. class dapat berhubungan dengan yang lain melalui
berbagai cara: associated (terhubung satu sama lain), dependent (satu class
tergantung/menggunakan class yang lain), specialed (satu class merupakan
spesialisasi dari class lainnya), atau package (group bersama sebagai satu
unit). sebuah sistem biasanya mempunyai beberapa class diagram.
Langkah-langkah penggunaan Unified Modeling Language (UML)
Adapun langkah-langkah
penggunaan Unified Modeling Language (UML) [Afif02] diantaranya sebagai
berikut :
- Buatlah daftar business process dari level tertinggi untuk mendefinisikan aktivitas dan proses yang mungkin muncul.
- Petakan use case untuk setiap business process untuk mendefinisikan dengan tepat fungsional yang harus disediakan oleh sistem, kemudian perhalus use case diagram dan lengkapi dengan requirement, constraints dan catatan-catatan lain.
- Buatlah deployment diagram secara kasar untuk mendefinisikan arsitektur fisik sistem.
- Definisikan requirement lain non fungsional, security dan sebagainya yang juga harus disediakan oleh sistem.
- Berdasarkan use case diagram, mulailah membuat activity diagram.
- Definisikan obyek-obyek level atas package atau domain dan buatlah sequence dan/atau collaboration utuk tiap alir pekerjaan, jika sebuah use case memiliki kemungkinan alir normal dan error, buat lagi satu diagram untuk masing-masing alir.
- Buatlah rancangan user interface model yang menyediakan antarmuka bagi pengguna untuk menjalankan skenario use case.
- Berdasarkan model-model yang sudah ada, buatlah class diagram. Setiap package atau domain dipecah menjadi hirarki class lengkap dengan atribut dan metodenya. Akan lebih baik jika untuk setiap class dibuat unit test untuk menguji fungsionalitas class dan interaksi dengan class lain.
- Setelah class diagram dibuat, kita dapat melihat kemungkinan pengelompokkan class menjadi komponen-komponen karena itu buatlah component diagram pada tahap ini. Selain itu, definisikan test integrasi setiap komponen untuk meyakinkan ia dapat bereaksi dengan baik.
- Perhalus deployment diagram yang sudah dibuat. Detailkan kemampuan dan requirement piranti lunak, sistem operasi, jaringan dan sebagainya. Petakan komponen ke dalam node.
- Mulailah membangun sistem. Ada dua pendekatan yang tepat digunakan:
- Pendekatan use case dengan mengassign setiap use case kepada tim pengembang tertentu untuk mengembangkan unit kode yang lengkap dengan test.
- Pendekatan komponen yaitu mengassign setiap komponen kepada tim pengembang tertentu.
- Lakukan uji modul dan uji integrasi serta perbaiki model beserta codenya. Model harus selalu sesuai dengan code yang aktual.
- Perangkat lunak siap dirilis
Ruang Lingkup UML
Dalam kerangka spesifikasi, Unified
Modeling Language (UML) menyediakan model-model yang tepat [Adin05], tidak
mendua arti (ambigu) serta lengkap.
Secara khusus, Unified
Modeling Language (UML) menspesifikasikan langkah-langkah penting dalam pengambilan keputusan analisis,
perancangan serta implementasi dalam sistem yang sangat bernuansa perangkat
lunak (software intensive system).
Dalam hal ini, Unified
Modeling Language (UML) bukanlah merupakan bahasa pemprograman tetapi
model-model yang tercipta berhubungan langsung dengan berbagai macam bahasa
pemprograman, sehingga adalah mungkin melakukan pemetaan (mapping)
langsung dari model-model yang dibuat dengan Unified Modeling Language (UML)
dengan bahasa-bahasa pemprograman berorientasi obyek, seperti Java,
Borland Delphi, Visual Basic, C++, dan lain-lain.
Pemetaan (mapping) Unified Modeling Language (UML) bersifat dua
arah yaitu :
- Generasi kode bahasa pemprograman tertentu dari Unified Modeling Language (UML) forward engineering.
- Generasi kode belum sesuai dengan kebutuhan dan harapan pengguna, pengembang dapat melakukan langkah balik bersifat iterative dari implementasi ke Unified Modeling Language (UML) hingga didapat sistem/peranti lunak yang sesuai dengan harapan pengguna dan pengembang.
Referensi:
-FEBISARFINA-
Tidak ada komentar:
Posting Komentar