Anda di halaman 1dari 4

Nurokhim, Case Tool Pengembangan Perangkat Lunak Berorientasi Objek Menggunakan UML

Case Tool Pengembangan Perangkat Lunak Berorientasi-objek


menggunakan Unified Modeling Language (UML)

Nurokhim
P2PLR - Badan Tenaga Nuklir Nasional
Puspiptek Serpong Tangerang

Ratnasari Nur Rohmah


Teknik Elektro Universitas Muhammadiyah Surakarta

Abstrak
Metode objek-oriented banyak digunakan dalam pengembangan perangkat
lunak. Unified Modeling Language (UML) adalah bahasa yang dapat digunakan
untuk spesifikasi, visualisasi dan dokumentasi sistem software pada fase
pengembangan. UML merupakan unifikasi metode-metode Booch, OMT dan
Objectory serta beberapa metode lainnya, de facto UML merupakan standar bidang
analisis dan desain sistem objek-oriented. View adalah jendela (window) yang
merupakan aspek pandang UML terhadap sistem. UML memperkenalkan lima buah
view untuk memandang sistem yaitu : Use-Case View, Logical View, Component view,
Deployment View dan Concurrency View (Eriksson dan Penker, 1998). Booch (1998)
menyebut view ini sebagai “Arsitektur 4+1” dan menyebut Concurrency View sebagai
Process View. Tahap pengembangan sistem perang kat lunak didalam UML meliputi:
Analisis Kebutuhan (Requirement Analysis), Analisis Sistem (Analysis), Desain
(Design), Implementasi (Implementation) dan Testing.

Kata Kunci: Unified Modeling Languge, orientasi-objek.

diharapkan menggunakan program-program


1. Pendahuluan (komponen) yang sudah ada (reuse), dapat dikatakan
Teknologi rancang bangun perangkat lunak telah bahwa pemrograman mengarah ke ‘perakitan pogram’.
berkembang pesat, dari peran-cangan struktur- Namun demikian ke-mudahan yang diberikan bahasa
prosedural berbasis fungsi-onal menuju perancangan pemro-graman berorientasi-objek khususnya visual
berorientasi-objek yang didukung oleh perkembangan programing tidak otomatis menjamin bahwa produk
visual modeling dengan implementasi pemro-graman yang dihasilkan dari pemrograman merupakan
berbasis/berorientasi-objek. Meyer (1997) menyatakan perangkat lunak yang objek-oriented. Booch (1998)
bahwa rancang bangun berorientasi-objek merupakan pada journal (whitepaper) Rational Rose secara
komplemen dan dalam banyak kasus menggantikan implisit menyatakan bahwa aplikasi/software ber-
kedudukan rancang bangun terstruktur sebagai orientasi-objek bersifat arsitektur driven, hal ini
teknologi tinggi yang bagus (“good”). Seiring dengan berarti objek oriented atau tidaknya software yang
per-kembangan itu literatur dan alat bantu (case tool) telah dibuat sangat tergantung pada disain rancang
untuk rancang bangun ber-orientasi-objek juga telah bangun atau arsitek-turnya. Oleh karena itu proses
banyak di rilis para pakar teknologi objek-oriented. pengem-bangan perangkat lunak akan menentukan
Dengan prasarana yang tersedia, para desainer apakah perangkat lunak yang dihasilkan objek-
perangkat lunak diharapkan dapat “meninggalkan” oriented atau bukan.
kerumitan user inter-face, misalnya penanganan menu, Eriksson dan Panker (1998), memberikan
penga-turan frame untuk tampilan, ataupun pena- pandangan bahwa model perangkat lunak objek-
nganan event driven, klik button, dan lain-lain. oriented, jika disusun dengan benar, akan mudah
Disainer dapat lebih berkonsentrasi pada penanganan dipahami, diubah, dikembangkan, dilakukan verifikasi
persoalan utama (problem domain). Di sisi dan validasi. Jika dilakukan dengan benar, sistem yang
pemrograman, programmer tidak lagi diharapkan dibangun dengan menggunakan teknologi objek-
untuk menuliskan program record per record, tetapi oriented akan fleksibel untuk diubah, mempunyai

39
JURNAL TEKNIK ELEKTRO EMITOR Vol. 2, No. 1, Maret 2002

