2. Paradigma berorientasi objek
Rekayasa
perangkat lunak yang memandang
sistem sebagai kumpulan obyek2 dikstrit
yang saling berinteraksi dengan lainya
Setiap
obyek memiliki dua pengenal, yaitu
informasi tentang obyek dan perilaku yang
mengaturnya
4. Pokok Bahasan
Pengertian ADBO
Teknologi Obyek
Konsep Berorientasi Obyek
- Abstraksi
- Inheritance
- Polymorphism
- encapsulation
- Asosiasi
- Agregasi
5. Pengertian ADBO
Analisa:
Mempelajari
domain
permasalahan
bisnis
untuk
merekomendasikan perbaikan dan menentukan kebutuhan
system untuk menyelesaikan permasalahan.
Desain :
Menentukan solusi teknis/computer-based dimana solusi ini
berdasarkan kebutuhan system yang telah diidentifikasi pada proses
analisis.
Analisa dan Desain Berorientasi Object :
Memahami domain permasalahan dan merumuskan solusinya dengan
menggunakan pendekatan object(benda, konsep, atau entitas)
Memudahkan pemanfaatan ulang code dan arsitektur
Lebih mencerminkan dunia nyata (lebih tepat dalam menggambarkan
entitas perusahaan, dekomposisi berdasarkan pembagian yang
natural, lebih mudah untuk dipahami dan dirawat)
Kestabilan (perubahan kecil dalam requirement tidak berarti
perubahan yang signifikan dalam system yang sedang dikembangkan)
Lebih mudah disesuaikan dengan perubahan
6. Metode Analisis
Biasanya
analisa sistem dimulai dengan
adanya dokumen permintaan (requirement)
yang diperoleh dari semua pihak yang
berkepentingan. (Mis: klien, developer, pakar,
dll)
Dokumen permintaan memiliki 2 fungsi:
1. memformulasikan kebutuhan klien
2. membuat suatu daftar tugas
7. Ada
beberapa pendekatan yang biasa
digunakan dalam menganalisa suatu sistem,
yaitu:
1. Functional Decomposition
2. Data Flow Approach
3. Object Oriented
8. Function Decomposition
Functional Decomposition = function
+ sub-functions + functions
interfaces
Functional decomposition hanya
menghasilkan suatu spesifikasi
fungsional yang memetakan subyek
secara tidak langsung.
Functional decomposition sulit
dilakukan karena sifat sistem yang
mudah berubah. Oleh sebab itu
sistem analist harus dapat
menentukan fungsi-fungsi yang
memiliki potensi untuk berubah.
9. Data Flow Approach
Data
Flow Approach = data
(& control) flows + data (&
control) transformation + data
(& control) stores +
terminators + process specs
(mini-specs) + data dictionary
10. Data Flow Approach
Strategi:
Mengikuti alir data yang terjadi
dalam sistem.
Yang menjadi masalah adalah, manusia tidak
terbiasa berpikir dengan cara tersebut dalam
memecahkan permasalahan (Metode
pengorganisasian).
11. OO- Object Oriented
Object
Oriented = classes
and objects
+ inheritance
+ communication with
messages
12. Structured vs Object-Oriented
Structured
Pendekatan masalah berorientasi pada aksi
atau data
Object-Oriented
Pendekatan masalah berorientasi pada aksi
dan data
13. Faktor Pendorong OO
Konsep pendekatan OO yang sudah cukup matang.
Fokus : pengkodean desain analysis
Dekomposisi: pemrograman terstruktur desain
terstrukur
analysis terstruktur : Kemajuan teknologi yang
memungkinkan pembuatan sistem berorientasi
obyek Assembler, Pascal, ALGOL, c++, java
Sifat dari sistem/program yang dibuat banyak
berubah
Sistem sekarang yang domain-oriented.
abstraksi prosedural vs. abstraksi data
14. 1. Teknologi Obyek
2. Konsep Berorientasi Obyek
- Abstraksi
- Inheritance
- Polymorphism
- encapsulation
- Asosiasi
- Agregasi
15. 1. Teknologi Objek
Teknologi
perangkat lunak yang
mendefinisikan sistem dalam hal obyek yang
mengkonsolidasikan data dan tingkah laku
(ke dalam obyek).
Obyek menjadi dapat digunakan kembali dan
komponen yang dapat diperluas untuk
developer perangkat Lunak
16. Objek
Obyek – sesuatu yang dapat dilihat, disentuh atau
dirasakan dan digunakan pengguna serta akan
disimpan data dan perilakunya. Bisa berupa:
Orang, tempat, benda atau kejadian
Pegawai, pelanggan, guru, dosen, mahasiswa, murid.
Gudang, kantor, bangunan, ruangan.
Kendaraan, produk, konputer, video.
Atribut – data yang menyatakan sifat dari obyek
17. Tingkah laku
Tingkah
laku (behavior) – hal-hal yang
dapat dikerjakan obyek dan merupakan
fungsi yang dikenakan pada data (atribut)
dari obyek tersebut.
Dalam paradigma OO, perilaku obyek
disebut metode, operasi, atau layanan
(method,operation, or service).
19. Ide dasar PBO
Mengkombinasikan
data dan fungsi/atribut
untuk mengakses data menjadi sebuah
kesatuan unit.
20. Memahami istilah dalam OOP /
PBO
Obyek
: komponen di dalam sebuah
program
Property : karakteristik yang dimiliki
obyek
Method : aksi yang dapat dilakukan oleh
obyek
Event : kejadian yang dapat di alami oleh
obyek
21.
22. 2. Konsep Berorientasi Objek
a. Abstraksi
Prinsip
untuk merepresentasikan dunia nvata
yang kompleks menjadi satu bentuk model
yang sederhana dengan mengabaikan
aspek-aspek lain yang tidak sesuai dengan
permasalahan.
Secara sederhana dikatakan membuang
atribut obyek dan operasi yang hanya sampai
pada yang benarbenar diperlukan.
23. Contoh Abstraksi
Program
mesin cuci → tidak butuh serial
number
Program transaksi laundry → butuh serial
number
Obyek sama-sama mesin cuci
24. b. Inheritance (Pewarisan)
Adalah
konsep yang menyatakan bahwa
metode atau atribut dalam kelas dapat
diturunkan atau digunakan kembali oleh
kelas lain.
27. Generalisasi,Supertype, dan
Subtype
Generalisasi/spesialisasi – atribut dan perilaku
yang sama untuk beberapa kelas dikelompokkan ke
dalam kelas tersendiri yang disebut supertype.
Supertype – entitas yang berisi atribut dan perilaku
yang sama untuk satu atau lebih subtipe kelas. Juga
disebut parent class.
Subtype – kelas yang mewarisi (inherit) atribut dan
perilaku dari kelas supertype serta mungkin juga
berisi atribut dan perilaku lain yang khusus. Juga
disebut kelas anak (child). Jika berada pada tingkat
yang paling rendah dalam hirarki pewarisan, akan
disebut kelas konkret (concrete)
28. c. Polimorphism
Arti
: mempunyai banyak bentuk Merupakan
suatu konsep yang menyatakan sesuatu
yang sama dapat memiliki berbagai bentuk
dan perilaku yang berbeda.
29. Contoh
Polimorphism pada C++ dapat dikenakan
pada fungsi atau operator dan di kenal
dengan overloading.
Berikut fungsi dengan nama gambar :
gambar(x,y); Menggambar titik
gambar(x1,y1,x2,y2); Menggambar garis
gambar(x,y,5); Menggambar lingkaran
33. f. Agregasi
Agregasi – sebuah relasi yang
menyatakan bahwa satu kelas
“utuh (whole)” yang lebih besar
memuat satu atau lebih kelas
“bagian (part)” yang lebih kecil.
Sebaliknya, kelas “bagian”
adalah bagian dari kelas “utuh”
Dalam UML 2.0 notasi agregasi
sudah tidak dipakai lagi
36. tugas
Buat
ringkasan materi berikut dan
presentasikan minggu depan :
Model dan permodelan
Definisi model
Pre Modelling
Model pada Pengembangan Sistem
Beberapa contoh metode pemodelan awal
Permodelan bisnis