Anda di halaman 1dari 31

BAB I

PEMODELAN OBJEK

 Pemodelan objek memahami bagaimana


memperdalam konsep – konsep
pengembangan sistem berorientasi objek
serta meeperkenalkan notasi – notasi
yang digunakan pada analisis serta
perancangan dengan menggunakan OMT.
Pengertian Pemodelan Objek
 Pemodelan objek adalah Suatu metoda untuk
menggambarkan struktur sistem yang memperlihatkan
semua objek yang ada pada sistem.
 Model objek juga memperlihatkan hubungan objek
terhadap objek – objek lain, serta menampilkan atribut
serta operasi yang menjadi ciri suatu kelas tertentu
untuk kepentingan pengembangan suatu sistem
informasi atau perangkat lunak tertentu .
 Pemodelan objek sangat penting sebab ia
menggambarkan secara abstraktif tentang fakta – fakta
yang ada pada dunia nyata sehingga mudah
diimplementasikan dalam bentuk perangkat lunak
( sistem informasi ).
 Kasus

 Manakala kita melihat sebuah mobil, kita dapat


memandang mobil sebagai sebuah rangkaian prosedur
terurut yang memberikan fungsi untuk membawa kita
bergerak dari suatu tempat ke tempat yang lain.
 Cara lain memandang sebuah mobil adalah kita lihat
mobil sebagai satu kesatuan dari berbagai komponen
( 0bjek ) , roda, mesin, tank bahan bakar, stir dan
sebagainya yang masing – masing memiliki
fungsionalitas sendiri – sendiri, Dan cara pandang kedua
inilah yang sebenarnya lebih alami sesuai dengan
kebanyakan cara kita melihat sesuatu di dunia nyata.
Paradigma:
 Adalah cara atau pola bagaimana kita memandang dan
menyelesaikan suatu masalah yang sama, seperti digambarkan
dalam ke dua contoh diatas.
 Ke dua paradigma diatas telah “diadopsi” dalam
rekayasa perangkat lunak. Walaupun ada paradigma
lain yang lahir dalam erkayasa perangkat lunak , namun
ke dua paridigma diatas telah membuat sejarah khusus
dalam dunia rekayasa perangkat lunak.
Paradigma Prosedural / Struktural
Adalah cara mencari solusi permasalahan dengan menen
tukan prosdue – prosedur yang terstruktur.
 Contoh : Lihat kasus yang pertama

 Keunggulan: Memecahkan satu masalah ke dalam

bagian – bagian yang terkecil.


 Kelemahan : Sulit diterapkan dalam sistem yang
berukuran besar .
Paradigma Berorientasi Objek
Adalah Cara memandang sistem sebagai kesatuan dari
berbagai komponen ( objek ).
Contoh : Lihat kasus ke dua
Paradigma berorientasi lebih alami , karena kebanyakan
kita kan memandang ,mobil sebagai kesatuan dari
bebagai komponen, dan sangat sedikit orang yang
mampu
memandang mobil sebagai urtuan prosedur yang
tertruktur.
Istilah – Istilah dalam Pemodelan
Berorientasi Objek

A. Objek
 Definisi objek adalah orang, tempat, benda , kejadian,
atau konsep – konsep yang ada didunia nyata yang
penting bagi suatu aplikasi dan atau sistem informasi.
 Objek orang misalnya adalah Anda, seorang gadis yang
cantik, dosen anda, dll.
 Objek tempat misalnya “ kampus, negara, jalan,
kota ,provinsi dll.
 Objek benda misalnya mesin, gedung , komputer dll.
 Objek kejadian misalnya: pembayaran registrasi kuliah,
membaca buku dll.
 Objek konsep misalnya marxisme, liberalisme,
kapitalisme,kursus, kuliah, pelatihan dll.
 Selain itu juga kita mendefinisikan objek sebagai
