PEMBELAJARAN
Oleh:
HASAN SANLAWI, S.Kom
C. Pokok-pokok materi
1. Konsep pemodelan berorientasi objek
2. Kebutuhan Sistem berorientasi objek
3. Alur Kerja sistem berorientasi objek
4. Pembuatan model menggunakan software UML starUML
D. Uraian Materi
1. Pemodelan (Model)
Definisi model sendiri mempunyai Pengertian yang beragam sesuai dengan dunianya mulai
dari pengertian sehari-hari (everyday sense) sampai technical sense. Contoh dari everyday
sense, adalah artis merupakan (foto) model yang mendapat peran untuk memamerkan model-
model pakaian karya disainer terkenal. Model matematik hanya salah satu jenis dari model
dalam lingkup technical sense. Dalam banyak aplikasi engineering, model didefinisikan sebagai
representasi dari sistem yang disederhanakan. Representasi ini pun juga bermacam-macam
mulai dari yang bersifat physical, pictorial, verbal, schematic dan symbolic dimana:
a. Physical yaitu dengan membuat scaleddown version dari sistem yang dipelajari (model
pesawat, model kereta api),
b. Pictorial, yaitu representasi dengan gambar untuk menggambarkan kontur permukaan
bumi seperti peta topografi dan bola dunia.
c. Verbal, yaitu representasi suatu sistem ke dalam kalimat verbal yang mengambarkan
ukuran, bentuk dan karakteristik.
d. Schematic, yaitu representasi dalam bentuk skema figurative misalnya model rangkaian
listrik, model Atom Bohr dan lain-lain
1
2
c. Supportability, yaitu sejauh mana aktivitas proses dapat didukung oleh CASE
d. Acceptability, apakah proses yang telah ditentukan oleh insinyur dapat diterima dan
digunakan dan mampu bertanggung jawab selama pembuatan produk perangkat lunak
e. Reliability, apakah proses didesain sedikian rupa sehingga kesalahan proses dapat
dihindari sebelum terjadi kesalahan pada produk. Robustness, dapatkah proses terus
berjalan walaupun terjadi masalah yang tak diduga.
f. Maintainability, Dapatkah proses berkembang untuk mengikuti kebutuhan atau
perbaikan.
g. Rapidity, bagaimana kecepatan proses pengiriman sistem dapat secara lengkap
memenuhi spesifikasi.
Tetapi Pada saat ini ada dua landskap pemodelan analisis. Yaitu yang pertama analisis
terstrutur adalah metode pemodelan klasik. Dimana analisis terstruktur ini merupakan aktifitas
pembangunan model, dan yang kedua adalah analisis berorientasi Objek.
Dikenal dengan nama Metode Desain Object Oriented. Metode ini menjadikan proses
analisis dan desain ke dalam empat tahapan yang iteratif (dapat berulang), yaitu identifikasi
kelas-kelas dan objek-objek, identifikasi semantik dan hubungan objek dan kelas tersebut,
perincian interface dan implementasi.
b. Metode Rumbaugh (Object Modelling Technique - OMT)
Metode ini berdasarkan pada analisis terstruktur dan pemodelan entity-relationship.
Tahapan utama dalam metodologi ini adalah analisis, desain sistem dan desain objek, dan
implementasi. Keunggulan metode ini adalah dalam penotasian yang mendukung semua
konsep object oriented.
c. Metode Jacobson (Object Oriented Software Engineering - OOSE)
Metode yang mengandung elemen-elemen dari Object Oriented lainnya. Metode ini
memberi penekanan lebih pada use-case. OOSE memiliki tiga tahapan yaitu membuat model
requirement dan analisis, desain dan implementasi, dan model pengujian (tes model).
Keunggulan metode ini adalah mudah untuk dipelajari karena memiliki notasi yang sederhana,
mencakup seluruh tahapan dalam rekayasa software.
d. Metode Coad dan Yourdon
Metode ini didasarkan pada pemodelan Object Oriented dan entity-relationship. Metode
ini mempunyai perancangan yang berfokus pada empat
komponen yaitu Problem domain componet, Human interaction componet, Data management
component dan Task management component.
e. Metode Wirfs-Brock
Responsibility Driven Design/-Class Responsibility Collaboration (RDD/CFC) Metode ini
diarahkan pada desain, tetapi sangat berguna untuk memunculkan ide dalam tahap analisis.
Keunggulannya adalah mudah digunakan, metode ini juga mengidentifikasikan hirarki kelas dan
subsistem-subsistem.
memandang masalah dari sudut pandang yang berbeda, mudah dibuat (dikonversi) dari metode
struktural.
b. Analisis
Bahasa pemodelan (sebagaian besar grafik) merupakan notasi dari metode yang digunakan
untuk mendesain secara cepat. Bahasa pemodelan merupakan bagian terpenting dari metode.
Ini merupakan bagian kunci untuk komunikasi. Pemodelan ini merupakan bahasa standar untuk
digunakan dalam visualisasi, spesifikasi, pembentukan dan pendokumentasian alat – alat dari
sistem perangkat lunak.
a. UML sebagai bahasa pemodelan
Unified Modeling Language (UML) merupakan bahasa pemodelan yang
memiliki pembendaharan kata dan cara untuk mempresentasikan secara fokus pada konseptual
dan fisik dari suatu sistem. Contoh untuk sistem software yang intensif membutuhkan bahasa
yang menunjukkan pandangan yang berbeda dari arsitektur sistem, ini sama seperti menyusun
atau mengembangkan sistem development life cycle. Dengan Unified Modeling Language
(UML) akan memberitahukan kita bagaimana untuk membuat dan membaca bentuk model yang
baik, tetapi Unified Modeling Language (UML) tidak dapat memberitahukan model apa yang
akan dibangun dan kapan akan membangun model tersebut. b. UML sebagai bahasa untuk
mengambarkan sistem
UML tidak hanya merupakan rangkain simbol grafikal, cukup dengan setiap simbol pada
notasi UML merupakan penerapan simantik yang baik. UML menggambarkan modael yang
dapat dimengerti dan dipresentasikan kedalam model tekstual bahasa pemrograman.
Contohnya kita dapat menduga suatu model dari sistem yang berbasis web tetapi tidak secara
langsung dipegang dengan mempelajari code dari sistem.
c. UML sebagai bahasa untuk menspesifikasikan sistem
UML membangun model yang sesuai dan lengkap. Pada faktanya UML menunjukan semua
spesifikasi keputusan analisis, desain dan implementasi yang penting yang harus dibuat pada
saat pengembangan dan penyebaran dari sistem software intensif.
d. UML sebagai bahasa untuk pendokumentasian sistem
UML menunjukan dokumentasi dari arsitektur sistem dan detail dari semuanya. Tujuan
Unified Modeling Language (UML) diantaranya adalah.
a. Memberikan model yang siap pakai, bahasa pemodelan visual yang ekspresif untuk
mengembangkan sistem dan yang dapat saling menukar model dengan mudah dan
dimengerti secara umum.
7
b. Memberikan bahasa pemodelan yang bebas dari berbagai bahasa pemrograman dan
proses rekayasa.
c. Menyatukan praktek – praktek terbaik yang terdapat dalam pemodelan.
Jika dikomputer Anda telah terpasang StarUML, maka silakan melanjutkan ke bahasan berikut.
a. Use Case Diagram
Use Case diagram merupakan suatu diagram yang menggambarkan
fungsionalitas yang diharapkan dari sebuah sistem. Sebuah use case dapat
memrepresentasikan interaksi antara aktor dengan sistem. Use Case Diagram adalah abstraksi
dari interaksi antara system dan actor. Use case bekerja dengan cara mendeskripsikan tipe
interaksi antara user sebuah system dengan systemnya sendiri melalui sebuah cerita
bagaimana sebuah system dipakai. Use case merupakan kontruksi untk mendeskripsikan
bagaimana system akan terlihat di mata user. Sedangkn use case diagram memfalisitasi
komunikasi di antara analis dan pengguna serta analis dan client.
Penjelasan bagian bagian use case diagram, ada 6 tool yang terpenting pada use case
diagram :
1) System
8
Menyatakan batasan sistem dalam relasi dengan actor-actor yang menggunakannya (di luar
sistem) dan fitur-fitur yang harus disediakan (dalam sistem). Digambarkan dengan segi empat
yang membatasi semua use case dalam sistem terhadap pihak mana sistem akan berinteraksi.
Sistem disertai label yang menyebutkan nama dari sistem, tapi umumnya tidak digambarkan
karena tidak terlalu memberi arti tambahan pada diagram.
2) Actor
Aktor adalah segala hal diluar sistem yang akan menggunakan sistem tersebut untuk
melakukan sesuatu. Bisa merupakan manusia, sistem, atau device yang memiliki peranan
dalam keberhasilan operasi dari sistem. Cara mudah untuk menemukan aktor adalah dengan
bertanya hal-hal berikut: SIAPA yang akan menggunakan sistem? APAKAH sistem tersebut
akan memberikan NILAI bagi aktor?
3) Use case
Mengidentifikasi fitur kunci dari sistem. Tanpa fitur ini, sistem tidak akan memenuhi
permintaan user/actor. Setiap use case mengekspresikan goal dari sistem yang harus dicapai.
Diberi nama sesuai dengan goal-nya dan digambarkan dengan elips dengan nama di dalamnya.
Fokus tetap pada goal bukan bagaimana mengimplementasikannya walaupun use case
berimplikasi pada prosesnya nanti. Setiap use case biasanya memiliki trigger/pemicu yang
menyebabkan use case memulai (misalnya,Pasien mendaftar dan membuat janji baru atau
meminta untuk membatalkan atau mengubah janji yang sudah ada ).ada 2 triger pertama triger
eksternal, seperti pelanggan memesan atau alarm kebakaran berbunyi, kedua triger temporal,
seperti tanggal pengembalian buku terlewati di perpustakaan atau keterlambatan bayar sewa.
4) Assosiation
Mengidentifikasikan interaksi antara setiap actor tertentu dengan setiap use case tertentu.
Digambarkan sebagai garis antara actor terhadap use case yang bersangkutan. Asosiasi bisa
berarah (garis dengan anak panah) jika komunikasi satu arah, namun umumnya terjadi kedua
arah (tanpa anak panah) karena selalu diperlukan demikian.
5) Dependency Dependensi
<<include>>
9
a) Mengidentifikasi hubungan antar dua use case di mana yang satu memanggil yang lain.
b) Jika pada beberapa use case terdapat bagian yang memiliki aktivitas yang sama maka
bagian aktivitas tersebut biasanya dijadikan use case tersendiri dengan relasi
dependensi setiap use case semula ke use case yang baru ini sehingga memudahkan
pemeliharaan.
c) Digambarkan dengan garis putus-putus bermata panah dengan notasi <<include>>
pada garis.
d) Arah mata panah sesuai dengan arah pemanggilan.
Dependensi <<extend>>
a) Jika pemanggilan memerlukan adanya kondisi tertentu maka berlaku dependensi
<<extend>>.
b) Note: konsep “extend” ini berbeda dengan “extend” dalam Java!
c) Digambarkan serupa dengan dependensi <<include>> kecuali arah panah berlawanan
6) Generalization
Mendefinisikan relasi antara dua actor atau dua use case yang mana salah satunya meng-
inherit dan menambahkan atau override sifat dari yang lainnya. Penggambaran menggunakan
garis bermata panah kosong dari yang meng-inherit mengarah ke yang di-inherit
Berikut ialah contoh sederhana cara membuat use case diagram dengan starUML:
1) Buka aplikasi starUML
2) Pada tampilan awal, pilih model yang terletak pada toolbar, lalu Add Diagram dan pilih Use
Case Diagram
10
a.
Gambar 1. 1. Memulai Use Case Diagram
3) Maka tampilan toolbox pada sebelah kiri akan berubah menjadi gambar di bawah ini.
b.
Gambar 1. 2. Toolbox use case diagram
4) Klik pada gambar aktor dan taruh kursor pada samping toolbox. Maka akan muncul gambar
orang yang disebut dengan actor dan beri nama actor.
11
5) Selanjutnya pilih usecase pada menu toolbox, tekan tiga kali pada lembar kerja untuk
membuat tiga use case dan beri nama pada setiap use case.
6) Untuk membuat garis hubung antara actor dan use case pilih directed association tekan
kursor pada gambar actor lalu arahkan pada usecase dan lepas, maka garis akan
terhubung.
7) Pastikan pada model explorer akan tersimpan nama dan use case diagram yang telah
dibuat.
8) Jika telah selesai simpan file dengan cara pilih file save as.
b. Activity Diagram
Activity diagram menggambarkan berbagai alur aktivitas dalam sistem yang
sedang dirancang, bagaimana masing-masing alur berawal, decision yang mungkin terjadi, dan
bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang
mungkin terjadi pada beberapa eksekusi. Activity diagram merupakan state diagram khusus, di
mana sebagian besar state adalah action dan sebagian besar transisi di-trigger oleh selesainya
state sebelumnya (internal processing). Oleh karena itu activity diagram tidak
12
menggambarkan behaviour internal sebuah sistem (dan interaksi antar subsistem) secara
eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara
umum.
Activity diagram memodelkan workflow proses bisnis dan urutan aktivitas dalam sebuah
proses. Diagram ini sangat mirip dengan flowchart karena memodelkan workflow dari satu
aktivitas ke aktivitas lainnya atau dari aktivitas ke status. Menguntungkan untuk membuat
activity diagram pada awal pemodelan proses untuk membantu memahami keseluruhan proses.
Activity diagram juga bermanfaat untuk menggambarkan parallel behaviour atau
menggambarkan interaksi antara beberapa use case.
Berikut ini adalah simbol-simbol dari activity diagram.
Tabel 1. 1
Berikut contoh activity diagram dengan actor mahasiswa dan petugas perpustakaan.
13
Untuk membuat membuat activity diagram menggunakan starUML, berikut akan diuraikan
secara tahap-demi tahap :
1) Pilih model -> add diagram -> activitiy diagram.
2) Selanjutnya akan muncul toolbox yang berisikan gambar atau simbol yang menjelaskan alur
activity diagram.
3) Untuk membuat activity diagram diawali dengan memasukkan simbol initial state yang
menunjukkan awal dari sebuah alur activity.
4) Setelah memasukkan simbol initial state pilih simbol action state, beri nama dengan cara klik
dua kali pada simbol action.
5) Selanjutnya untuk menghubungkan antara simbol, menggunakan garis transition yang
terletak pada toolbox.
6) Setelah membuat garis pada activity diagram terdapat simbol decision yang menjelaskan
terjadi dua hasil dari sebuah alur.
7) Terakhir setelah alur selesai dalam activity wajib menggunakan simbol finalstate yang
menjelaskan alur diagram telah selesai.
8) Untuk cara penyimpanan pilih File save as dan tentukan tempat penyimpanan file.
14
c. Sequence Diagram
Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem
(termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap
waktu. Sequence diagram terdiri atar dimensi vertikal (waktu) dan dimensi horizontal (objek-
objek yang terkait). Sequence diagram dapat digunakan untuk menggambarkan skenario atau
rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk
menghasilkan output tertentu. Diawali dari apa yang mentrigger aktivitas tersebut, proses dan
perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan. Masing-
masing objek, termasuk aktor, memiliki lifeline vertikal. Message digambarkan sebagai garis
berpanah dari satu objek ke objek lainnya. Pada fase desain berikutnya, message akan
dipetakan menjadi operasi/metoda dari class.
Sequence diagram adalah suatu penyajian perilaku yang tersusun sebagai rangkaian
langkah-langkah percontohan dari waktu ke waktu. Sequence diagram digunakan untuk
menggambarkan arus pekerjaan, pesan yang sampaikan dan bagaimana elemen-elemen di
dalamnya bekerja sama dari waktu ke waktu untuk mencapai suatu hasil.
Tabel 1. 2. Simbol pada squence diagram
2) Selanjutnya pada toolbox sequence diagram terdapat simbol untuk membuat alur diagram.
Untuk menjalankan statechart diagram, dilakukan melalui menu model statechart diagram,
seperti yang ditujukan pada gambar di bawah ini.
Node digambarkan sebagai kotak, dan artefak yang dialokasikan ke setiap node
digambarkan sebagai persegi panjang di dalam kotak. Node mungkin memiliki subnodes, yang
digambarkan sebagai kotak nested. Sebuah node tunggal secara konseptual dapat mewakili
banyak node fisik, seperti sekelompok database server. Simbol dari deployment diagram dapat
dilihat pada gambar di bawah ini:
Tabel 1. 4. Simbol deployment diagram
Untuk menjalankan deployment diagram, dilakukan melalui menu model deployment diagram
pada starUML, seperti yang ditunjukkan pada Gambar di bawah ini.
20
deployment diagram
Untuk menjalankan dari starUML, dapat diakses melalui menu Model componen diagram,
seperti yang ditunjukkan dalam gambar di bawah ini.
E. Rangkuman
Model didefinisikan sebagai representasi dari sistem yang disederhanakan. Representasi ini
pun juga bermacam-macam mulai dari yang bersifat physical, pictorial, verbal, schematic dan
symbolic dimana:
a. Physical yaitu dengan membuat scaleddown version dari sistem yang dipelajari (model
pesawat, model kereta api),
b. Pictorial, yaitu representasi dengan gambar untuk menggambarkan kontur permukaan
bumi seperti peta topografi dan bola dunia.
c. Verbal, yaitu representasi suatu sistem ke dalam kalimat verbal yang mengambarkan
ukuran, bentuk dan karakteristik.
d. Schematic, yaitu representasi dalam bentuk skema figurative misalnya model rangkaian
listrik, model Atom Bohr dan lain-lain
e. Symbolic, yaitu representasi ke dalam simbol-simbol matematik dimana variable hasil
karakterisasi proses atau sistem ke dalam variable formulasi menggunakan simbol-
simbol matematik.
Proses pemodelan analisis memiliki atribut dan karakteristik seperti:
a. Understandability, yaitu sejauh mana proses secara eksplisit ditentukan dan bagaimana
kemudahan definisi proses itu dimengerti.
b. Visibility, apakah aktivitas-aktivitas proses mencapai titik akhir dalam hasil yang jelas
sehingga kemajuan dari proses Tersebut dapat terlihat nyata/jelas.
25