Anda di halaman 1dari 41

Object Oriented Design

Kelompok I
Icha, Yoko, Arik, Pande, Vena

PROGRAM PASCA SARJANA


ILMU KOMPUTER
UNDIKSHA 2017
Contents

Konsep Object Oriented Analysis and Design


Prinsip Metodelogi Berorientasi Objek
Perkembangan Metode OOAD
UML (Unified Modeling Language)
Overview

Berorientasi objek: kumpulan obyek-obyek


diskrit yang saling berinteraksi satu sama lain
yang memiliki atribut dan perilaku tertentu.
Karakteristik penting: Kumpulan kelas & objek
yang dibangun dapat digunakan kembali.
Perbedaan metodelogi Berorientasi
Object & Berorientasi fungsi

Sistem
Penyewaan VCD

Sistem
Penyewaan
VCD Anggota
VCD

Pegawai Register
Pengelol
Peminja Pengemba
aan data
anggota man VCD lianVCD
VCD
Metodelogi berorientasi
Object Metodelogi berorientasi fungsi
Model Proses Object Oriented
Konsep Object Oriented Analysis and
Design (OOAD) APA???
- Input: Dokumen
permintaan
- Mengidentifikasi
objek & kelas
- Output: Model
OOA (Object Konseptual
Oriented Analysis) (Deskripsi
OOAD fungsional sistem)
OOD (Object
Oriented Design)
Bagaimana??
- Input: Model
Konseptual
- Output: Design
Sistem (Arsitektur,
antarmuka, dll )
Konsep Object Oriented Analysis and Design (OOAD)

1. Object & Class


Apa itu Class ??
Object
adalah Benda secara fisik dan
Isi sebuah kelas adalah:
konseptual yang ada di sekitar kita.
Class Identitas (field/attributes)
Tingkah
Object laku (behavior /
method)
Object
Blue print
Group dari object
Deskripsi
implementasi object
Representation of an object oriented
class
Contoh Object & Class
Object-oriented =
objek +
klasifikasi +
pewarisan +
komunikasi
Konsep Object Oriented Analysis and Design (OOAD)

Prinsip Metodelogi Berorientasi Objek


Polymorphishm
-Banyak bentuk
Abstraction -Sebagai object dari
- Membuang classnya sendiri
detail yang tidak -Sebagai object dari
penting Berorientasi
super classnya
Object
sendiri

Inheritance (Pewarisan)
Encapsulation
- Mendefinisikan kelas
- Penyembunyian
baru (subclass) yang
informasi
mewarisi sifat dari kelas
yang sudah ada (super
class)
Perkembangan Metode OOAD
Pengertian UML

UML Bahasa yang menjadi standar dalam industri


Visualisasi, merancang dan mendokumentasikan
perangkat lunak

Pengembangan software berbasis OO (Object


Oriented) C++, Java, C# atau VB. Net.
Bisa juga untuk modeling aplikasi procedural (ex:
VB atau C)
UML (Unified Modeling Language)
Analysis and Design Process
Zachman Framework

System requirements

legend

Use Case Class


Model Diagram Structural

Behavioral

Activity/Sequence State
Diagram Chart

Component Deployment
Diagram Diagram
System Development
Use case diagram

Use case diagram menggambarkan


fungsionalitas yang diharapkan dari sebuah
sistem. Yang ditekankan adalah apa yang
diperbuat sistem, dan bukan bagaimana.
Sebuah use case merepresentasikan sebuah
interaksi antara aktor dengan sistem.
Use Case Modeling: Core Elements

Construct Description Syntax


use case A sequence of actions, including
UseCaseName
variants, that a system (or other
entity) can perform, interacting with
actors of the system.
actor A coherent set of roles that users
of use cases play when interacting
with these use cases.
ActorName

system Represents the boundary between


boundary the physical system and the actors
who interact with the physical
system.
Use Case Modeling: Core Relationships
Construct Description Syntax
association The participation of an actor in a use
case. i.e., instance of an actor and
instances of a use case communicate
with each other.
generalization A taxonomic relationship between a
more general use case and a more
specific use case.
extend A relationship from an extension use
case to a base use case, specifying
how the behavior for the extension <<extend>>
use case can be inserted into the
behavior defined for the base use
case.
Use Case Modeling: Core Relationships
(contd)

Construct Description Syntax


include An relationship from a base use case
to an inclusion use case, specifying <<include>>
how the behavior for the inclusion use
case is inserted into the behavior
defined for the base use case.
Verify Cridit Chard
<<include>>
Rent Vehicle
Rent Vehicle

Customer <<include>>
Check Driver's Licence

Communication
Relationships Include
Relationships

Gold Card Customer Regular Customer


