Kamis, 04 Juni 2020

Pengantar UML(Unified Modeling Language)

 

 

    Hai Reader !! ^^,  kali ini aku akan menjelaskan tentang Unified Modeling Language atau biasa dikenal UML. Design system tidak kalah penting untuk membuat sebuah program, tidak jarang perusahaan - perusahaan besar membutuhkan design system untuk project/program yang mereka buat. Nah sekarang mari kita berkenalan dengan UML, pemodelan design program berorientasi object. Karena tak kenal maka KENALAN ehe canda

Yuk simak dibawah materi tentang UML

 

UML(Unified Modeling Language)

adalah metode pemodelansecaravisual sebagai sarana untuk merancang dan atau membuat software berorientasi objek. Karena UML ini merupakan bahasa visual untuk pemodelanbahasa berorientasi objek, maka semua elemen dan diagramberbasiskan pada paradigma object oriented.UML memberikan standar penulisan sebuah sistem blueprint ,yang meliputi konsep bisnis proses, penulisan kelas-kelas dalambahasa program yang spesifik, skema database, dan komponen-komponen yang diperlukan dalam software.

Sebuah bahasa model adalah sebuah bahasa yang mempunyai vocabulary dan konsep tatanan / aturanpenulisan serta secara fisik mempresentasikan darisebuah sistem. UML adalah sebuah bahasa standar untuk pengembangan software yang dapat menyampaikan bagaimana membuat dan membentuk model-model,tetapi tidak menyampaikan apa dan kapan model yang seharusnya dibuat. UML tidak hanya merupakan sebuah bahasa pemograman visual saja, namun juga dapat secaralangsung dihubungkan ke berbagai bahasa pemograman,seperti JAVA, C++, Visual Basic, atau bahkandihubungkan secara langsung ke dalam sebuah object-oriented database. UML juga dapat digunakan untukmodeling aplikasi prosedural dalam VB atau C. Begitu juga mengenai pendokumentasian dapat dilakukan seperti; requirements, arsitektur,design,source code, project plan,tests, dan prototypes.

 

MENGAPA UML?

Pada masa lalu, UML mempunyai peranan sebagaisoftware blueprint (gambaran) language untuk analisis sistem, designer, dan programmer. Sedangkan pada saatini, merupakan bagian dari software trade (bisnis software). UML memberikan jalur komunikasi dari sistem analis kemudian designer, lalu programmer mengenai rancangan software yang akan dikerjakan. Salah satu pemecahan masalah Object Oriented adalah dengan menggunakanUML. Oleh karena itu orang-orang yang berminat dalam mempelajari UMLharus mengetahui dasar-dasar mengenai Object Oriented Solving; antara lain dengan pembentukan model.

Model adalah gambaran abstrak dari suatu dasar masalah. Dan dunia nyata atau tempat dimana masalah itu timbul bisa disebut dengan domain. Model mengandung obyek-obyek yang beraktifitas dengan saling mengirimkan messages (pesan-pesan). Obyek mempunyai sesuatu yang diketahui(atribut /attributes) dan sesuatu yang dilakukan (behaviors atau operations). Attributes hanya berlaku dalam ruang lingkup obyek itu sendiri (state). Lalu“blue print” dari suatu obyek adalah Classes (kelas). Obyek merupakan bagian-bagian dari kelas.

 

PERKEMBANGAN UML

Sampai era tahun 1990 terdapat puluhan metodologi pemodelan berorientasi objek 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 perancangan berorientasi objek.Masing-masing metodologi membawa notasi sendiri-sendiri, yang mengakibatkan timbul masalah baru apabila kita bekerjasama dengan group/perusahaan lain yang menggunakan metodologi yang berlainan. Dimulai pada bulan Oktober 1994 Booch, Rumbaugh danJacobson, mempelopori usaha untuk penyatuanmetodologi perancangan berorientasi objek.

