35
Teknik Informatika S1 Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS [email protected] +6281329571612 Pengenalan OOAD Object Oriented Analysis and Design

Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Embed Size (px)

Citation preview

Page 1: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Teknik Informatika S1

Disusun Oleh:Egia Rosi Subhiyakto, M.Kom, M.CSTeknik Informatika [email protected]+6281329571612

Pengenalan OOAD

Object Oriented Analysis and Design

Page 2: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

SILABUS MATA KULIAH

1. Introduction to OOAD2. Introduction to UML

3. Requirement and Use Case

4. Analysis

5. Software Architecture

6. Software Architecture Modeling

7. Design Patterns

8. Design

9. Implementation

10. Testing

Page 3: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Sejarah OOAD

✓ Metode beorientasi objek mulai berkembang ketika Grady Booch

pada tahun 80-an mempublikasikan suatu paper bagaimana

melakukan perancangan untuk bahasa ADA namun memberi judul

paper tersebut dengan : Object-Oriented Design.

✓ Selanjutnya ide tersebut terus ia kembangkan sampai tahun 90

an.

Page 4: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Sejarah OOAD

✓ Pada tahun 1991 Peter Coad dan Yourdon memperkenalkan

metode berorientasi objek yang lebih sederhana dibandingkan

Booch.

✓ Metode ini menjadi cepat populer karena mendukung layanan-

layanan yang terdapat pada C++.

✓ Pada waktu itu C++ merupakan bahasa pemrograman berorientasi

objek yang paling populer .

Page 5: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Sejarah OOAD

✓ Pada tahun 1994 Ivar Jacobson memperkenalkan konsep use case

dan object oriented software engineering.

✓ Pada tahun 1994 itu juga yaitu bulan Oktober 1994 Booch,

Rumbaugh dan Jacobson, mempelopori usaha untuk penyatuan

notasi pendekatan berorientasi objek.

✓ Pada tahun 1995 dihasilkan draft pertama dari UML (versi 0.8).

✓ Sejak tahun 1996 pengembangan tersebut dikoordinasikan oleh