arsitektur yang terdefinisi dengan baik dan 3. View dan Diagram UML
memungkinkan untuk membentuk reusable
View adalah jendela (window) yang merupakan
component. Jauh sebelumnya Taylor (1992)
aspek pandang UML terhadap sistem. Sebuah sistem
menyatakan bahwa membangun software menggunaan
harus dijelaskan dengan sejumlah aspek/pandangan
pendekatan teknologi objek memberikan beberapa
yang berbeda, misalnya aspek fungsional (struktur
keuntungan, antara lain: memungkinkan penggunaan
statik dan interaksi dinamik), aspek non-fungsional
kembali objek yang ada (reusable), memungkinkan
(timing requirement, reliability, deployment), dan
software yang baru dengan konstruksi yang lebih
aspek organisasional (pengorganisasian pekerjaan,
besar, software berorientasi objek secara umum lebih
mapping ke kode, dan modul). Sistem dijelaskan oleh
mudah dimodifikasi dan dirawat karena sebuah objek
sejumlah view, dimana masing-masing view
dapat dimodifikasi tanpa banyak berpengaruh pada
merupakan proyeksi dari sistem secara komplit yang
objek yang lain.
memperlihatkan aspek tertentu dari sistem.
Unified Modeling Language (UML) merupakan
UML memperkenalkan lima buah view untuk
alat bantu, bahasa pemodelan yang dapat digunakan
memandang sistem yaitu: Use-Case View, Logical
untuk rancang bangun berorientsi-objek. UML dapat
View, Component view, Deployment View dan
digunakan untuk spesifikasi, visualisasi dan dokumen-
Concurrency View (Eriksson dan Penker, 1998).
tasi sistem pada fase pengembangan (Eriksson dan
Booch (1998) menyebut view ini sebagai “Arsitektur
Panker,1998). Walaupun banyak alat bantu pemodelan
4+1” dan menyebut Concurrency View sebagai
berorientasi-objek lain, UML dapat dikatakan
Process View.
merupakan alat bantu standar dalam bahasa
1. Use-Case View. Untuk menampilkan fungsi-
pemodelan. Hal ini terbukti dengan diterimanya UML
fungsi dari sistem berkaitan dengan aktor
sebagai standar oleh Object Management Group
eksternal. Aktor yang ber-interaksi dengan sistem
(OMG), konsorsium terbesar dibidang bisnis-objek,
dapat berupa seorang user atau sistem lainnya.
sehingga UML banyak diadop-si dan digunakan oleh
Use-case view ditujukan untuk para cus-tomer,
banyak produsen perangkat lunak. UML (Rational
designer, developer, dan tester. Use-case view
Rose 2000) menyediakan implementasi desain pada
merupakan bagian sentral dari view karena isinya
pemrograman C++, Java, CORBA, dan Visual Basic.
menjadi pengen-dali view yang lain. Tujuan akhir
Disamping itu UML menyedia-kan tool revers
dari sebuah sistem adalah untuk menyedia-kan
engineering, untuk mem-bentuk model (kelas dan
fungsi-fungsi yang dijelaskan dalam use-case
komponen) dari software yang telah jadi.
view, karena itu use-case view mempengaruhi
seluruh view lainnya. Use-case View juga
2. Unified Modeling Language (UML) digunakan untuk validasi dan verifikasi sistem
Unified Modeling Language (UML) adalah alat 2. Logical View. Untuk menampilkan bagaimana
bantu (tool) untuk pemodelan sistem, “UML adalah fungsi-fungsi didisain didalam sistem , dalam
bahasa yang dapat digunakan untuk spesifikasi, kaitannya dengan struktur statik dan perilaku
visualisasi, dan dokumentasi sistem objek-oriented dinamik sistem. Logical view menjelaskan
software pada fase pengembangan. UML merupakan bagaimana fungsi-fungsi sistem di sediakan,
unifikasi dari metode Booch, OMT, dan notasi terutama berguna bagi para designer dan
Objectory, serta ide-ide terbaik metodologi lainnya developer. Berbeda dengan use case view, logical
seperti terlihat pada Gambar 1. Dengan menyatukan view melihat bagian dalam dari sistem. Sistem
notasi metode-metode objek oriented tersebut, UML dijelaskan dengan struktur statik (kelas, objek, dan
merupakan standar dasar dalam bidang analisis dan relasi) dan kolaborasi dinamik yang terjadi ketika
desain berorientasi-objek” (Quatrani, 1998). objek-objek mengirim pesan satu sama lain.
Struktur statik di visualisasikan dalam diagram
kelas dan objek, sedang model dinamiknya
divisualisasi dalam diagram state, diagram
sekuen, diagram kola-borasi dan diagram aktivity.
3. Component View. Untuk menampilkan
pengorganisasian program (code) dari komponen
code, menjelaskan implementasi dari modul-
modul yang tersedia dan dependensinya.
Component View terutama untuk para
pengembang, view berisi diagram komponen.
4. Concurrency/Process View. Untuk menampilkan
concurrency di dalam sistem, khususnya pada
persoalan yang berhubungan dengan komunikasi
dan sinkronisasi yang muncul dalam sistem
concurrent. Concurrency/Prosess view ditujukan
Gambar 1. Unifikasi berbagai metode
bagi para pengembang dan integrator sistem,
pengembangan objek kedalamUML. berisi diagram dinamik (state, sekuen, kolaborasi,
dan aktivity) dan diagram implementasi (diagram
komponen dan deployment)