Pada tahun 1995 direlease draft pertama dari UML (versi0.8). Sejak tahun 1996 pengembangan tersebut dikoordinasikan oleh Object Management Group (OMG – http://www.omg.org). Tahun 1997 UML versi 1.1 muncul, dan saat ini versi terbaru adalah versi 2.0 yang direlease tahun 2005. Sejak saat itulah UML telah menjelma menjadi standar Bahasa pemodelan untuk aplikasi berorientasi objek.

 

KONSEP DASAR UML

Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax /semantik. Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkanberbagai diagram piranti lunak. Setiap bentuk memiliki makna tertentu, dan UML syntax mendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan. Notasi UML terutama diturunkan dari 3 notasi yang telah ada sebelumnya: Grady Booch OOD(Object-Oriented Design), Jim Rumbaugh OMT (ObjectModelling Technique), dan Ivar Jacobson OOSE (Object-Oriented Software Engineering).

 

BUILDING BLOCKS

Untuk dapat memahami UML membutuhkan bentuk konsep darisebuah bahasa model, dan mempelajari 3 elemen utama dariUML, seperti building block , aturan-aturan yang menyatakan bagaimana building block diletakkan secara bersamaan, dan beberapa mekanisme umum (common).

Tiga macam yang terdapat dalam building block adalah

1. Benda/Things; adalah abstraksi yang pertama dalam sebuah model

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.Bentuk dari things ada 5 :

Classes, yang diuraikan sebagai sekelompok dari object yang mempunyai atribute,operasi, hubungan yang semantik. Sebuah kelas mengimplementasikan 1 atau lebih interfaces . Sebuah kelas dapat digambarkan sebagai sebuah persegi panjang, yangmempunyai sebuah nama, atribute, dan metoda pengoperasiannya.

Interfaces, merupakan sebuah antar-muka yang menghubungkan dan melayani antar kelas dan atau elemen. Interface/ antar-muka mendefinisikan sebuah set / kelompokdari spesifikasi pengoperasian, umumnya digambarkan dengan sebuah lingkaran yang disertai dengan namanya. Sebuah antar-muka berdiri sendiri dan umumnya merupakanpelengkap dari kelas atau komponen.

Collaboration,yang didefinisikan dengan interaksi dan sebuah kumpulan / kelompok dari kelas-kelas / elemen-elemen yang bekerja secara bersama-sama. Collaborations mempunyai struktur dan dimensi. Pemberian sebuah kelas memungkinkan berpartisipasi didalam beberapa collaborations dan digambarkan dengan sebuah‘ elips’ dengan garis terpotong-potong.

Use cases, adalah rangkaian/uraian sekelompok yang saling terkait dan membentuk sistem secara teratur yang dilakukan atau diawasioleh  sebuah aktor. ‘use case’ digunakan untuk membentuk tingkah-laku benda /things dalam sebuah model serta direalisasikan oleh sebuah collaboration . Umumnya ‘use case’ digambarkan dengansebuah ‘elips’ dengan garis yang solid, biasanya mengandung nama.

Nodes,merupakan fisik dari elemen-elemen yang adapada saat dijalankannya sebuah sistem, contohnya adalah sebuah komputer, umumnya mempunyaisedikitnya memory dan processor. Ke kelompok komponen mungkin terletak pada sebuah node dan juga mungkin akan berpindah dari node satu ke nodelainnya. Umumnya node ini digambarkan seperti kubusserta hanya mengandung namanya.

 

2.Hubungan/Relationships; sebagai alat komunikasi dari benda-benda

Ada 4 macam hubungan dalam penggunaan UML :

Dependency, adalah hubungan semantik antara dua benda/ things dimana sebuah benda berubah mengakibatkan benda satunya akan berubah pula. Umumnya sebuah dependency digambarkan dengan sebuah panah dengan garis terputus-putus.

Association, 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 association digambarkan dengan sebuah garis yang dilengkapi dengan sebuah label, nama, dan status hubungannya.

Generalizations, menggambarkan hubungan khususdalam obyek anak/ child yang menggantikan obyek parent / induk. Dalam hal ini, obyek anak memberikan pengaruhnya dalam hal struktur dan tingkah lakunya kepada obyek induk. Digambarkan dengan garis panah.

Realizations, merupakan hubungan semantik antara pengelompokan yang menjamin adanya ikatan diantaranya. Hubungan ini dapat diwujudkan diantara interface dan kelas atau elements , serta antara usecases dan collaborations.

 

3.Bagan/Diagrams; sebagai kumpulan / group dari benda-benda/things

UML terdiri atas pengelompokan diagram-diagram sistem menurut aspekatau sudut pandang tertentu. Diagram menggambarkan permasalahan maupun solusi dari permasalahan suatu model.

UML mempunyai 8 diagram, yaitu:

-Diagram Use Case

-Diagram Class

-Diagram Package

-Diagram Sequence

-Diagram Collaboration

-Diagram StateChart

-Diagram Activity

-Diagram Deployment