materi objek

17
KONSEP OBJECT DALAM PEMODELAN BERBASIS OBJECT Aditya Bagus Syaifullah – 06.04.111.00828 Teknik Informatika Universitas Trunojoyo 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 – Object 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)

Transcript of materi objek

Page 1: materi objek

KONSEP OBJECT

DALAM PEMODELAN BERBASIS OBJECT

Aditya Bagus Syaifullah – 06.04.111.00828

Teknik Informatika Universitas Trunojoyo

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 – Object 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.

Page 2: materi objek

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 Agregasi

OOSE Relationship Diagram

Page 3: materi objek

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 memiliki keadaan (state) dan perilaku (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

Page 4: materi objek

sebuah obyek bertindak (beraksi) dan memberikan reaksi. Behavior ditentukan oleh himpunan

semua atau beberapa operation yang dapat dilakukan dalam obyek itu sendiri. Behavior dari sebuah

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.

Page 5: materi objek

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 primitif 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 menjelaskan 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

implementasi.

Page 6: materi objek

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 juga service 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 dari inheritance. Whole-Part Structure

memperlihatkan hirarki dari suatu kelas sebagai komponen dari kelas lain yang juga disebut sub

Page 7: materi objek

objek. Whole-Part Structure memperlihatkan hirarki dari suatu kelas sebagai komponen dari kelas

lain yang disebut juga sub objek.

Contohnya, kelas Mobil adalah Whole 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 atau Topclass, sedangkan kelas yang

mempunyai sifat khusus disebut Spezialization. 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.

Page 8: materi objek

Supertype dan subtype

Generalisasi/spesialisasi (kelas supertype, dan subtype)

Page 9: materi objek

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 juga service 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 metode antara lain penggunaan

bahasa umum, pseudocode dan decision tree. Beberapa metode dapat digambarkan dengan

menuliskan daftar seperti pada Gambar 8.

Page 10: materi objek

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.

KOTAK HITAM DAN INTERFACE

Encapsulation 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).

Page 11: materi objek

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)

Secara formal kita mendefinisikan message sebagai permintaan untuk obyek penerima

(receiver object) untuk membawa metode yang ditunjukkan atau perilaku dan mengembalikan result

dari aksi tersebut kepada obyek pengirim (sender object). Sebagai contoh, satu obyek manusia

mengirim obyek bola lampu sebuah pesan untuk menyala (melalui saklar). Obyek bola lampu

memiliki satu perilaku yang akan mengubah keadaan atau statenya dari padam menjadi menyala.

Obyek bola lampu menyalakan dirinya dan menunjukkan kepada obyek orang tersebut bahwa state

barunya adalah menyala.

ASOSIASI

Asosiasi adalah :“kelas-kelas yang terhubungkan satu sama lain secara konseptual”

- Contoh :

Ketika sebuah kelas berasosiasi dengan yang lain, setiap kelas biasanya memainkan peran pada

asosiasi tersebut.

Page 12: materi objek

Association (asosiasi) adalah hubungan antar obyek yang saling membutuhkan. Sedangkan

aggregation (agregasi) adalah bentuk khusus dari asosiasi yang menggambarkan seluruh bagian

suatu obyek merupakan bagian dari obyek lainnya. Sebagai contoh, obyek tanggal dapat disusun dari

obyek hari, obyek bulan dan obyek tahun.

Menemukan Dan Mengidentifikasi Objek Bisnis

Dalam usaha mengidentifikasi objek, beberapa para ahli metodologi merekomendasikan teknik

meneliti sebuah dokumen persyaratan atau dokumentasi terkait lainya dan menekankan pada kata-

kata yang menggambarkan objek yang potensial.Langkah –langkah yang disertakan untuk

mengidentifikasi dan menemukan objek bisnis untuk pemodelan objek bisnis untuk pemodelan

selama analisis sistem :

1. Menemukan objek potensial.langkah ini diselesaikan dengan cara meninjau setiap use case

untuk menemukan kata-kata benda yang berhubungan dengan keseluruhan bisnis atau

event.

2. Menyeleksi objek yang diusulkan . Tidak semua kandidat (kata benda) pada daftar kita

menggambarkan objek bisnis yang ada di dalam lingkup domain masalah kita. Dengan

menganalisis tiap kandidat dan mengajukan pertanyaan berikut, kita dapat menentukan

apakah kandidat itu harus di pertahankan atau dihapus dari daftar :

Apakah kandidat ini sebuah inonim dari objek lain ?

Apakah kandidat ini di luar lingkup sistem ?

Apakah kandidat ini sebuah aturan dengan behavior yang unik, atau apakah dia

merupakan aturan eksternal ?

Apakah kandidat ini tidak jelas dan perlu di fokuskan ?

Apakah kandit ini sebuah tindakan atau sebuah atribut yang mendeskripsikan objek

lain ?

Jika beberapa pertanyaan diatas dijawab “ya” selama analisis sebuah kandidat, maka

kandidat ini seharusnya dihapus dari daftar. Jika beberapa kandidat ditemukan pada

Page 13: materi objek

beberapa atribut, pastikan anda menyimpannya daftar terpisah sehingga tidak dilupakan.

Jika anda tidak yakin mengenai sebuah kandidat khusus , lebih baik memasukan kandidat itu

dalam sebuah daftar, jauh lebih mudah untuk menghapus kandidat tersebut jika kita

menentukan bahwa mereka bukan objek, daripada menambahkannya kembali sesudah

diagram kelas dibangun

Mengorganisir Objek Dan Mengidentifikasi Hubungan Objek-Objek

Class diagram adalah gambar grafis mengenai struktur objek statis dari suatu sistem,menunjukan

kelas-kelas objek yang menyusun sebuah sistem dan juga hubungan antara kelas objek tersebut

Langkah 1:

Mengidentifikasi asosiasi dan multiplicity pada langkah ini, kita perlu mengidentifikasi asosiasi yang

ada diantara objek dan kelompok.Ingat bahwa sebuah asosiasi antara dua objek atau kelompok

adalah satu objek atau kelas “perlu mengetahui”mengenai yang lain. Hal ini memperbolehkan satu

objek atau kelas referensi silang ke objek atau kelas lain dan untuk dapat mengirimnya pesan.Sekali

asosiasi telah diidentifikasi ,multiplicity yang menentukan asosiasi harus didefinisikan.

Sangat penting bahwa analis mengidentifikasi tidak hanya asosiasi yang jelas atau dikenali oleh para

pengguna .satu cara untuk membantu memastikan bahwa hubungan dapat diidentifikasi adalah

dengan menggunakan sebuah matriks objek/kelas

Langkah 2 :

Mengidentifikasi hubungan generalisasi /Spesialisasi.sekali kita telah mengidentifikasi dasar asosiasi

dan multiplicity mereka, kita harus menentukan apakah ada hubungan generalisasi

/spesialisasi ,juga dikenal sebagai hirarki klasifikasi atau adalah sebuah hubungan yang terdiri dari

supertype kelas (abstrak atau induk) dan subtype kelas (anak atau konkret).Hubungan generalisasi

dapat ditemukan dengan melihat diagram kelas.Apakah ada beberapa asosiasi diantara dua kelas

yang memiliki multiplicity satu ke satu

Langkah 3 :

Mengidentifikasi hubungan agregasi. Pada langkah ini kita harus menentukan apakah ada hubungan

agregasi atau komposisi dasar. Ingat bahwa agregasi adalah tipe hubungan unik dimana satu objek

adalah bagian dari objek lain.

Page 14: materi objek