DALAM PEMODELAN BERBASIS OBJECT
A. Pendahuluan
Analisis dan disain berorientasi objek adalah cara baru dalam memikirkan suatu masalah dengan mengguna kan model yang dibuat menurut konsep sekitar dunia nyata. Dasar pembuatan adalah objek,yang merupakan kombinasi antara struktur data dan perilaku dalam satu entitas.
Analisis Berorientasi Obyek:
Metode-metode analisis berorientasi objek yang popular,adalah :
1. Metode Booch
2. Metode Rumbaugh (OMT O b je c t Modelling Technique)
3. Metode Jacobson (OOSE Object Oriented Software Engineering)
4. Metode Coad & Yourdon
5. Metode Wirfs Brock
6.Metode Rational Unified Process
Metode Analisis Jacobson (OOAD)
Metode ini berbeda dengan metode lainnya, yaitu penekanan pada use case yaitu deskripsi atau skenario mengenai cara pemakai berinteraksi dengan sistem atau produk
Object Oriented Analysis Design (OOAD) adalah rekayasa perangkat lunak yang model pendekatan sistem sebagai kelompok interaksi objek. Beberapa entitas mewakili setiap obyek, yang menarik dalam sistem menjadi model dan kelas, elemen data, dan perilaku. Analisis berorientasi objek (OOA) berlaku objek modeling teknik untuk menganalisis fungsional persyaratan untuk sistem.
>p>Secara singkat 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 sistem atau subsistem. Sekarang ini terdapat berbagai metodologi yang digunakan dalam object oriented analisys and design (OOAD).
Beberapa konsep dasar dalam OOAD adalah :
1. Objek (Object)
2. Kelas (Class)
3. Kotak hitam (black Box) adalah dasar dari implementasi objek. Dalam operasi OO, hanya para developer yang dapat memahami detail dari proses-proses yang ada dalam kotak hitam, sedangkan para user tidak mengetahui. Menggunakan proses enkapsulasi dan message.
4. Asosiasi dan Agregas
Objek
Objek didefinisikan sebagai konsep, abstraksi atau benda dengan batasan dan arti untuk suatu masalah. Semua objek mempunyai identitas yang berbeda dengan lainnya.Istilah identitas berarti bahwa objek dibedakan oleh sifat yang melekat dan bukan dengan uraian sifat yang dimilikinya. Contohnya,kembar identik , walaupun mereka nampak seperti sama, tetapi merupakan dua orang yang berbeda. Kadang-kadang objek berarti suatu barang, maka digunakan istilah object instance, dan object class untuk menunjukkan satu grup dari barang yang sama. Tujuan dari pemodelan objek adalah menggambarkan objek, sebagai contoh, Joe Smith, Simplex company, proses nomor 7648 adalah objek. Suatu objek adalah sesuatu yang sederhana yang membuat pengertian dalam konteks aplikasi. Objek didefinisikan sebagai konsep, abstraksi atau benda dengan dengan batasan dan arti untuk suatu masalah. Objek menjelaskan dua tujuan, yaitu pengertian tentang dunia nyata dan dilengkapi dengan dasar praktek untuk implementasi komputer. Dekomposisi dari suatu masalah ke dalam objek tergantung pada keputusan dan kenyataan dari masalah tersebut. Tak ada sesuatu penyajian yang sempurna. Kadang-kadang objek berarti suatu barang, pada saat lain menunjuk pada suatu kelompok barang yang sama. Bila kita menginginkan untuk menunjuk dengan tepat suatu barang, maka digunakan istilah object instance, dan object class untuk menunjukkan satu grup dari barang yang sama. Sebuah obyek memilikikeadaan (state) dan perilak u (behavior). State dari sebuah obyek adalah kondisi obyek tersebut atau himpunan dari keadaan yang menggambarkan obyek tersebut. Sebagai contoh, bola lampu adalah obyek, dan salah satu keadaan nyala atau tidak nyala adalah state dari obyek bola lampu tersebut. State dinyatakan dengan nilai dari sebuah atribut obyeknya. Atribut adalah nilai internal suatu obyek yang mencerminkan antara lain karakteristik obyek, kondisi obyek, kondisi sesaat, koneksi dengan obyek lain dan identitas. Perubahan state dicerminkan oleh perilaku (behavior) obyek tersebut.
Behaviour
Behavior adalah kumpulan dari sesuatu yang dapat dilakukan oleh objek dan terkait dengan fungsi
- fungsi yang bertindak pada data objek (atau atribut). Pada siklus berorientasi objek, perilaku objek merujuk kepada metoda, operasi atau fungsi.Behavior suatu obyek mendefinisikan bagaimana sebuah obyek bertindak (beraksi) dan memberikan reaksi. Behavior ditentukan oleh himpunan semua atau beberapa operation yang dapat dilakukan dalam obyek itu sendiri. Behavior darisebuah obyek dicerminkan oleh interface, service dan method dari obyek tersebut. Interface adalah pintu untuk mengakses service obyek.Service adalah fungsi yang bisa diemban obyek.Method adalah mekanisme internal obyek yang mencerminkan perilaku (behavior) obyek tersebut. Sebagai contoh, jika printer merupakan sebuah obyek maka perilaku (behavior) atau servicenya mencetak apapun yang dia terima.
Sebuah objek pada dasamva mempunvai properti sebagai berikut:
Atribut
- Nilai atau elemen-elemen data yang dimiliki oleh objek dalam kelas objek.
- Merupakan ciri dari sebuah objek.
- Dipunyai secara individual oleh sebuah objek.
Contoh: berat, jenis. nama, dan sebagainva.
Layanan (Service)
- Metode atau operasi yang berfungsi untuk memanipulasi objek itu sendiri.
- Fungsi atau transformasi yang dapat dilakukan terhadap objek atau dilakukan oleh objek.
Dapat berasal dari:
Event
- aktivitas atau aksi keadaan fungsi
- kelakuan dunia nyata
Contoh: Read, Write, Move. Copy. Dan sebagainya
semua atau beberapa operation yang dapat dilakukan dalam obyek itu sendiri.
Behavior darisebuah obyek dicerminkan oleh interface, service dan method dari obyek tersebut.Interface adalah pintu untuk mengakses service obyek.Service adalah fungsi yang bisa diemban obyek.Method adalah mekanisme internal obyek yang mencerminkan perilaku (behavior) obyek tersebut. Sebagai contoh, jika printer merupakan sebuah obyek maka perilaku (behavior) atau servicenya mencetak apapun
yang dia terima. Sebuah objek pada dasamva mempunvai properti sebagai berikut:
- Atribut
- Nilai atau elemen-elemen data yang dimiliki oleh objek dalam kelas objek.
- Merupakan ciri dari sebuah objek.
- Dipunyai secara individual oleh sebuah objek.
- Contoh: berat, jenis. nama, dan sebagainva.
- Layanan (Service)
- Metode atau operasi yang berfungsi untuk memanipulasi objek itu sendiri.
- Fungsi atau transformasi yang dapat dilakukan terhadap objek atau dilakukan oleh objek.
- Dapat berasal dari:
- event
- aktivitas atau aksi keadaan
- fungsi
- kelakuan dunia nyata
-Contoh: Read, Write, Move. Copy. Dan sebagainya.
Kelas (Class)
Suatu object class menggambarkan kumpulan dari objek yang mempunyai sifat (atribut), peri laku umum (operasi), relasi umum dengan objek lain dan semantik umum. Orang, perusahaan, binatang, proses dan window adalah objek. Setiap orang mempunyai umur, IQ dan mungkin pekerjaan. Setiap proses mempunyai pemilik, prioritas, list dari sumber daya yang dibutuhkan. Objek dan object classes sering sama sebagai benda dalam deskripsi masalah. Istilah Kelas sering digunakan dari pada Kelas-obyek. Objek dalam kelas mempunyai atribut dan pola peri laku yang
sama. Sebagian besar objek diturunkan sifatnya dari perbedaan nilai atributnya dan relasi dengan objek lain.
Bagaimanapun juga, terdapat kemungkinan adanya objek dengan nilai atribut dan relasi yang identik. Setiap objek mengetahui kelasnya. Dengan mengumpulkan objek ke dalam kelas, kita membuat abstraksi suatu masalah. Abstraksi memberikan pemodelan yang mempunyai kehandalan untuk membuat generlisasi dari beberapa hal yang spesifik menjadi suatu yang lebih umum. Definisi umum (seperti nama kelas dan nama atribut) cenderung untuk disimpan sekali dalam kelas dari pada dalam objek. Operasi dapat ditulis sekali untuk setiap kelas, sehingga semua objek dalam kelas
dapat memperoleh keuntungan dengan penggunaan kembali. Klasifikasi Objek
Objek dapat dibedakan menjadi:
- ADT (Abstract Data Type)
Definisi dan kelas dimana komponen type menjadi atribut dan fungsi pri
mitif menjadi
operasi/metode/layanan.
- Mesin
Objek pasif yang punya status yang akan diaktifkan oleh objek lain.Fungsi primitif pada mesin merupakan mekanisme transisi yang mengubah suatu status ke status lain.
- Proses
Objek aktif yang mempunyai urutan kendall (thread of control)
Bagaimanapun juga, terdapat kemungkinan adanya objek dengan nilai atribut dan relasi yang identik. Setiap objek mengetahui kelasnya. Dengan mengumpulkan objek ke dalam kelas, kita membuat abstraksi suatu masalah. Abstraksi memberikan pemodelan yang mempunyai kehandalan untuk membuat generlisasi dari beberapa hal yang spesifik menjadi suatu yang lebih umum. Definisi umum (seperti nama kelas dan nama atribut) cenderung untuk disimpan sekali dalam kelas dari pada dalam objek. Operasi dapat ditulis sekali untuk setiap kelas, sehingga semua objek dalam kelas
dapat memperoleh keuntungan dengan penggunaan kembali. Klasifikasi Objek
Objek dapat dibedakan menjadi:
- ADT (Abstract Data Type)
Definisi dan kelas dimana komponen type menjadi atribut dan fungsi pri
mitif menjadi operasi/metode/layanan.
- Mesin
Objek pasif yang punya status yang akan diaktifkan oleh objek lain.Fungsi primitif pada mesin merupakan mekanisme transisi yang mengubah suatu status ke status lain.
- Proses
Objek aktif yang mempunyai urutan kendall (thread of control).
Diagram Objek
Diagram objek melengkapi notasi grafik untuk pemodelan objek, kelas dan relasinya dengan yang lain. Diagram objek bermanfaat untuk pemodelan abstrak dan membuat perancangan program. Diagram objek sederhana, mudah dipahami dan bekerja dengan baik dalam praktek. Terdapat dua macam diagram objek, yaitu diagram kelas dan diagram instance. Diagram kelas adalah skema, pola, atau template untuk enjelaskan banyak kemungkinan data dari instance. Diagram kelas menjelaskan klas-objek.
Diagram instance menjelaskan bagaimana satu set objek tertentu berhubungan dengan yang lainnya. Diagram instance menggambarkan object instance. Diagram instance bermanfaat untuk membuat dokumentasi dari suatu kasus. Diagram objek dipergunakan mulai fase analisa, desain dan implementas
Kelas dan Objek
Konsep fundamental dalam analisa ber-orientasi objek adalah objek itu sendiri. Sebuah objek adalah sebuah entitas yang mencakup data dan metode. Sebelum menentukan Kelas-&-Objek, terlebih dulu dimulai dengan menentukan arti dari Kelas dan Objek. Objek adalah abstraksi dari suatu problem, menggambarkan kemampuan dari sistem untuk menyimpan informasi tentang objek tersebut. Objek merupakan pembungkusan (encapsulation) antara atribut dengan metode. Metode yang biasa disebut jugas ervice dapat berupa fungsi atau prosedur. Kelas merupakan satu atau lebih objek dengan persamaan atribut dan metode, sedangkan Kelas-&- Objek adalah kelas dengan satu atau lebih objek di dalamnya. Nama Kelas adalah kata benda tunggal, atau kata sifat dan kata benda. Nama dari Kelas -&Objek harus dapat menjelaskan Objek tunggal dari suatu Kelas. Contohnya, bila setiap Objek menjelaskan sesuatu yang dikirimkan, maka menggunakan "Item Pengiriman" (setiap Objek adalah satu item), lebih baik dari pada menggunakan nama "Pengiriman". (dimana dapat berarti cara pengiriman misalnya pengiriman menggunakan pesawat atau kapal). Nama Kelas-&-Objek sebaiknya mudah dibaca, seperti penggunaan huruf kapital dan huruf kecil pada umunya.
Kelas dan Objek
Konsep fundamental dalam analisa ber-orientasi objek adalah objek itu sendiri. Sebuah objek adalah sebuah entitas yang mencakup data dan metode. Sebelum menentukan Kelas-&-Objek, terlebih dulu dimulai dengan menentukan arti dari Kelas dan Objek. Objek adalah abstraksi dari suatu problem, menggambarkan kemampuan dari sistem untuk menyimpan informasi tentang objek tersebut. Objek merupakan pembungkusan (encapsulation) antara atribut dengan metode. Metode yang biasa disebut jugas ervice dapat berupa fungsi atau prosedur. Kelas merupakan satu atau lebih objek dengan persamaan atribut dan metode, sedangkan Kelas-&- Objek adalah kelas dengan satu atau lebih objek di dalamnya. Nama Kelas adalah kata benda tunggal, atau kata sifat dan kata benda. Nama dari Kelas -&Objek harus dapat menjelaskan Objek tunggal dari suatu Kelas. Contohnya, bila setiap Objek menjelaskan sesuatu yang dikirimkan, maka menggunakan "Item Pengiriman" (setiap Objek adalah satu item), lebih baik dari pada menggunakan nama "Pengiriman". (dimana dapat berarti cara pengiriman misalnya pengiriman menggunakan pesawat atau kapal). Nama Kelas-&-Objek sebaiknya mudah dibaca, seperti penggunaan huruf kapital dan huruf kecil pada umunya.
Struktur Objek dan Hirarki Kelas Setelah menentukan Kelas maka langkah berikutnya adalah menyusunnya sehingga merupakan suatu hirarki, yang selanjutnya sangat menentukan penerapan darii nheritance. Whole-Part Structure memperlihatkan hirarki dari suatu kelas sebagai komponen dari kelas lain yang juga disebut sub objek. Whole-Part Structure memperlihatkan hirarki dari suatu kelas sebagai komponen dari kelas lain yang disebut juga sub objek.
Contohnya, kelas Mobil adalahW h o le dan komponennya Mesin, Rangka, dll merupakan Part1, Part 2, Partn.Notasi untuk Whole-Part Structure seperti dalam Gambar 5. Gen-Spec Structure memperlihatkan kelas sebagai spesialisasi dari kelas di atasnya. Kelas yang mempunyai sifat umum disebut Generalization, Superclass atauT opclass , sedangkan kelas yang mempunyai sifat khusus disebutS pezialization . Contohnya, kelas Mobil adalah Generalization, sedangkan Sedan, Truk, Minibus, dll merupakan Specizlization1, Specialization2, Specializationn, yaitu kelas yang mempunyai sifat khusus.Notasi untuk Gen-Spec Structure seperti dalam Gambar 6.
Atribut
Atribut menggambarkan data yang dapat memberikan informasi mengenai kelas atau objek di mana atribut tersebut berada. Seperti terlihat pada Gambar 7, dalam notasi untuk kelas dan objek ditempatkan daftar dari atribut.
Metode
Metode(method ) disebut jugas ervice atau operator adalah proseduratau fungsi seperti yang terdapat dalam bahasa Pascal pada umumnya, tetapi cara kerjanya agak berlainan. Metode adalah subprogram yang tergabung dalam objek bersama-sama dengan atribut. Metode dipergunakan untuk pengaksesan terhadap data yang terdapat dalam objek tersebut. Metode tidak perlu mempunyai nama yang unik, dapat digunakan beberapa metode dengan nama yang sama untuk mengakses beberapa objek yang berbeda dan juga pada hirarki yang berbeda. Penulisan nama untuk metode dapat juga dibuat berbeda. Pada dasarnya sistem akan mengetahui metode yang mana dapat mengakses suatu objek, yaitu metode yang terdapat di dalam objek itu sendiri. Banyak cara yang dapat digunakan untuk menjelaskan detail metodeantara lain penggunaan bahasa umum, pseudocode dan decision tree. Beberapa metode dapat digambarkan dengan menuliskan daftar seperti pada Gambar 8.
Message
Message (pesan) merupakan cara untuk berhubungan antara satu objek dengan objek lain. Suatu pesan dikirimkan oleh suatu objek kepada objek tertentu dapat digambarkan sebagai anak panah, seperti pada Gambar 9. Objek pengirim mengirimkan pesan kepada objek penerima supaya objek penerima melaksanakan salah satu metode yang dimilikinya
Ncapsulation adalah proses menyembunyikan detil implementasi sebuah obyek. Satu- satunya jalan untuk mengakses data obyek tersebut adalah melalui interface. Interface melindungi internal state sebuah obyek dari campur tangan pihak luar. Oleh karena itu obyek sering digambarkan sebagai kotak hitam (black box) yang menerima dan mengirim pesan-pesan (message). Dalam object-oriented programming kotak hitam tersebut berisi kode (himpunan instruksi dengan bahasa yang dipahami komputer) dan data (informasi dimana instruksi tersebut beroperasi dengannya).
Dalam object-oriented programming, kode dan data disatukan dalam sebuah benda yang tersembunyi isinya yaitu obyek. Pengguna obyek tidak perlu mengetahui isi dalam kotak tersebut. Untuk dapat berkomunikasi dengan obyek, diperlukan pesan (message).