UNIFIED MODELING LANGUAGE (UML)
A. Pengertian UML
Unified Modeling Language (UML) adalah bahasa pemodelan umum yang digunakan untuk melakukan spesifikasi, visualisasi, konstruksi dan dokumentasi artifak dari software system. UML bukanlah sebuah standar proses pengembangan dalam metode pengembangan sistem tertentu, namun pada umumnya UML dipakai dalam memodelkan sistem yang dibangun berbasiskan objek.
Pemodelan (modeling) adalah proses merancang piranti lunak sebelum melakukan pengkodean (coding). Model piranti lunak dapat dianalogikan seperti pembuatan blueprint pada pembangunan gedung. Membuat model dari sebuah sistem yang kompleks sangatlah penting karena kita tidak dapat memahami sistem semacam itu secara menyeluruh. Semakin komplek sebuah sistem, semakin penting pula penggunaan teknik pemodelan yang baik. 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.
B. Sejarah UML
Sejarah UML sendiri cukup panjang, sampai era tahun 1990 seperti kita ketahui puluhan metodologi pemodelan berorientasi objek telah bermunculan di dunia. Di antaranya adalah : metodologi Booch [1], metodologi Coad [2], metodologi OOSE [3], metodologi OMT [4], metodologi Shlaer - Mellor [5], metodologi Wirfs - Brock [6], dan sebagainya. 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 group / perusahaan lain yang menggunakan metodologi yang berlainan. Di mulai 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. tahun 1997 UML versi 1.1 muncul, dan saat ini versi terbaru adalah versi 1.5 yang dirilis bulan Maret 2003.
UML lahir dari penggabungan banyak bahasa pemodelan grafis berorientasi objek yang berkembang pesat pada akhir 1980 - an dan awal 1990 - an. Sejak kehadirannya pada tahun 1997, UML mengahancurkan menara Babel tersebut menjadi sejarah. Booch, Rumbaugh dan Jacobson menyusun tiga buku serial tentang UML pada tahun 1997 [7] [8] [9]. Sejak saat itulah UML telah menjelma menjadi standar bahasa pemodelan untuk aplikasi berorientasi objek.
Asal - Usul UML
C. 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 mepresentasikan 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 junga 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).
Tools yang mendukung UML
Saat ini banyak sekali tool
pendesainan yang mendukung UML, baik itu tool komersial maupun opensource.
Beberapa diantaranya adalah:
- <!--[if !supportLists]-->Ø <!--[endif]--> Rational Rose (www.rational.com)
- <!--[if !supportLists]-->Ø <!--[endif]--> Together (www.togethersoft.com)
- < !--[if !supportLists]-->Ø <!--[endif]--> Object Domain (www.objectdomain.com)
- < !--[if !supportLists]-->Ø <!--[endif]--> Jvision (www.object-insight.com)
- < !--[if !supportLists]-->Ø <!--[endif]--> Objecteering (www.objecteering.com)
- < !--[if !supportLists]-->Ø <!--[endif]--> MagicDraw (www.nomagic.com/magicdrawuml)
- < !--[if !supportLists]-->Ø <!--[endif]--> Visual Object Modeller (www.visualobject.com)
D. Tujuan UML
UML (Unified Modeling Language) mungkin masih asing di telinga kita. UML adalah bahasa yang telah distandarisasi untuk digunakan dalam memodelkan suatu software atau sistem. Selain UML terdapat beberapa metode seperti Booch Method oleh Grady Booch, Object-Oriented Software Engineering (OOSE) oleh Ivar Jacobson, dan Object Modeling Technique (OMT) oleh James Rambaugh. Masing masing metode mempunyai kelebihan dan kelemahan masing-masing. UML sendiri dikembangkan oleh ketiga orang tersebut yang versi pertamanya dirilis pada bulan Juni 1996. UML bukan bahasa pemrograman secara visual, tetapi modelnya dapat dihubungkan secara langsung dengan bermacam-macam bahasa pemrograman. Ini berarti bahwa terdapat kemungkinan untuk memetakan model yang dibuat dengan UML menjadi sebuah bahasa pemrograman seperti Java, C++, atau Visual Basic bahkan ke dalam tabel-tabel basis data. Hal-hal yang sebaiknya diungkapkan secara grafis dilakukan di dalam UML, sedangkan hal-hal yang sebaiknya diungkapkan secara tekstual dilakukan di dalam bahasa pemrograman.
Tujuan dari UML, sebagaimana yang dinyatakan oleh perancangnya adalah:
Sebagai sebuah bahasa pemodelan object-oriented, seluruh elemen dan diagram di
UML berdasarkan pola object-oriented. Gambaran utama mengenai object-oriented
adalah:
* Object-oriented adalah sebuah teknologi untuk memproduksi model yang mewakili suatu bagian, seperti bagian mesin atau bagian logika.
* Model-model object - oriented sudah dibuat dengan benar, mudah untuk berkomunikasi, diubah, diperluas, divalidasi dan diverifikasi.
* Ketika konsep object - oriented telah dibuat dengan benar, sistem tersebut fleksibel untuk diubah, mempunyai arsitektur yang didefinisikan dengan bagus, menyediakan kesempatan untuk membuat dan mengimplementasikan komponen yang dapat digunakan kembali.
* Model yang telah dibuat dengan konsep object-oriented sebaiknya dikembangkan dengan menggunakan bahasa pemrograman yang mendukung object-oriented.
Programmer pemula, ketika akan membuat sebuah software (walaupun kecil), biasanya langsung mengetikkan kode tanpa "berpikir" terlebih dahulu. Berpikir disini bukan hanya memikirkan alur program, kemudian coding. Tetapi juga membuat model dari software yang akan kita buat. Keuntungannya adalah, apabila kita sudah memodelkan software yang akan kita buat, pekerjaan kita lebih teratur dan terarah karena apa-apa saja yang akan dibuat telah dimodelkan, sehingga kita mengetikkan kode sesuai dengan model software kita. Selain itu, ketika suatu saat ternyata logika pemrograman kita salah, maka bisa dilihat kembali model yang telah kita buat, dicek kesalahannya dimana. Jadi, kita tidak perlu bersusah payah mengartikan lagi seluruh kode yang kita buat. Kalau kodenya masih beberapa baris mungkin bisa ditelaah, tetapi kalau sudah mencapai ratusan bahkan ribuan?
E. Mekanisme Umum Pemodelan UML
Mekanisme pembangunan model, menggunakan :
( Astari Saraswati, NIM : 11113023 )
UML (Unified Modeling Language) mungkin masih asing di telinga kita. UML adalah bahasa yang telah distandarisasi untuk digunakan dalam memodelkan suatu software atau sistem. Selain UML terdapat beberapa metode seperti Booch Method oleh Grady Booch, Object-Oriented Software Engineering (OOSE) oleh Ivar Jacobson, dan Object Modeling Technique (OMT) oleh James Rambaugh. Masing masing metode mempunyai kelebihan dan kelemahan masing-masing. UML sendiri dikembangkan oleh ketiga orang tersebut yang versi pertamanya dirilis pada bulan Juni 1996. UML bukan bahasa pemrograman secara visual, tetapi modelnya dapat dihubungkan secara langsung dengan bermacam-macam bahasa pemrograman. Ini berarti bahwa terdapat kemungkinan untuk memetakan model yang dibuat dengan UML menjadi sebuah bahasa pemrograman seperti Java, C++, atau Visual Basic bahkan ke dalam tabel-tabel basis data. Hal-hal yang sebaiknya diungkapkan secara grafis dilakukan di dalam UML, sedangkan hal-hal yang sebaiknya diungkapkan secara tekstual dilakukan di dalam bahasa pemrograman.
Tujuan dari UML, sebagaimana yang dinyatakan oleh perancangnya adalah:
- Memodelkan sistem (dan bukan hanya perangkat lunak) menggunakan konsep object-oriented.
- Membuat sebuah bahasa pemodelan yang dapat digunakan baik oleh manusia maupun oleh mesin.
* Object-oriented adalah sebuah teknologi untuk memproduksi model yang mewakili suatu bagian, seperti bagian mesin atau bagian logika.
* Model-model object - oriented sudah dibuat dengan benar, mudah untuk berkomunikasi, diubah, diperluas, divalidasi dan diverifikasi.
* Ketika konsep object - oriented telah dibuat dengan benar, sistem tersebut fleksibel untuk diubah, mempunyai arsitektur yang didefinisikan dengan bagus, menyediakan kesempatan untuk membuat dan mengimplementasikan komponen yang dapat digunakan kembali.
* Model yang telah dibuat dengan konsep object-oriented sebaiknya dikembangkan dengan menggunakan bahasa pemrograman yang mendukung object-oriented.
Programmer pemula, ketika akan membuat sebuah software (walaupun kecil), biasanya langsung mengetikkan kode tanpa "berpikir" terlebih dahulu. Berpikir disini bukan hanya memikirkan alur program, kemudian coding. Tetapi juga membuat model dari software yang akan kita buat. Keuntungannya adalah, apabila kita sudah memodelkan software yang akan kita buat, pekerjaan kita lebih teratur dan terarah karena apa-apa saja yang akan dibuat telah dimodelkan, sehingga kita mengetikkan kode sesuai dengan model software kita. Selain itu, ketika suatu saat ternyata logika pemrograman kita salah, maka bisa dilihat kembali model yang telah kita buat, dicek kesalahannya dimana. Jadi, kita tidak perlu bersusah payah mengartikan lagi seluruh kode yang kita buat. Kalau kodenya masih beberapa baris mungkin bisa ditelaah, tetapi kalau sudah mencapai ratusan bahkan ribuan?
E. Mekanisme Umum Pemodelan UML
Mekanisme pembangunan model, menggunakan :
- Spesification : penjelasanrinci dari suatu model / elemen model
- Adomments : notasi yang menyediakan respresentasi visual dari aspek - aspek penting lain
- Common divisions :pembedaan antara kelas dan objek , pemisahan antara interface dan implementasi
- extensibility mechanisme : untuk mengembangkan model yang ada : Stereotypes (unsur pembangun baru), Tagged values (menambah properti dari unsur pembangun baru), Constraints (batasan - batasan antara entitas dalam model).
( Astari Saraswati, NIM : 11113023 )
Good artikel
BalasHapusMy blog
artikel yang bermanfaat
BalasHapusMy blog