40
Nurokhim, Case Tool Pengembangan Perangkat Lunak Berorientasi Objek Menggunakan UML

Tabel 1. Penempatan diagram dalam view UML. diidentifikasi bersama dengan relasinya satu sama
lain, dan ditampilkan pada diagram kelas.
Kolaborasi antar kelas untuk mengerjakan use
case juga dijelaskan melalui model dinamik UML.
Pada fase analisis ini hanya kelas-kelas dalam
problem domain yang dimodelkan, bukan kelas-
kelas implementasi teknik.
3. Desain: Pada tahap desain hasil analisis
didetailkan untuk solusi teknik. Kelas-kelas baru
ditambahkan untuk menyediakan infrastruktur
teknik: user interface, penanganan database untuk
menyimpan objek kedalam database, komunikasi
dengan sistem lain, interfacing dengan peralatan
dalam sistem ditambahkan.
4. Implementasi/programming: Pada tahap pro-
5. Deployment View. Memperlihatkan deployment gramming kelas-kelas yang dibentuk pada tahap
sistem pada arsitektur fisik dengan komputer dan desain dikonversi menjadi code sesungguhnya
piranti pendukung yang diperkenalkan sebagai dalam bahasa pemrograman objek-oriented
nodes. Deploymen view ditujukan bagi pe- melalui proses generate. Hasil generate berupa
ngembang, integrator, dan tester, isi view berupa skeleton dari program. Selanjutnya menjadi tugas
diagram deployment. View ini juga mencakup programmer untuk menyelesaikan program hasil
mapping yang memperlihatkan bagaimana generate. Editing yang dilakukan oleh
komponen-komponen di-deployment pada programmer tidak akan di dihapus (ditimpa) saat
arsitektur fisik; misalnya program atau objek yang model di generate ulang.
mana di eksekusi pada komputer tertentu. 5. Testing: Testing terhadap sistem software
Diagram adalah visualisasi grafik yang biasanya berupa tes unit, tes integrasi, tes sistem,
memperlihatkan susunan dari simbol-simbol elemen dan tes acceptance. Tes unit adalah tes terhadap
yang disusun untuk menggambarkan bagian atau aspek kelas individual atau terhadap sekelompok kelas,
tertentu dari sistem. Sebuah model sistem secara biasanya dilakukan oleh programmer. Tes
tipikal mem-punyai beberapa diagram. Sebuah integrasi mengintegrasikan komponen dan kelas-
diagram adalah bagian spesifik dari view, apabila kelas dalam rangka verifikasi. Tes sistem
digambarkan akan mengambil tempat pada view memandang sistem sebagai kotak hitam (black
tertentu. Beberapa jenis diagram dapat menjadi bagian box) dalam rangka validasi bahwa sistem
dari beberapa view, tergantung pada isi diagram. UML berfungsi sesuai dengan harapan end user. Tes
memperkenalkan sembilan macam diagram yaitu: acceptance dilakukan oleh customer untuk
diagram Use Case, Kelas, Objek, State, Sekuen, verifikasi bahwa sistem sesuai dengan kebutuhan,
kolaborasi, Aktivity, Kom-ponen dan diagram sama seperti tes sistem. Test unit menggunakan
Deployment. Tabel 1 memperlihatkan penempatan diagram kelas dan spesifikasi kelas, test integrasi
diagram dalam view UML. menggunakan diagram komponen dan diagram
kolaborasi, dan tes sistem menggunakan diagram
use-case untuk melakukan validasi.
4. Tahap Pengembangan Perangkat
Lunak 5. Model Desain dan Implementasi
Tahap pengembangan sistem perangkat lunak Model desain (diagram kelas, komponen,
didalam UML meliputi: Analisis Kebutuhan deployment) ditampilkan dalam view-view UML
(Requirement Analysis), Analisis Sistem (Analysis), seperti telah dibicarakan diatas. Sedangkan
Desain (Design), Implementasi ( Implementation) dan implementasi desain dila-kukan dengan ‘generate’
Testing. program dari diagram kelas atau diagram komponen
1. Analisis Kebutuhan: UML menggunakan Use ke bahasa pemrograman yang diinginkan. Bahasa
cases untuk menangkap kebutuhan customer/user. pemrogaraman yang bisa digunakan diantaranya Java,
Melalui Use cases aktor luar yang berinteraksi C++, dan Visual Basic.
dengan sistem dimodelkan bersama dengan
fungsi-fungsi yang mereka perlukan dari sistem
(use cases). Aktor dan use cases dihubungkan 6. Penutup
dengan suatu relasi (relationship). Actor dan use Secara umum proses pengembangan perangkat
cases ditampilkan dalam bentuk diagram beserta lunak mencakup lima tahap, yaitu: analisis kebutuhan,
dokumentasinya pada view diagram Use case. analisis sistem, desain, implementasi dan testing. UML
Dokumentasi use cases dalam bentuk text menye-diakan notasi dan diagram untuk menjelaskan
diberikan secara terpisah (file) untuk memperjelas masing-masing tahap proses pengembangan. Pada
use cases. tahap analisis kebutuhan, UML mengunakan model
2. Analisis sistem: Fase analisis konsen dengan Use Case untuk menangkap kebutuhan Customer/
abstraksi primer (kelas dan objek) dan mekanisme User. Pada tahap analisis sistem, UML menyediakan
yang muncul dalam problem domain. Kelas-kelas abstraksi untuk pembentukan klas serta diagram klas,