konsep abstarksi sesuatu dengan batas nyata,
sehinngga kita dapat menggambarkan secara
sistematis. Pemahaman objek memiliki 2 fungsi yaitu:
1. Memudahkan untuk mempelajari secara seksama apa
yang ada didunia nyata.
2. Menyediakan suatu dasar yang kuat dalam
implementasi ke dalam sistem terkomputerisasi.
 Objek memiliki keadaan sesaat (state) dan prilaku (behaviour )
 State atau keadaan dari sebuah objek adalah himpunan kondisi
yang menggambarkan objek tersebut.
 Contoh : sepeda motor misalnya saat ini mungkin memiliki
keadaa ( state ) gigi depan / pedal nomor 2 , gigi belakang/
roda nomor 3, posisi pedal kanan diatas, arah stang kekanan,
lajunya 10 km/jam dan warna catnya kuning.
 Contoh lagi objek berupa suatu jendela di layar monitor
komputer , keadaan minimized atau maximized adalah state
dari objek tersebut.
 Keadaan suatu objek dinyatakan dengan nilai dari
atribut objek tersebut.
 Keaadaan suatu objek didapat karena objek
tersebut mungkin dalam suatu kondisi tertentu
sedang melakukan suatu aktifitas atau
menunggu kejadian ( event ) tertentu.
 Atribut adalah nilai internal suatu objek yang
mencerminkan antara lain karakterirtik , kondisi
sesaat, koneksi dengan objek lain dan identitas
atau ciri khas objek tersebut.
.
 Prilaku ( behaviour ) adalah efek – efek
terlihat dari sebuah objek saat melakukan
suatu aksi atau menerima kejadian tertentu.
Atau bagaimana sebuah objek bertindak /
bereaksi dan memberikan reaksi.
 Prilaku sebuah objek dinyatakan dalam
operation.
 Perubahan state objek dicerminkan oleh
prilaku tersebut.
 Contoh: prilaku yang dimiliki sepeda anda
misalnya mengerem, mengubah laju,
mengubah gigi dan belok.
 Prilaku ditentukan oleh himpunan semua atau
beberapa operasi yang dapat dilakukan dalam
objek itu sendiri.
Menggunakan paradigma prosedural. Dalam pemrograman
berorientasi objek , data dan kode disatukan didalam objek, dan
tercermin lewat keadaan ( state ) objek tersebut.
 Agar pihak luar atau objek lain dapat mengakses segala sesuatu
yang ada dalam suatu objek satu – satunya jalan adalah melalui
antarmuka publik atau public interface objek tersebut.
 Sebagai contoh untuk memperbesar volume suara pada TV kita
hanya perlu menekan satu tombol tertentu saja. Kita tidak perlu
tahu atau bahkan tidak mau tahu bagaimana proses dibelakang
itu semua sehingga suara TV bisa sesuai dengan yang kita
harapkan. Padahal kalau diperhatikan ada serangkaian banyak
proses yang harus dilakukan oleh TV tersebut, dan semua itu
diperlihatkan pada kita.
B.Pembungkusan dan Antarmuka
 Encaptulation atau pembungkusan adalah proses
membunyikan detil implementasi sebuah objek.
 Dalam pemrograman berorientasi objek , objek seringkali
digambakan sebagai sebuah kotak hitam yang berisi kode dan
data. Kode dan data tersebut disatukan dalam sebuah “benda”
yang tersembunyi isinya, yaitu objek.
 Dalam pemrograman prosedural / struktural , data dan kode
dipandang terpisah. Yakni data masuk dan mengalir kedalam
kode, kemudian diolah dalam kode, dan keluar sebagai data /
informasi hasil pengolahan kode. Karenanya diagram alur data
( DFD ) hampir selalu digunakan ketika merancang sistem
 Mengapa Encapsulation Penting ? Di dunia nyata
encapstulation membantu kita untuk melokalisir masalah.
 Sebagai contoh monitor menyembunyikan operasinya
