1. PENDAHULUAN
1 . 1 Latar Belakang
UML
( Unified Modeling Language ) adalah
‘bahasa’ pemodelan untuk sistem atau perangkat lunak yang berparadigma
‘berorientasi objek’. Pemodelan (modeling) sesungguhnya digunakan untuk
penyederhanaan permasalahan – permasalahan yang kompleks sedemikian rupa
sehingga lebih mudah di pahami dan di pelajari. Adapun tujuan pemodelan ( dalam
kerangka pengembangan sistem / perangkat lunak aplikasi ) yaitu sebagai sarana
analisis , pemahaman , visualisasi , dan komunikasi antar anggota tim
pengembang , serta sebagai sarana dokumentasi.
Pemodelan
perangkat lunak ( software modeling )
bekerja dengan cara yang cukup serupa layaknya seorang arsitek atau insinyur
yang akan membuat sebuah bangunan / gedung yang berskala besar. Dalam hal ini ,
kita bisa menggambarkan komponen – komponen perangkat lunak dalam bentuk –
bentuk geometri tertentu , misalnya untuk menggambarkan suatu kelas ( class ) dalam perangkat lunak , kita
bisa menggunakan dalam bentuk geometri empat – persegi – panjang; untuk
menggambarkan hubungan antar kelas ( asosiasi ) , kita dapat menggunakan bentuk
geometri garis – lurus.
1 . 2 Tujuan
Tujuan
pembuatan ini adalah untuk menyelesaikan tugas membuat laporan buku tentang UML
dan memberikan informasi dan pemahaman tentang UML ( Unified Modeling Language ).
2. Kajian
Pustaka
Bahasa pemodelan
berorientasi objek muncul antara sekitar pertengahan tahun 1970-an dan akhir
tahun 1980-an yang dikenal dengan bahasa pemograman berorientasi objek dan
aplikasi komplek yang berkembang, yang dimulai untuk eksperimen dengan
pendekatan alternatif untuk analisis dan desain. Sejumlah metode berorientasi
objek bertambah dari kurang lebih 10 sampai lebih dari 50 selama periode 1989
dan 1994. Beberapa user pengguna metode ini menemukan permasalahan dalam bahasa
pemodelan ini yang dibutuhkan mereka untuk kelengkapan, sehingga timbul yang
dinamakan perang metode. Belajar dari pengalaman, metode generasi baru mulai
muncul dengan metode yang terkemuka, seperti Booch, Jacobson’s OOSE (Object Oriented Software Engineering) dan Rumbaugh’s OMT (Object Modelling Technique). Metode penting lainya seperti Fusion,
Shler_mellor dan Coad-Yourdan. Setiap metode ini merupakan metode yang lengkap,
meskipun setiap metode diakui memiliki kelebihan dan kekurangan. Dalam waktu
yang singkat metode Booch paling terasa dalam mendesain dan membangun tahapan
project,OOSE memberikan dukungan yang baik untuk use cases seperti cara untuk
menjalankan permintaan, analisis dan desain level tinggi, dan OMT-2 sangat berguna
untuk analisis dan sistem informasi data intensif.
Banyak ide-ide yang
kritis dimulai dari pertengahan tahun 1990-an ketika Grady Booch (Relational Software Corporation), Ivar
Jacobson (Objectory) dan James Rumbaugh (General Electric) mulai mengadopsi ide-ide dari metode lainnya yang
dikumpulkan yang akhirnya diakui sebagai Metode Object Oriented yang mudah
diseluruh dunia. Kemudian mereka termotivasi untuk membangun UML(Unified Modelling Language).
UML dimulai secara
resmi pada oktober 1994, ketika Rumbaugh bergabung dengan Booch pada Relational
Software Coorporation. Proyek ini mengfokuskan pada penyatuan metode Booch dan
OMT. Versi 0.8 merupakan Metode Penyatuan yang direlease pada bulan oktober
1995. Dalam waktu yang sama Jacobson bergabung dengan Ralational dan cakupan
dari UML semakin luas sampai diluar perusahaan OOSE. Dokumentasi UML versi 0.9
akhirnya direlease pada bulan Juni 1996. Meskipun pada tahun 1996 ini melihat
dan menerima feedback dari komunitas Software
Engineering. Dalam waktu tersebut menjadi lebih jelas bahwa beberapa
organisasi software melihat kalau UML merupakan strategi dari bisnisnya.
Kemudian dibangunlah UML Consortium
dengan beberapa organisasi yang akan menyumbangkan sumber dayanya untuk bekerja
mengembangkan dan melengkapi UML.
Disini beberapa patner
yang berkontribusi pada UML 1.0 diantaranya Digital
Equipment Corporation, Hewlett-packard, I-Logix, Intellicorp, IBM, ICON
Computing, MCI Systemhouse, Microsoft, Oracle, Relational, Texas Instruments
dan Unisys. Dari Colaboration ini dihasilkan UML 1.0 yang merupakan bahasa
pemodelan yang ditetapkan secara baik, Expressive, kuat dan cocok untuk
lingkungan masalah yang luas. UML 1.0 ditawarkan menjadi standarisasi dari
Object Management Group (OMG).
Dan pada januari 1997 sebagai standar bahasa pemodelan. Antara Januari – Juli
1997 Gabungan group tersebut memperluas kontribusinya sebagai hasil respon dari
OMG dengan memasukkan Adersen Consulting, Ericsson, ObjectTimeLimeted, Platinum
Technology,Ptech, Reich Technologies, Softeam, Sterling Software dan Taskon.
Revisi dari versi UML(versi 1.1) ditawarkan kepada OMG sebagai standarisasi
pada bulan juli 1997. Dan pada bulan September 1997 versi ini dierima oleh OMG
Analysis dan Design Task Force(ADTF) dan OMG ArchitectureBoard. Dan Akhirnya
pada Juli 1997 UML versi 1.1 menjadi standarisasi. Pemeliharaan UML terus
dipegang oleh OMG Revision Task Force(RTF) yang dipimpin oleh Cris Kobryn. RTP
merilis editorial dari UML 1.2 pada Juni 1998. Dan pada tahun 1998 RTF juga
merilis UML 3.1 dengan disertai dengan user guide dan memberikan technical
cleanup.
3. Gambaran
Umum
UML
adalah salah satu tool / model untuk merancang pengembangan software yang
berbasis object oriented. UML sendiri juga memberikan standar penulisan sebuah
sistem blue print, yang meliputi konsep bisnis proses, penulisan kelaskelas
dalam bahasa program yang spesifik, skema database, dan komponen komponen
yang diperlukan dalam sistem software.
UML
sebagai sebuah bahasa yang memberikan vocabulary dan tatanan penulisan
katakata 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. UML adalah sebuah
bahasa standar 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,
aturanaturan yang menyatakan bagaimana building block diletakkan secara
bersamaan, dan beberapa mekanisme umum (common).
·
UML sebagai Bahasa Pemodelan
UML
merupakan Bahasa pemodelan yang memiliki pembendaharaan kata dan cara untuk
mempresentasikan secara fokus pada konseptual dan fisik dari suatu sistem.
Contoh untuk sistem software yang intensive membutuhkan bahasa yang menunjukkan
pandangan yang berbeda dari arsitektur sistem, ini sama seperti
menyusun/mengembangkan software development life cycle. Dengan UML akan
memberitahukan kita bagaimana untuk membuat dan membaca bentuk model yang baik,
tetapi UML tidak dapat memberitahukan model apa yang akan dibangun dan kapan
akan membangun model tersebut. Ini merupakan aturan dalam software development
process.
·
UML sebagai bahasa untuk
Menggambarkan Sistem(Visualizing)
UML
tidak hanya merupakan rangkaian simbol grafikal, cukup dengan tiap simbol pada
notasi UML merupakan penetapan simantik yang baik. Dengan cara ini, satu
pengembang dapat menulis model UML dan pengembang lain atau perangkat yang sama
lainnya dapat mengartikan bahwa model tersebut tidak ambigu. Hal ini akan
mengurangi error yang terjadi karena perbedaan bahasa dalam komunikasi model
konseptual dengan model lainnya.
UML
menggambarkan model yang dapat dimengerti dan dipresentasikan ke dalam model
tekstual bahasa pemograman. Contohnya kita dapat menduga suatu model dari
sistem yang berbasis web tetapi tidak secara langsung dipegang dengan
mempelajari code dari sistem. Dengan model UML maka kita dapat memodelkan suatu
sistem web tersebut dan dipresentasikan ke bahasa pemogranan.
UML
merupakan suatu model ekaplisit yang menggambarkan komunikasi informasi pada
sistem. Sehingga kita tidak kehilangan informasi code implementasi yang hilang
dikarenakan developer memotong coding dari implementasi.
·
UML sebagai bahasa untuk
Menspesifikasikan Sistem (Specifying)
Maksudnya membangun model yang sesuai, tidak ambigu
dan lengkap. Pada faktanya UML menunjukan semua spesifikasi keputusan analisis,
desin dan implementasi yang penting yang harus dibuat pada saat pengembangan
dan penyebaran dari sistem software intensif.
·
UML sebagai bahasa untuk Membangun
Sistem(Constructing)
UML bukan bahasa
pemograman visual, tetapi model UML
dapat dikoneksikan secara langsung pada bahasa pemograman visual. Maksudnya
membangun model yang dapat dimapping ke bahasa pemograman seperti java, C++,
VB atau tabel pada database relational
atau penyimpanan tetap pada database berorientasi objek.
·
UML sebagai bahasa untuk
Pendokumentasian Sistem (Documenting)
Maksudnya UML menunjukan dokumentasi dari arsitektur
sistem dan detail dari semuanya.UML hanya memberikan bahsa untuk memperlihatkan
permintaan dan untuk tes. UML menyediakan bahasa untuk memodelkan aktifitas
dari perencanaan project dan menejemen pelepasan (release management).
Area Penggunaan UML
UML
digunakan paling efektif pada domain seperti :
-
Sistem Informasi Perusahaan
-
Sistem Perbankan dan Perekonomian
-
Bidang Telekomunikasi
-
Bidang Transportasi
-
Bidang Penerbangan
-
Bidang Perdagangan
-
Bidang Pelayanan Elekronik
-
Bidang Pengetahuan
-
Bidang Pelayanan Berbasis Web
Terdistribusi
Namun
UML tidak terbatas untuk pemodelan software. Pada faktanya UML banyak untuk
memodelkan sistem nonsoftware seperti:
-
Aliran kerja pada sistem perundangan.
-
Struktur dan Kelakuakn dari sistem
Kepedulian Kesehatan Pasien
-
Desain
Hardware dll.
4. Isi
UML terdiri atas pengelompokkan
diagram – diagram sistem menurut aspek atau sudut pandang tertentu. Diagram
adalah yang menggambarkan permasalahan maupun solusi dari permasalahan suatu
model. Diagram berbentuk grafik yang menunjukan simbol elemen model yang
disusun utuk mengilustrasikan bagain atau aspek tertentu dari sistem. Sebuah
model sistem biasanya mempunyai beberapa diagram untuk setiap jenisnya. UML memiliki 9 diagram yaitu :
·
Diagram Use Case
Menggambarkan sejumlah eksternal
actor dan hubungannya ke Use Case yang diberikan oleh sistem. Use Case
digambarkan hanya yang dilihat dari luar oleh actor (keadaan lingkungan sistem
yang dilihat user) dan bagaimana fungsi yang ada didalam sistem.
·
Diagram Class
Memberikan pandangan secara luas
dari suatu sistem dengan menunjukkan kelas – kelasnya dan hubungan mereka.
Diagram class bersifat statis yaitu menggambarkan hubungan apa yang terjadi
buakn apa yang terjadi jika mereka berhubungan. Class dapat dihubungkan dengan
lainnya melalui sejumlah cara : assasiated (terhubung satu dengan yang lain),
dependent (satu class tergantung / menggunakan class yang lainnya),
specialiized (satu class merupakan spesialisasi dari class lainnya), atau
packaged (grup bersama sebagai suatu unit).
·
Diagram Package
Untuk mengatur pengorganisasian
diagram class yang kompleks , dapat dilakukan pengelompokkan kelas – kelas
berupa package ( paket – paket ). Package merupakan kumpulan elemen – elemen
logika UML.
·
Diagram Sequence
Merupakan salah satu diagram
interaction yang menjelaskan bagaimana suatu operasi itu dilakukan. Message (
pesan ) apa yang dikirim dan kapan pelaksanaannya. Objek – objek yang berkaitan
dengan proses berjalannya operasi diurutkan dari kiri ke kanan berdasarkan
waktu terjadinya dalam pesan yang terurut.
·
Diagram Collaboration
Menggambarkan kolaborasi dinamis
seperti sequence diagram. Dalam menjukkan pertukaran pesan, collaboration
diagram menggambarkan object dan hubungannya (mengacu ke konteks). Jika
penekanannya pada waktu atau urutan gunakkan sequence diagram, tetapi jika
penekanannya pada konteks gunakan collaboration diagram.
·
Diagram StateChart
Menggambarkan semua state
(kondisi) yang dimiliki oleh suatu object dari suatu class dan kejadian yang
menyebabkan state berubah secara dinamis.
·
Diagram Activity
Menggambarkan rangkaian aliran
dari aktivitas, digunakkan untuk mendeskripsikan aktivitas yang dibentuk dalam
suatu operasi sehingga dapat juga digunakan untuk aktivitas lainnya seperti use
case atau interaksi.
·
Diagram Deployment
Menerangkan
bahwa konfigurasi fisik software dan hardware.
Menggambarkan arsitektur fisik dari perangkat keras dan perangkat lunak
sistem, menunjukkan hubungan komputer dengan perangkat (nodes) satu sama lain
dan jenis hubungannya. Di dalam nodes, executable, component dan object yang
dialokasikan untuk memperlihatkan unit perangkat lunak yang dieksekusi oleh
node tertentu dan ketergantungan komponen.
5. Kesimpulan
dan Saran
UML
adalah sebuah bahasa standar untuk pengembangan sebuah software yang dapat
menyampaikan bagaimana membuat dan membentuk modelmodel, tetapi tidak
menyampaikan apa dan kapan model yang seharusnya dibuat yang merupakan salah
satu proses implementasi pengembangan software. Jadi , dalam membuat suatu
konsep dalam sebuah sistem dapat menggunakan UML karena dengan menggunakan UML
dapat mempermudah menyederhanakan dan menggambarkan suatu permasalahan. Dengan
terdapatnya bermacam – macam diagram yang dapat membentuk sebuah alir proses ,
maka akan mempermudah untuk melihat dan menggambarkan suatu alur terjadinya
sebuah proses.
Saran : Dalam penggunaan UML tidaklah mudah , user
harus sangat memahami macam – macam bentuk alir diagram sesuai dengan tujuan
pembuatan atau perancangan sistem. Berbagai macam tools yang ada pada masing –
masing diagram akan menyulitkan user dalam pembuatan suatu konsep alur sistem.
Oleh karena itu disarankan agar user harus memahami UML dan tujuan dari
pembuatan UML tersebeut.
6. Daftar
Pustaka
Buku Rekayasa Perangkat Lunak
Berorientasi Objek dengan Metode USDP (Unified Software Development Process)"
oleh Adi Nugroho.
Tidak ada komentar:
Posting Komentar