41
JURNAL TEKNIK ELEKTRO EMITOR Vol. 2, No. 1, Maret 2002

menggunakan objek-objek yang berkolaborasi fasilitas untuk generate program (code) dari kelas-
mengerjakan use case melalui model dinamik diagram kelas atau komponen-komponen detail desain.
sekuen dan diagram kolaborasi. Pada tahap desain, Sedangkan pada tahap testing, diagram dan spesifikasi
UML menyediakan detail desain spesifikasi klas- klas dapat digunakan untuk verifikasi/tes unit, diagram
klas/komponen-komponen hasil analisis untuk solusi komponen dan kolaborasi untuk tes integrasi dan use
teknik. Pada tahap implementasi, UML menyediakan case untuk tes sistem.

Daftar Pustaka
[1] Booch G. (1998), Architectural Patterns, whitepapers, Rational Rose, www.rational.com.
[2] Eriksson H-E and Penker M. (1998), UML Toolkit, John Wiley & Son Inc.
[3] Heinckiens Peter M. (1998), Building Scalable Database Applications, Object-Oriented Design,
Architectures, and Implementations, Addison-Weslay Longman, Inc.
[4] Meyer B. (1997), Object-oriented Software construction, 2nd, prentice Hall PTR Upper Saddle River
New Jersey 07458.
[5] Nurokhim (2001), Penggunaan Unified Modeling Languagepada Rancang Bangun Sistem Inventori
Bahan Radioaktif. Tesis Magister Teknik Informatika Institut teknologi Sepuluh November Surabaya.
[6] Priestley M. (1997), Practical Object-Oriented design, The McGraw-Hill Company, USA.
[7] Rumbough J., et. al. (1991), Object-Oriented Modeling and Design, prentice-Hall, Englewood Cliffs,
New Jersey.
[8] Quatrani Terry (1998), Visual Modeling With Rational Rose and UML, Addison wesley Longman, Inc.
[9] Rational Rose (1998), Integrating Object and Relational Technologies, whitepapers,
www.rational.com.
[10] Rational Rose (1998), A Rational Approach to Software Development Using Rational Rose 4.0,
whitepapers, www.rational.com.
[11] Richter Charles (1999), Designing Flexible Object-Oriented System with UML, Macmillan Technical
Publishing, 201 West 103rd street, Indianapolis, IN 46290 USA.

42

Anda mungkin juga menyukai