Unified Modeling Language

Unified Modeling Language (UML) adalah bahasa spesifikasi baku untuk mendokumentasikan, menspesifikasikan, dan membangun sistem perangkat lunak.

 Sejarah 

 Latar Belakang 
jmpl|Diagram perkembangan UML
Pada 1994, lebih dari 50 metode diperkenalkan untuk mendukung pengembangan perangkat lunak berorientasi objek. Keberagaman ini menimbulkan masalah tersendiri bagi para praktisinya, khususnya tidak ada satupun yang dapat memenuhi seluruh kebutuhan pengembangan dan perbedaan notasi, proses, dan alat pendukung setiap metode.

Hanya segelintir metode yang mendapat perhatian, khususnya Object-Oriented Design (OOD), Object Modeling Technique (OMT), dan Object-Oriented Software Engineering (OOSE). OOD dikembangkan oleh Grady Booch, OMT dikembangkan oleh James Rumbaugh, dan OOSE dikembangkan oleh Ivar Jacobson—ketiganya dikenal sebagai "three Amigos".

 Pengembangan 
Pada Oktober 1994, demi mengakhiri perbedaan metode, Booch dan Rumbaugh berkolaborasi untuk menyatukan metode OOD dan OMT. Kolaborasi tersebut menghasilkan Unified Method versi 0.8, dirilis terbuka sebagai draf pada Oktober 1995. Pada tahun yang sama, Jacobson bergabung dengan mereka dan memperlebar lingkup Unified Method dengan metodenya sendiri, khususnya ide kasus penggunaan (use case).

Menyadari bahwa hasilnya lebih cocok untuk membuat bahasa pemodelan, mereka membagi Unified Method menjadi dua buah: notasi Unified Modeling Language (UML) yang mereka lanjutkan, dan proses Rational Unified Process yang dilanjutkan oleh rekan-rekannya. Mereka melanjutkan UML, sementara RUP dilanjutkan oleh rekan-rekannya. Pada Juni 1996, UML mencapai versi 0.9.

 Pendahuluan 
Unified Modeling Language (UML) adalah himpunan struktur dan teknik untuk pemodelan desain program berorientasi objek (OOP) serta aplikasinya.David M. Kroenke, Database Processing Jilid 1 edisi 9, halaman 60. Erlangga. 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.Rama, Jones, Sistem Informasi Akuntansi halaman 78. Salemba. 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.

 UML 
Sampai era tahun 1990 puluhan metodologi pemodelan berorientasi objek telah bermunculan di dunia.Sri Dharwiyanti (2003), Pengantar Unified Modeling Language (UML), IlmuKomputer.Com. 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).

 Diagram UML 
UML menyediakan 10 macam diagram untuk memodelkan aplikasi berorientasi objek, yaitu:Ir. M. FARID AZIS, M. Kom, Object Oriented Programming Php 5, halaman 118. Elex Media Komputindo.

 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 semua 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 
Sequence Diagram merupakan gabungan dari Diagram Class dan diagram Object yang memiliki suatu gambaran model statis.Namun ada juga yang bersifat dinamis, seperti Diagram Interaction.Diagram sequence merupakan salah satu diagram Interaction yang menjelaskan bagaimana suatu operasi itu dilakukan; message (pesan) apa yang dikirimdan kapan pelaksanaannya. Diagram ini diatur berdasarkan waktu. Objek-objek 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.

 Referensi 

 Daftar pustaka 




 Pranala luar 
 Situs resmi UML
 Situs resmi Object Management Group
 https://web.archive.org/web/20160527160225/https://www.infoq.com/interviews/Ivar_Jacobson/
 https://dl.acm.org/doi/10.1145/317665.317673
 https://www.e-booksdirectory.com/details.php?ebook=6499

Kategori:Notasi

Kategori:Pengembangan perangkat lunak
Kategori:Diagram UML