<<extend>>
Arrange for added Insurance Rent Vehicle
Menyusun asuransi tambahan

Generalizes
Relationships
Extends Relationships
Contoh: Use Case Diagram

Studi kasus ATM

System
Use Case

Use Case
Actor (People) Use Case Actor (Systems)
Use Case Relationships
Supply Order
Customer Data Product Arrange
Payment

include include include

Place Order

Extension points extend


1 * additional requests : the salesperson asks for
after creation of the order the catalog

Request
Catalog
Class Diagram

Class adalah sebuah spesifikasi yang jika diinstansiasi


akan menghasilkan sebuah objek dan merupakan inti
dari pengembangan dan desain berorientasi objek.

Class menggambarkan keadaan (atribut/properti) suatu


sistem, sekaligus menawarkan layanan untuk
memanipulasi keadaan tersebut (metoda/fungsi).

Class diagram menggambarkan struktur dan deskripsi


class, package dan objek beserta hubungan satu sama
lain seperti containment, pewarisan, asosiasi, dan lain-
lain.
Class Diagram
Class memiliki tiga area pokok :
1. Nama (dan stereotype)
2. Atribut
3. Metoda

Atribut dan metoda dapat memiliki salah satu sifat berikut :


Private, tidak dapat dipanggil dari luar class yang
bersangkutan

Protected, hanya dapat dipanggil oleh class yang


bersangkutan dan anak-anak yang mewarisinya

Public, dapat dipanggil oleh siapa saja


Object-Oriented Approach
Objects are abstractions of real-world or system
entities
Reality Domain Model Domain

bus

models
vehicle

car

models

cup

models

Intro | Classes | Relations | Generalization | Guidelines


Object-Oriented Approach
Object adalah gambaran dari entity, baik dunia
nyata atau konsep dengan batasanbatasan dan
pengertian yang tepat.
Object bisa mewakili sesuatu yang nyata seperti
komputer, mobil dll.
Object juga dapat berupa konsep seperti proses
kimia, transaksi bank, permintaan pembelian, dll.
Setiap object dalam sistem memiliki tiga
karakteristik yaitu State (status), Behaviour (sifat)
dan Indentity (identitas).
Classes
Product

serialNumber
name
A class is a price
template for actual, buy()
in-memory, display()
Class Name
instances
Attributes

Operations
Class Diagram Format and association:

Class Name Role Association Role Class Name Navigability


name name name
Attributes 1
Attributes
1..*

Operations Operations
(Methods) (Methods)

Multiplicity

Multiplicity Notation
1 : One and only one
0..* : None or more
1..* : One or more
0..1 : None or one
Relationships of Class

There three types of relationship :

1. Is-a (Generalization, Realization: Inheritance)


2. Has-a (Association)
3. Others (Association , Dependency)

Association (Aggregation, Composition)


Aggregation (One of associations)
Composition (One of associations)

Generalization

Realization

Dependency
Pembuatan Class

Transfer Withdrawal

ATM ATM Card User Bank


Contoh Class Diagram
Aggregation : Aggregation Indicator
Multiplicity

1 1
Person
Company 1 Owner
Role

1..*

Employee Person

Company

owner:Person
employee[]:Person

Detail of the class


Contoh
Contoh Class Diagram (Studi Kasus
ATM)
StateChart Diagram

Statechart diagram menggambarkan transisi dan


perubahan keadaan (dari satu state ke state
lainnya)
Pada umumnya statechart diagram
menggambarkan class tertentu (satu class dapat
memiliki lebih dari satu statechart diagram).
StateChart Diagram

Dalam UML, state digambarkan berbentuk


segiempat dengan sudut membulat dan memiliki
nama sesuai kondisinya saat itu.
Transisi antar state umumnya memiliki kondisi
guard yang merupakan syarat terjadinya transisi
yang bersangkutan, dituliskan dalam kurung
siku.
Action yang dilakukan sebagai akibat dari event
tertentu dituliskan dengan diawali garis miring.
Titik awal dan akhir digambarkan berbentuk
lingkaran berwarna penuh dan berwarna
setengah.
State Diagram :Authentication Process

End State
Start State
Validating
Editing [Validation]
entry / Display message
entry / init time do / Ask to server [Server-answer:ok]
exit / Hide message
[Time Out]
[Server answer:denial]

End State
End State
State Diagram
Class Open Process
SOFTWARE DAN APLIKASI YANG DIGUNAKAN UNTUK
PERANCANGAN SISTEM (UML)

Berlisensi Open source


Rational Rose Start UML
Microsof Office Visio Argo UML
Poseidon For UML
BoUML
VioletUML
Papyrus UML
Modelio

Anda mungkin juga menyukai