Anda di halaman 1dari 39

Analisis dan Desain

Berorientasi
Obyek
PERTEMUAN 1
 Mata Kuliah : Analisa dan Desain
 Berorientasi Obyek
 Kode Mata Kuliah : TKD167
 SKS : 3
 Semester : 5
 Sifat Mata Kuliah : wajib
 Prasyarat : ADSI
Tujuan Umum :
 Mahasiswa mampu menganalisa dan
mendesain sistem yang berbasiskan pada
prinsip-prinsip obyek.
Tujuan Khusus
 Mahasiswa dapat menjelaskan latar belakang perlunya
metode berorientasi objek (OOA)
 Mahasiswa dapat menjelaskan konsep objek
 Mahasiswa dapat menjelaskan model dan penggunaan
metode berorientasi objek dalam pengembangan sistem
 Mahasiswa dapat menjelaskan model Objek.
 Mahasiswa dapat menjelaskan objek dan class
 Mahasiswa dapat menjelaskan siklus sistem (OODLC)
Object Development life Cycle
 Mahasiswa dapat menjelaskan requirement Model
 Mahasiswa mengeti class, hierarchies dan agregasi
 Mahasiswa dapat membuat diagram-diagram UML
 Mahasiswa dapat mengimplementasiksan konsep untuk
mendesain sistem yang berorientasi objek
Catatan
 Kontrak Kuliah :
 UTS : 25 %
 UAS : 35%
 TUGAS 1: CARI JURNAL, PRESENTASI (30
%)
 TUGAS 2 : MANDIRI
 QUIS : 10%
 Koordinator Kelas : dora (085646805727)
Sub Pokok Bahasan
Pertemuan 1
 Pengertian ADBO
 Teknologi Obyek

 Konsep Berorientasi Obyek

- Abstraksi
- Inheritance
- Polymorphism
- encapsulation
- Asosiasi
- Agregasi
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
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
 Ada beberapa pendekatan yang biasa
digunakan dalam menganalisa suatu sistem,
yaitu:
1. Functional Decomposition
2. Data Flow Approach
3. Object Oriented
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.
Data Flow Approach
 Data Flow Approach = data
(& control) flows + data (&
control) transformation + data
(& control) stores +
terminators + process specs
(mini-specs) + data dictionary
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).
OO- Object Oriented
 Object Oriented = classes
and objects
 + inheritance
 + communication with
messages
Structured vs Object-Oriented
 Structured
Pendekatan masalah berorientasi pada aksi
atau data
 Object-Oriented
Pendekatan masalah berorientasi pada aksi
dan data
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
1. Teknologi Obyek
2. Konsep Berorientasi Obyek
- Abstraksi
- Inheritance
- Polymorphism
- encapsulation
- Asosiasi
- Agregasi
Kompetensi
Mahasiswa mampu menjelaskan teknologi obyek
Mahasiswa mampu mendefinisikan konsep
berorientasi obyek.
Mahasiswa mampu menjelaskan abstraksi
Mahasiswa mampu menjelaskan inheritance
Mahasiswa mampu menjelaskan polymorphism
Mahasiswa mampu menjelaskan encapsulation
Mahasiswa mampu menjelaskan asosiasi
Mahasiswa mampu menjelaskan agregasi
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
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
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).
Pemrograman Berorientasi
Obyek (PBO)
 C++
 Java
 Visual Basic .net
 Delphi
 dll..
Ide dasar PBO
 Mengkombinasikan data dan fungsi/atribut
untuk mengakses data menjadi sebuah
kesatuan unit.
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
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.
Contoh Abstraksi
 Program mesin cuci → tidak butuh serial
number
 Program transaksi laundry → butuh serial
number
 Obyek sama-sama mesin cuci
Inheritance (Pewarisan)
 Adalah konsep yang menyatakan bahwa
metode atau atribut dalam kelas dapat
diturunkan atau digunakan kembali oleh
kelas lain.
Pewarisan (cont’d)
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)
Polimorphism
 Arti : mempunyai banyak bentuk Merupakan
suatu konsep yang menyatakan sesuatu
yang sama dapat memiliki berbagai bentuk
dan perilaku yang berbeda.
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
encapsulation
 Adalah pembungkusan/pengemasan data
dan fungsi dalam wadah bernama obyek.
 atau...Menyembunyikan operasi-operasi dari
dunia luar dan dari obyek-obyek lain
Contoh Encapsulation
 Televisi :
- Tampak luar hanya layar dan beberapa
 tombol operasi
- Di dalam terkandung kompleksitas
rangkaian elektronika
Asosiasion
 Merupakan relasi atau hubungan obyek satu
dengan lainnya.
 Sebuah obyek dapat berelasi dengan obyek
yang lain
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
Contoh Agregasi
Contoh Agregasi
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

Anda mungkin juga menyukai