terhadap CPU. Ketika ada masalah dengan monitor , maka kita
hanya perlu memperbaiki monitor atau menggnatinya dengan
monitor lain. Kita tidak perlu mengotak atik CPU. Demikian
juga halnya di dunia software. Jika suatu kesalahan / error
terjadi pada suatu objek kita mungkin hanya perlu
memperbaiki objek tersebut tanpa perlu mengotak atik yang
lain.
 Definisi antarmuka ( interface ) adalah himpunan operasi –
operasi yang menentukan prilaku sebuah objek.
 Contoh : mengubah gigi adalah salah satu operasi dalam
antarmuka objek sepeda.
 Antarmuka memerankan dua fungsi , pertama memberitahu
pengguna ( klien ) bahwa objek tersebut menyediakan layanan
tertentu. Kedua memberitahu implemtor ( penyediaan atau
suplier ) agar mereka menyediakan layanan tertentu.
 Perumpaan antarmuka ( class interface) dapat digambarkan
seperti remote control televisi. Remote control memiliki
operasi yang menggambarkan prilaku televisi, tetapi remote
controlnya sendiri tidak memiliki implementasi prilaku itu.
C. Message Sending ( Pesan )
 Adalah Permintaan untuk objek penerima ( review ) agar

memainkan metode tertentu dan mengembalikan hasil tertentu


dari aksi tersebut kepada objek pengirim ( sender )
 Sebuah objek tunggal biasaya kurang bermanfaat . Oleh

karena itu , objek biasanya muncul sebagai sebuah komponen


dari suatu sisetm yang besar. Mesin dan mobil anda misalnya
akan bermanfaat jika berkomunikasi dengan objek yang lain ,
misalnya tank bahan bakar, roda, aki dan sebagainya untuk
membentuk suatu kinerja.
 Suatu objek tidak perlu mengetahui internalitas objek lain

untuk dapat menggunakannya.


 Contoh sebuah mesin tidak perlu mengetahui berapa liter
bahan bakar yang ada didalam tank agar mesin tersebut bisa
berjalan. Lalu apa yang bisa dilakukan mesin agar ia dapat “
diberi “ bahan bakar oleh tank ? Mesin akan mengirimkan
pesan kepada tank bahwa ia memerlukan aliran bahan bakar
dengan jumlah tertentu. Pesan tersebut dapat berupa
pembukaan katup pompa bahan bakar oleh mesin. Tank
memberikan reaksi atas pesan dari mesin dengan mengalirkan
bahan bakar sesuai dengan yang diminta mesin.
 Seperti halnya mesin dan tank bahan bakar, dalam rekayasa
perangkat lunak berorientasi objek , objek – objek dalam
sebuah sistem berinteraksi dan berkomunikasi satu dengan
yang lain dengan mengirimkan pesan antara satu dengan lian.
 Ketika objek A menginginkan objek B untuk menjalankan
metode tertentu yag dimiliki B , maka objek A mengirimkan
sebuah pesan kepada objek B.
 Ilustrasi tentang pengiriminan pesan bisa dilihat pada kasus
pesawat TV. Jika kita ingin menonton TV, kita tinggal
menekan tombo l – tombol yang ada pada remote control dan
kemudian TV nya menyala. Fakta yang terjadi adalah objek
remote pengiriman pesan kepada objek TV untuk menjalankan
operation menyala. Objek TV menerima pesan ini dan
menjalankan operation untuk menyalakan TV.
 Contoh nyata yang lain bisa dilihat pada pencetakan slip gaji.
Pada kasus ini kita akan mempunyai class karyawan sebagai
instance dari orang. Setiap objek karyawan bertanggung jawab
Untuk mengetahui beberapa jumlah gaji yang diterima. Objek
berikutnya adalah cetak slip gaji yang bertanggung jawab
untuk mencetak slip gaji karyawan setiap bulannya. Untuk
bisa mencetak slip gaji, objek slip gaji harus mengetahui
berapa gaji yang diperoleh karyawan. Oleh karena itu objek
cetak slip gaji kemudian mengirimkan pesan kepada objek
karyawan untuk menanyakan berapa gaji yag harus
dibayarkan.
D. Kelas
 Adalah definisi umum ( pola , templete atau cetak biru ) untuk

