Analisa Dan Desain Dengan
Menggunakan Obyek Oriented
(OOAD)
Dalam mempelajari analisa dan desain dengan
menggunakan objek orientasi (OOAD) kita harus mengerti dulu apa itu OOAD (Object
Oriented Analysis and Design)?
OOAD adalah metode analisis yang memerikasa
requirements dari sudut pandang kelas kelas dan objek yang ditemui dalam ruang
lingkup permasalahan yang mengarahkan arsitektur software yang didasarkan pada
manipulasi objek-objek system atau subsistem.
Dalam tugas ini saya mengambil materi dari 3
referensi, menurut mereka :
Konsep OOAD mencakup analisis dan desain
sebuah sistem dengan pendekatan objek, yaitu analisis berorientasi objek (OOA)
dan desain berorientasi objek (OOD).
OOA adalah metode analisis yang memeriksa
requirement (syarat/keperluan) yang harus dipenuhi sebuah sistem dari sudut
pandang kelas-kelas dan objek-objek yang ditemui dalam suatu permasalahan.
OOD adalah metode untuk mengarahkan arsitektur
software yang didasarkan pada manipulasi objek-objek sistem atau subsistem.
Beberapa konsep dalam OOAD :
Objek
(object)
Objek adalah benda secara fisik dan
konseptual yang ada di sekitar kita. Sebuah objek
memiliki
keadaan sesaat yang disebut state (attribute).
Sebagai contoh Attribute (State) dari pesawat adalah nama pesawat, tipe, warna, tahun produksi,
roda, dll. Sedangkan Behavior dari pesawat adalah cara menghidupkan mesin, cara menerbangkan
pesawat (take off), cara menurunkan pesawat (landing), dll.
keadaan sesaat yang disebut state (attribute).
Sebagai contoh Attribute (State) dari pesawat adalah nama pesawat, tipe, warna, tahun produksi,
roda, dll. Sedangkan Behavior dari pesawat adalah cara menghidupkan mesin, cara menerbangkan
pesawat (take off), cara menurunkan pesawat (landing), dll.
Kelas (class)
Kelas merupakan gambaran sekumpulan
Objek yang terbagi dalam atribut, operasi, metode,
hubungan, dan makna yang sama.
hubungan, dan makna yang sama.
Contoh pesawat Boeing 737 dibuat dengan
rancangan yang sama, rancangan pesawat ini disebut
kelas. Hasil rancangan itu menjadi pesawat Boeing 737 yang disebut objek. Pesawat-pesawat hasil
rancangan tadi bisa memiliki warna, nama yang berbeda-beda tergantung perusahaan
penerbangannya. Disini jelas bahwa objek memiliki sifat independen. Objek adalah instance dari
kelas, satu kelas bisa memiliki beberapa objek.
kelas. Hasil rancangan itu menjadi pesawat Boeing 737 yang disebut objek. Pesawat-pesawat hasil
rancangan tadi bisa memiliki warna, nama yang berbeda-beda tergantung perusahaan
penerbangannya. Disini jelas bahwa objek memiliki sifat independen. Objek adalah instance dari
kelas, satu kelas bisa memiliki beberapa objek.
Kotak Hitam (black boxes)
Sebuah objek adalah kotak hitam. Konsep
ini menjadi dasar implementasi objek. Dalam
operasi OO hanya developer yang dapat memahami detail proses yang ada didalam kotak tersebut,
sedangkan user tidak perlu mengetahui apa yang dilakukan yang penting mereka dapat
menggunakan objek untuk memproses kebutuhan mereka. Kotak hitam berisi kode dan data.
operasi OO hanya developer yang dapat memahami detail proses yang ada didalam kotak tersebut,
sedangkan user tidak perlu mengetahui apa yang dilakukan yang penting mereka dapat
menggunakan objek untuk memproses kebutuhan mereka. Kotak hitam berisi kode dan data.
Asosiasi dan Agregasi
Asosiasi adalah hubungan yang mempunyai
makna antara sejumlah objek.
Asosiasi
digambarkan dengan sebuah garis
penghubung diantara objeknya. Contohnya : Asosiasi karyawan
dengan unit kerja. Setiap karyawan
bekerja di satu unit kerja, sedangkan unit kerja dapat memiliki
beberapa karyawan.
Agregasi adalah bentuk khusus sebuah
asosiasi yang menggambarkan seluruh bagian pada suatu
objek merupakan bagian dari objek yang lain. Contohnya : Kopling dan piston adalah bagian dari
mesin, sedangkan mesin, roda, body merupakan bagian dari sebuah mobil.
objek merupakan bagian dari objek yang lain. Contohnya : Kopling dan piston adalah bagian dari
mesin, sedangkan mesin, roda, body merupakan bagian dari sebuah mobil.
Metodologi dalam OOAD
Metodologi adalah cara systematis untuk
mengerjakan analisys and design. Dengan metodologi, pihak yang membangun system
software dapat merencanakan dan mengulangi pekerjaan dilain waktu. Metodologi
juga menghilangkan perbedaan notasi untuk suatu hal yang sama karena setiap
orang akan berbicara dalam bahasa yang sama.
Metodologi pengembangan sistem berorientasi
objek mempunyai tiga karakteristik utama
yaitu :
Encapsulation (Pengkapsulan)
Encapsulation merupakan dasar untuk pembatasan
ruang lingkup program terhadap data yang diproses. Data dan prosedur atau
fungsi dikemas bersama-sama dalam suatu objek, sehingga prosedur atau fungsi
lain dari luar tidak dapat mengaksesnya. Data terlindung dari prosedur atau
objek lain, kecuali prosedur yang berada dalam objek itu sendiri.
Inheritance (Pewarisan)
Inheritance adalah teknik yang menyatakan
bahwa anak dari objek akan mewarisi data/atribut dan metode dari induknya
langsung. Atribut dan metode dari objek dari objek induk diturunkan kepada anak
objek, demikian seterusnya. Inheritance mempunyai arti bahwa atribut dan
operasi yang dimiliki bersama di anatara kelas yang mempunyai hubungan secara
hirarki. Suatu kelas dapat ditentukan secara umum, kemudian ditentukan spesifik
menjadi subkelas. Setiap subkelas mempunyai hubungan atau mewarisi semua sifat
yang dimiliki oleh kelas induknya, dan ditambah dengan sifat unik yang
dimilikinya. Kelas Objek dapat didefinisikan atribut dan service dari kelas
Objek lainnya. Inheritance menggambarkan generalisasi sebuah kelas.
Polymorphism (Polimorfisme)
Polimorfisme yaitu konsep yang menyatakan
bahwa seuatu yang sama dapat mempunyai bentuk dan perilaku berbeda.
Polimorfisme mempunyai arti bahwa operasi yang sama mungkin mempunyai perbedaan
dalam kelas yang berbeda. Kemampuan objek-objek yang berbeda untuk melakukan
metode yang pantas dalam merespon message yang sama.
Seleksi dari metode yang sesuai bergantung
pada kelas yang seharusnya menciptakan Objek.
Teknik Pemodelan dalam OOAD
Model Objek
Model objek menggambarkan struktur statis dari
suatu objek dalam sistem dan relasinya
yang berisikan diagram objek. Diagram objek
adalah graph dimana nodenya adalah kelas yang
mempunyai relasi antar kelas.
Model Dinamik
Model dinamik menggambarkan aspek dari sistem
yang berubah setiap saat. Dipergunakan untuk menyatakan aspek kontrol dari
system yang berisikan state diagram. State diagram adalah graph dimana nodenya
adalah state dan arc adalah transisi antara state yang disebabkan oleh event.
Model Fungsional
Model fungsional menggambrakan transformasi
nilai data di dalam sistem.Berisikan data flow diagram. DFD adalah suatu graph dimana
nodenya menyatakan proses dan arcnya adalah aliran data.
Referensi :