PENDEKATAN PERANCANGAN SISTEM BERORIENTASI OBJEK
PENDEKATAN
PERANCANGAN SISTEM BERORIENTASI OBJEK
1.
Pendekatan
Perancangan Sistem Berorientasi Objek
Pendekatan
perancangan sistem berorientasi ojek adalah suatu teknik pendekatan baru dalam
melihat permasalahan dan sistem (sistem perangkat lunak, sistem informasi, atau
sistem lainnya). Pendekatan ini memandang sistem yang akan dikembangkan sebagai
suatu kumpulan objek-objek dunia nyata.
Terdapat beberapa cara
untuk mengabstraksikan dan memodelkan objek-objek tersebut, yaitu abstraksi
objek, kelas, hubungan antar kelas sampai abstraksi sistem. Saat
mengabstraksikan dan memodelkan objek, data dan proses-proses yang dipunyai
oleh objek akan dienkapsulasi (dibungkus) menjadi satu kesatuan.
Dalam rekayasa perangkat
lunak, konsep pendekatan berorientasi objek dapat diterapkan pada tahap
analisis, perancangan, pemrograman, dan pengujian perangkat lunak. Ada berbagai
teknik yang dapat digunakan pada masing-masing tahap tersebut, dengan aturan
dan alat bantu pemodelan tertentu.
2.
Karakteristik
dari Objek
Objek
ialah Identitas. Berarti bahwa data diukur mempunyai nilai tertentu yang
membedakan entitas disebut Objek. Objek dapat kongkrit, seperti halnya arsip
dalam sistem, atau konseptual seperti kebijakan penjadualan dalam
multiprocessing pada sistem operasi. Setiap objek mempunyai sifat yang melekat
pada identitasnya. Dua objek dapat berbeda walaupun bila semua nilai atributnya
identik.
Kelas Objek ialah
gambaran sekumpulan Objek yang terbagi dalam atribut, operasi, metode,
hubungan, dan makna yang sama. Suatu kegiatan mengumpulkan data (atribut) dan
perilaku (operasi) yang mempunyai struktur data sama ke dalam satu grup. Kelas
Objek merupakan wadah bagi Objek. Dapat digunakan untuk menciptakan Objek.
Objek mewakili fakta / keterangan dari sebuah kelas.
3.
Metodologi
Berorientasi Objek
Metodologi
pengembangan sistem berorientasi objek mempunyai 3 karakteristik utama :
·
Encapsulation
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
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 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.
4.
Tools
pendekatan berorientasi objek :
·
Rational Unified Process (RUP) (Rational
Software – IBM 2003)
·
Fusion (Coleman 1994)
·
STS development Method 3 (ADM3) (Firesmith
1993)
·
Berard’s object-oriented design (Berard
1991)
·
Booch’s object-oriented design (Booch
1983, 1991)
·
Coad and Yourdon’s object – oriented
analysis (Coad & Yourdon 1989)
·
Coad and Yourdon’s object-oriented
analysis (OOA) (Coad & Yourdon 1991)
·
Jacobson’s Objectory (Jacobson &
Linstrom 1992)
·
Rumbaugh’s object modelling technique
(OMT) (Rumbaugh et al. 1991)
·
Object-oriented system analysis (OOA)
(Shlaer & Mellor 1988)
5.
Kelebihan
pendekatan berorientasi objek :
·
Dibandingkan dengan metode SSAD, OOAD
lebih mudah digunakan dalam pembangunan system
·
Dibandingkan dengan SSAD, waktu
pengembangan, level organisasi, ketangguhan,dan penggunaan kembali (reuse) kode
program lebih tinggi dibandingkan dengan metode OOAD (Sommerville, 2000).
·
Tidak ada pemisahan antara fase desain dan
analisis, sehingga meningkatkan komunikasi antara user dan developer dari awal
hingga akhir pembangunan sistem.
·
Analis dan programmer tidak dibatasi
dengan batasan implementasi sistem, jadi desain dapat diformliasikan yang dapat
dikonfirmasi dengan berbagai lingkungan eksekusi.
·
Relasi obyek dengan entitas (thing)
umumnya dapat di mapping dengan baik seperti kondisi pada dunia nyata dan
keterkaitan dalam sistem. Hal ini memudahkan dalam mehami desain (Sommerville,
2000).
·
Memungkinkan adanya perubahan dan
kepercayaan diri yang tinggi terhadap kebernaran software yang membantu untuk
mengurangi resiko pada pembangunan sistem yang kompleks (Booch, 2007).
·
Encapsliation data dan method,
memungkinkan penggunaan kembali pada proyek lain, hal ini akan memperingan
proses desain, pemrograman dan reduksi harga.
·
OOAD memungkinkan adanya standarisasi
obyek yang akan memudahkan memahami desain dan mengurangi resiko pelaksanaan
proyek.
·
Dekomposisi obyek, memungkinkan seorang
analis untuk memcah masalah menjadi pecahan-pecahan masalah dan bagian-bagian
yang dimanage secara terpisah. Kode program dapat dikerjakan bersama-sama.
Metode ini memungkinkan pembangunan software dengan cepat, sehingga dapat
segera masuk ke pasaran dan kompetitif. Sistem yang dihasilkan sangat fleksibel
dan mudah dalam memelihara.
6.
Kekurangan
Pendekatan Berorientasi Objek :
·
Pada awal desain OOAD, sistem mungkin akan
sangat simple.
·
Pada OOAD lebih fockus pada coding
dibandingkan dengan SSAD.
·
Pada OOAD tidak menekankan pada kinerja
team seperti pada SSAD.
·
Pada OOAD tidak mudah untuk mendefinisikan
class dan obyek yang dibutuhkan sistem.
·
Sering kali pemrogramam berorientasi obyek
digunakan untuk melakukan anlisisis terhadap fungsional siste, sementara metode
OOAD tidak berbasis pada fungsional sistem.
·
OOAD merupakan jenis manajemen proyek yang
tergolong baru, yang berbeda dengan metode analisis dengan metode terstruktur.
Konsekuensinya adalah, team developer butuh waktu yang lebih lama untuk
berpindah ke OOAD, karena mereka sudah menggunakan SSAD dalam waktu yang lama (
Hantos, 2005).
·
Metodologi pengembangan sistem dengan OOAD
menggunakan konsep reuse. Reuse merupakan salah satu keuntungan utama yang
menjadi alasan digunakannya OOAD. Namun demikian, tanpa prosedur yang emplisit
terhadap reuse, akan sangat sliit untuk menerapkan konsep ini pada skala besar
(Hantos, 2005).
0 coment�rios