himpunan objek sejenis


 Kelas adalah sekumpulan / himpunan objek dengan atribut

properti yang mirip , prilaku ( operasi ) yang mirip , serta


hubungan degan objek yang lain dengan cara yang mirip.
 Contoh : Dalam keseharian pasti kita seringkali melihat objek

– objek yang sejenis. Misalnya sepeda anda, merupakan satu


dari sekian bayak sepeda yang ada didunia. Dalam terminologi
rekayasa perangkat lunak berorientasi objek , maka kita
katakan bahwa sepeda anda adalah instan ( instance ) dari
kelas sepeda , yakni kelas yang anggotanya terdiri dari sepeda.
Sepeda – sepeda yang anda memiliki state ( posisi gigi, posisi
pedal, arah stang) dan prilakku ( mengerem, mempercepat,
mengubah gigi, belok ) yag umumnya sama.
 Biasanya kita juga mengetahui ciri – ciri suatu objek dengan
mengenal ciri – ciri kelasnya. Sebagai contoh : jika saya
mengatakan kepada anda bahwa dibalik dinding ini ada sebuah
sepeda , maka pasti anda telah dapat membayangkan bahwa
benda itu memiliki stang, dua ban, pedal dan rantai.
E. Pewarisan dan Generalisasi

 Generalisasi dan pewarisan inheritance ( adalah mekanisme


dimana elemen –elemen yang memiliki karakteristik lebih
spesifik ( khusus ) mengambil struktur dan prilaku elemen-
elemen yang memiliki karakteristik lebih umum.
 Generalisasi serta pewarisan memungkinkan penggunaan
komponen –komponen tertentu pada suatu perangkat lunak
aplikasi secara bersamaan, Selain itu konsep ini juga
memungkinkan penulisan kode program yang semakin dikit.
 Contoh : dalam keseharian kita mengenal berbagai jenis
sepeda seperti sepeda gunung, sepeda balap ,sepeda mini dan
sebagainya. Semua jenis sepeda tersebut mewarisi ( inherit)
ciri umum sepeda, tetapi masing – masing jenis memiliki ciri
khusus yang tidak dimiliki sepeda yang lainnya.
 Dalam terminologi rekayasa perangkat lunak berorientasi
objek kita katakan kelas sepeda gunung , sepeda balap, dan
sepeda mini adalah kelas bagian ( subclass ) dari kelas sepeda,
dan kelas sepeda adalah kelas super ( superclass) dari kelas
sepeda gunung , sepeda balap dan sepeda mini.
 Generalisasi dan pewarisan adalah suatu cara yang sangat
berdayaguna untuk berabagi apa yang dimiliki suatu kelas atau
objek bagi kelas – kelas atau objek – objeki yang lain.
 Misalkan kita ambil contoh kelas kendaraan bermotor. Mobil,
truk dan lainnya bisa saling berbagi atribut yang sama seperti:
atribut model, tahun pembuatan, jumlah gigi transmisi dan
sebaginya
 Generalisasi adalah relasi ke atas beberapa subkelas kepada
superkelas diatasnya. Seperti contoh dibawah ini:
Kendaraan
Nomor kendaraan
Nama kendaraan
Tahun pembuatan
harga

Mobil Truk
Jumlah penumpang Tipe kabin
Jumlah Pintu Kapasitas
 Dalam contoh diatas atribut – atribut yang dimiliki secara
bersamaan oleh kelas struk dan mobil adalah nomor kendaraan,
Nama kendaraan , tahun pembuatan, serta harga ( harus
dibedakan antara konsep nama atribut serta nilai atribut.
Misalnya pada kasus diatas nomor kendaraan adalah nama
atribut sedangkan D1789 Dw adalah nilai dari atributnya.
 Kelas yang lebih tinggi dinamakan superkelas (
pendahulu/ancestor) sedang kelas yang lebih bawah dinamai
subkelas (turunan /descedent) Struktur pewarisan juga terlihat
disini. Kelas yang lebih rendah mewarisi semua atribut yang
dimiliki kelas yang lebih tinggi ( contoh diatas : nomor
kendaraan , nama kendaraan, Tahun pembuatan , harga ) tetapi
Selain mewarisi atribut – atribut yang dari kelas yanglebih
tinggi, kelas yang lebih rendah juga memiliki atribut – atribut
yang membedakan terhadap kelas – kelas yang lain yang
sederajat dengannya misalnya ( kelas truk memiliki atribut
tambahan yaitu tipe kabin , kapasitas, sedangkan kelas mobil
memiliki atribut tambahan yaitu : jumlah penumpang , jumlah
pintu) Ini dinamakan spesialisasi. Spesialisasi inilah yang
menjadi pembeda antara kelas mobil serta kelas truk.
 Dari keterangan diatas dapat ditarik bahwa generalisasi adalah
proses “ button Up “ ( bawah keatas ) sedangkan spesialisasi
adalah proses “ top button “(atas bawah ) dimana pewarisan
adalah berbagi atribut yang sama diantara dua kelas
dibawahnya ( mobil dan truk) dalam kelas yang lebih atas.
 Tiap – tiap kelas bagian mewarisi semua keadaan ( state ) dari
kelas supernya.
 Demikian juga setiap kelas bagian mewarisi prilaku dari kelas
supernya.
 Pewarian dapat terjadi secara berlapis – lapis . Semakin bawah
sebuah kelas dalam hirarki , maka semakin banyak
kekhususan karakteristik yang dimiliki kelas tersebut.
 Dengan menggunakan pewarisan , maka kita dapat
menggunakan kode yag dimiliki superkelas berulang – ulang.
F. Agregesi

 Aggregation adalah proses membuat atau menyusun sebuah


objek dari dua atau lebih objek lain.
 Agregesi adalah hubungan “bagian-dari” atau “bagian-ke-
keseluruhan”.
 Agregesi dapat berupa pembuatan suatu objek dari dua atau
lebih objek sejenis, atau dari dua atau lebih objek yang
berbeda.
 Contoh : bisa kita lihat PC bisa terbagi (baca : teragregasi) atas
bagian –bagiannya yaitu monitor, system box,Mouse,
keyboard. Serta sytem box bisa terbagi atau teragregasi atas
bagian – bagiannya yaitu Chasis, CPU, RAM Kipas
Pendingin.
G.Polimorfisme

 Adalah konsep yang sangat handal bagi pengembangan


perangkat lunak untuk pemisahan secara jelas diantara sub
sistem yang berbeda.
 Sebagai contoh kita bisa membuat operation hitung gaji.
Operation hitung gaji ini bisa dipakai untuk menghitung gaji
semua pegawai baik pegawai tetap , pegawai paruh waktu
maupun pegawai kontrak. Dengan konsep polomorfisme ini kita
bisa menghitung gaji masing – masing pegawai. Sekedar
ilusrtasi untuk menghitung gaji karyawan tetap jelas akan akan
memperhitungkan jabatan dan golongan . Sedangkan untuk
pegawai paruh waktu akan memperhitungkan jumlah jam kerja.
Adapun untuk pagawai kontrak tidak ada tunjangan pensiun.
Polymorphism
Poly: banyak; morphism: bentuk  sebuah fitur (generik)
bisa diimplementasikan dengan berbagai cara
Polymorphism diimplementasikan dengan mekanisme
inheritance dan overriding
hewan
“bersuara”

anjing kucing kuda


“menggonggong” “mengeong” “meringkik”

Anda mungkin juga menyukai