Object Management Group (OMG – http://www.omg.org).

Page 6: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Sejarah OOAD

✓ Tahun 1997 UML versi 1.1 muncul, dan saat ini versi terbaru

adalah versi 1.5 yang dirilis bulan Maret 2003.

✓ Booch, Rumbaugh dan Jacobson menyusun tiga buku serial

tentang UML pada tahun 1999.

✓ Sejak saat itulah UML telah menjelma menjadi standar bahasa

pemodelan untuk aplikasi berorientasi objek [DHA03]

Page 7: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Mengapa OOAD?

?

Page 8: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Mengapa OOAD?

• Memudahkan pemanfaatan ulang code dan arsitektur

• Lebih mencerminkan dunia nyata

o lebih tepat dalam menggambarkan entitas,

dekomposisi berdasarkan pembagian yang natural,

lebih mudah untuk dipahami dan dirawat

Page 9: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Mengapa OOAD?

• Kestabilan

o perubahan kecil dalam requirement tidak berarti

perubahan yang signifikan dalam sistem yang

sedang dikembangkan

• Lebih mudah disesuaikan dengan perubahan (Adaptif)

Page 10: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Kapan kita menggunakan OO?

• Jika perangkat lunak (PL) yang dibangun cukup kompleks

• Jika PL yang dibangun diperkirakan akan tumbuh makin

kompleks di masa mendatang

• Jika kita ingin membangun PL yang dapat dipergunakan

kembali di masa mendatang (reusable)

Page 11: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Konsep Kunci Perancangan

Berorientasi Object

1. Peran Sentral dari Object (Central role of object)

• Object sebagai inti dari desain perangkat lunak bukan

proses

o Proses rentan terhadap perubahan dan sebagian sistem lama tidak dapat

digunakan kembali (re-usable)

• Object berpusat pada struktur data dan method yang

dapat dimodifikasi/disesuaikan dengan kebutuhan

Page 12: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Konsep Kunci Perancangan

Berorientasi Object

2. Gagasan Kelas/ the notion of a class

• Kelas-kelas mengijinkan perancang software untuk

melihat object sebagai jenis entitas yang berbeda

• Melihat sebagai object memungkinkan untuk

menggunakan mekanisme klasifikasi untuk

mengkategorikan jenis, mendefinisikan hirarki, dan

terlibat pada ide-ide spesialisasi dan generalisasi

Page 13: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Konsep Kunci Perancangan

Berorientasi Object

3. Suatu bahasa untuk mendefinisikan sistem/ a language to

define the system

• Unified Modelling Language (UML) telah terpilih sebagai

alat standar untuk menggambarkan produk akhir dari

kegiatan desain

• Dokumen-dokumen yang dihasilkan dalam bahasa ini dapat

dipahami secara universal, dengan demikian dapat

digunakan sebagai blueprint oleh enginer teknik lainnya

Page 14: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Konsep Kunci Perancangan

Berorientasi Object

4. Extendability dan kemampuan beradaptasi/ The

notions of extendibility and adaptability

• Software memiliki fleksibilitas yang tidak biasanya ditemukan

dalam perangkat keras dan ini memungkinkan kita untuk

memodifikasi entitas yang ada

• Inheritance: memungkinkan menciptakan kelas baru dari

keturunan kelas yang ada (parent)

Page 15: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Cohesion & Coupling

• Selain konsep sebelumnya, salah satu konsep OOP yang

cukup penting adalah low coupling and high cohesion

• Cohesion berhubungan dengan responsibility sebuah class

• Coupling berhubungan dengan seberapa besar

ketergantungn class dengan class yang lain

Page 16: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Cohesion & Coupling (lanj)

• Semakin spesifik sebuah responsibility class, maka

akan semakin rendah tingkat ketergantungannya,

begitu juga sebaliknya

• Tujuan utama dari konsep ini adalah, fleksibilitas

sebuah class, artinya class yang didesain dengan low

coupling dan high cohesion, akan mudah di modifikasi

Page 17: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Berorientasi Objek?

Attribute:Topi, Baju, Jaket, Tas Punggung, Tangan, Kaki, Mata

Behavior:Cara Jalan ke DepanCara Jalan MundurCara Belok ke KiriCara Memanjat

Page 18: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Berorientasi Objek?

Attribute (State):Ban, Stir, Pedal Rem, Pedal Gas,Warna, Tahun Produksi

Behavior:Cara Menghidupkan MesinCara Manjalankan MobilCara Memundurkan Mobil

Attribute Variable (Member)Behavior Method (Fungsi)

Page 19: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Object

• Sebuah object adalah representasi dari sebuah

entitas, baik fisik, konseptual maupun software

• Obyek memiliki status (state) dan tingkah laku

(behavior), Status (state) disebut juga dengan atribut

• Pada OOP : status disimpan dalam variabel, dan

tingkah laku disimpan dalam method

Page 20: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Object

Example of object:

o Physical entity

o Conceptual entity

oSoftware entity

Truck

Chemical Process

Linked List

Page 21: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Class

• Sebuah Class merupakan definisi abstract dari sebuah object

• Class mendefinisikan struktur dan behaviour dari masing-masing

object di dalam sebuah class

• Class bertugas sebagai template untuk pembuatan obyek

• Jadi obyek merupakan hasil instansiasi dari class Obyek disebut

juga dengan instance

Page 22: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Contoh employee class dan object

Page 23: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Perbedaan Class dan Object

• Class: konsep dan deskripsi dari sesuatu

o Class mendeklarasikan method yang dapat digunakan

(dipanggil) oleh object

• Object: instance dari class, bentuk (contoh) nyata dari class

o Object memiliki sifat independen dan dapat digunakan

untuk memanggil method

• Contoh Class dan Object:

o Class: mobil

o Object: mobilnya pak Joko, mobilku, mobil berwarna

merah

Page 24: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Perbedaan Class dan Object

• Class seperti cetakan kue, dimana kue yg dihasilkan

dari cetakan kue itu adalah object

• Warna kue bisa bermacam-macam meskipun berasal

dari cetakan yang sama (object memiliki sifat

independen)

Page 25: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Attribute• Variable yang mengitari class, dengan nilai datanya bisa ditentukan

di object

• Variable digunakan untuk menyimpan nilai yang nantinya akan

digunakan pada program

• Variable memiliki jenis (tipe), nama dan nilai

• Name, age, dan weight adalah atribute (variabel) dari class

Person

Page 26: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Method

• Method merupakan hal-hal yang bisa dilakukan oleh obyek

dari suatu class

• Yang bisa dilakukan oleh method :

–Merubah nilai atribut suatu obyek

–Menerima informasi dari obyek lain

–Mengirim informasi ke obyek lain untuk melakukan sesuatu

Page 27: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Karakteritik Metodologi Berorientasi Objek

Metodologi pengembangan sistem berorientasi objek

mempunyai tiga karakteristik utama :

1. Encapsulation

2. Inheritance

3. Polymorphism

Page 28: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Karakteritik Metodologi Berorientasi Objek

1. 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.

Page 29: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Karakteritik Metodologi Berorientasi Objek

2. 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.

Page 30: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Karakteritik Metodologi Berorientasi Objek

2. Inheritance

✓ 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.

Page 31: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Karakteritik Metodologi Berorientasi Objek

2. Inheritance

Contoh:

Page 32: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Karakteritik Metodologi Berorientasi Objek

3. Polymorphism

✓ Polimorphism yaitu konsep yang menyatakan bahwa sesuatu yang

sama dapat mempunyai bentuk dan perilaku berbeda.

✓ Polimorphism 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.

Page 33: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Benefit and Drawbacks of OO

Development

Benefit/Keuntungan

• Objek sering kali mencerminkan entitas dalam sistem

aplikasi, ini membuat designer mudah dalam membuat kelas

• Membantu meningkatkan productivity, karena kemampuan

re-use software yang ada

• Lebih mudah untuk mengakomodasi perubahan, fleksibel.

Contoh: meskipun ada perubahan requirement

• Mengurangi resiko dalam system development

Page 34: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

Benefit and Drawbacks of OO

Development

Drawbacks/Kerugian

• Pada sistem yang kompleks, dengan banyaknya objek yang

diciptakan serta objek-objek yang berinteraksi dengan

cara yang kompleks, mengakibatkan poor memory access

times

• Susahnya mempelajari dan menggunakan konsep OO

khususnya yang masih terpaku dengan konsep struktural

Page 35: Object Oriented Analysis and Design - dinus.ac.id filePada tahun 1991 Peter Coad dan Yourdon memperkenalkan metode berorientasi objek yang lebih sederhana dibandingkan Booch. ... kegiatan

TERIMA KASIH