• Tidak ada hasil yang ditemukan

OOAD Pengenalan Analisis Berorientasi Objek

N/A
N/A
Protected

Academic year: 2019

Membagikan "OOAD Pengenalan Analisis Berorientasi Objek"

Copied!
63
0
0

Teks penuh

(1)

ANALI SI S BERORI ENTASI OBJEK

Defri Kurniaw an M .Kom

(2)

Cont ent

 Analisis Berorint asi Objek

 Analysis Design Paradigm and Diagrams

 UM L

 What UM L?

 Why M odeling?

 The Triangle of Success in Soft w are Dev

 UM L Tools, Diagram, Version, St ruct ure Diagram, Behavior Diagram,

Problem, Process

 Syst em Analysis and Design w it h UM L

 Use Case Diagram

 Act ivit y Diagram

 Sequence Diagram

(3)

Analisis Ber or ient asi Objek

Analisis Berorientasi Objek

 Berfokus pada pendefinisian kelas-kelas dan cara

bagaimana mereka saling bekerjasama sat u dengan

yang lainnya unt uk memenuhi kebut uhan para pelanggan.

 Pada Paradigma Analysis Design dan Diagram,

Unified M odeling Language (UM L) merupakan

(4)

Analysis Design Par adigm and Diagr ams

1.

Dat a

-orient ed

DFD

2.

Process

-orient ed

Flow chart

3.

Object

-orient ed (dat a + process)

(5)

What is t he UML?

 UM L: Unified M odeling Language

 UM L dapat digunakan unt uk memodelkan semua

proses dalam siklus hidup pengembangan dan seluruh t eknologi implement asi yang berbeda

 UM L adalah bahasa st andar unt uk

memvisualisasikan,menspesifiksi, konst ruksi, dan mendokument asikan art ifak dari sist em perangkat lunak

 UM L adalah suat u alat komunikasi unt uk t eam dan

(6)

Why Modeling?

M odeling menangkap bagian pent ing dari sist em

(James Rumbaugh)

Business Process Comput er Syst em

Visual M odeling adalah pemodelan yang

(7)

The Tr iangle of Success in Soft war e Dev.

Notation:

Standard

Tools:

Support Standard and

Process

Process:

(8)

UML Tools

Rat ional Rose

Visual Paradigm

Ent erprise Archit ect

M icrosoft Visio

St ar UM L

(9)

UML Diagr ams

Actor A

Use Case 1

Use Case 2

Actor B

user : Clerk

mainWnd : MainWnd

fileMgr : FileMgr

repository : Repository document : Document gFile : GrpFile

9: sortBy Name ( )

L

1: Doc view request ( ) 2: fetchDoc( )

5: readDoc ( ) 7: readFile ( )

3: create ( ) 6: fillDocument ( ) 4: create ( )

Repository DocumentList

FileList

user

mainWnd fileMgr : FileMgr

Forward and Reverse

Engineering

Target System

Openning

Writing

Reading Closing add f ile [ numberOf f ile==MAX ] /

f lag OFF

add f ile

close f ile close f ile

Use Case 3

Use-Case

Diagram Class Diagram

Collaboration Diagram

Sequence Diagram

Component Diagram create( ) fillFile( ) rep

Repository name : char * = 0 readDoc( ) readFile( ) (from Persistence)

FileMgr fetchDoc( ) sortBy Name( )

DocumentList add( ) delete( )

Document name : int docid : int numField : int get( ) open( ) close( ) read( ) sortFileList( ) create( ) fillDocument( ) fList

1 FileList add( ) delete( )

1

File read( )

read() fill the code..

(10)

UML 2.0

UM L version 2.0 memiliki 14 diagram

yang t erbagi pada 2 kelompok besar:

1.

St ruct ure

Diagrams

(11)
(12)

UML St r uct ur e Diagr ams

M ew akili

dat a dan hubungan st at is

pada

sist em informasi

1. Class Diagram

2. Object Diagram

3. Package Diagram

4. Deployment Diagram

5. Component Diagram

(13)

St r uct ur e Diagr ams

1.

Class

Diagrams

 Kosakat a umum yang digunakan oleh analis dan pengguna

 M ew akili sesuat u/ benda (employee, paycheck,…)

 M enenjukkan hubungan ant ar kelas

2.

Object

Diagrams

 M irip dengan Class Diagram

 Gambaran t ent ang objek-objek dalam sist em

 Hubungan ant ar objek

3. Package Diagrams

(14)

St r uct ur e Diagr ams

4. Deployment Diagrams

 M enunjukkan arsit ekt ur fisik dan komponen perangkat lunak sist em

 For example, net w ork nodes

5. Component Diagrams

 Hubungan fisik di ant ara komponen perangkat lunak

 Example – Client / Server (M esin mana yang berjalan pada

soft w are yang mana)

6. Composit e St ruct ure

(15)

UML Behavior Diagr ams

M enggambarkan hubungan dinamis ant ara

objek yang mew akili sist em informasi bisnis

1. Act ivit y Diagram 2. Sequence Diagram

3. Communicat ion Diagram 4. Int eract ion Diagram

5. Timing Diagram

(16)

Behavior Diagr ams

1. Act ivit y Diagrams

 M odel proses pada suat u sist em informasi

 Example: Business w orkflow s, business logic

2. Int eract ion Diagrams

 M enunjukkan int eraksi anat ar objek

3. Sequence Diagrams

 Urut an berdasarkan w akt u int eraksi

4. Communicat ion Diagrams

(17)

Behavior Diagr ams

5. Int eract ion Diagrams

 Kilasan aliran cont rol dari suat u proses

6. Timing Diagrams

 M enunjukkan bagaimana suat u objek berubah dari w akt u ke w akt u

7. St at e M achines

 M emeriksa perilaku dari suat u kelas

 M enunjukkan model keadaan-keadaan yang berbeda dan t ransisi keadaan dari suat u objek

8. Use-Case Diagrams

 M enunjukkan int eraksi ant ara sist em dan lingkungan

(18)

UML Pr ocess (EA Spar x)

1.

M enampilkan bat as sist em dan fungsi ut ama

menggunakan

use cases dan act ors

2.

M emodelkan proses bisnis organisasi

dengan

act ivit y diagram

3.

M enggambarkan realisasi use case

menggunakan

sequence diagrams

4.

M erepresent asikan st rukt ur st at is dari suat u

sist em dengan menggunakan

class diagram

5.

M engungkapkan pelaksanaan arsit ekt ur fisik

(19)

UML Pr ocess (EA Spar x)

1.

Use Cases

Diagram

2.

Act ivit y

Diagram

3.

Sequence

Diagram

4.

Class

Diagram

(20)

UML Pr ocess (Kendal, 2011)

1. Sebuah use case diagram, menggambarkan bagaimana sist em

yang digunakan. Analis memulai dengan use case diagram 2. Sebuah act ivit y diagram, menggambarkan aliran keseluruhan

kegiat an. Set iap use case dapat membuat sat u diagram akt ivit as

3. Sequence diagram, menunjukkan urut an kegiat an dan

hubungan kelas. Set iap use case dapat membuat sat u at au lebih sequence diagram

4. Class diagrams, menunjukkan kelas dan hubungan. Sequence diagram digunakan unt uk menent ukan kelas

5. St at echart diagram, menunjukkan keadaan t ransisi. Set iap

(21)
(22)

Syst em Analysis and Design wit h UML

1. Syst em Analysis

1. Business Process Ident ificat ion

Use Case Diagram

2. Business Process M odeling

Activity Diagram

3. Business Process Realizat ion

Sequence Diagram

2. Syst em Design

1. Program Design

1. Class Diagram

2. Package Diagram (Gabungan class yang sesuai)

3. Deployment Diagram (arsit ekt ur soft w are dari sist em yang dibangun)

2. User Interface Design (Buat UI design)

(23)

USE CASE DIAGRAM

 M enggambarkan fungsionalit as yang diharapkan dari sebuah sist em.

 M enekankan “ apa” yang diperbuat sist em, dan bukan “ bagaimana” .

 M enggambarkan kebut uhan sist em dari sudut

pandang pengguna (user)

 M engfokuskan pada proses komput erisasi

(aut omat ed processes)

(24)

USE CASE DIAGRAM – Use case

Use case diagram t erdiri dari:

Use case

Act ors

Relat ionship

Syst em boundary boxes (opt ional)

Use case dinot asikan dengan

gambar horizont al ellipse

Use case biasanya menggunakan kata kerja

(25)

USE CASE DIAGRAM - ACTOR

 Act or menggambarkan orang, sist em at au ext ernal

ent it as / st akeholder yang menyediakan at au

menerima informasi dari sist em

 Act or menggambarkan sebuah t ugas/ peran/ role,

bukan posisi sebuah jabat an

 Act or memberi input at au menerima informasi dari

sist em

 Act or biasanya menggunakan Kata benda

 Indikasi <<syst em>> unt uk sebuah act or yang merupakan sebuah sist em

 Let akkan act or ut ama anda pada pojok kiri at as dari

(26)

USE CASE DIAGRAM - Associat ion

 Ujung panah pada associat ion ant ara act or dan use

case mengindikasikan siapa/ apa yang memint a

int eraksi dan bukannya mengindikasikan aliran dat a

 Sebaiknya gunakan Garis t anpa panah unt uk

associat ion ant ara act or dan use case

 associat ion ant ara act or dan use case yang

menggunakan panah t erbuka unt uk mengindikasikan

bila act or berint eraksi secara pasif dengan syst em

(27)

USE CASE DIAGRAM - Associat ion

 <<include>> t ermasuk di dalam use case lain (required) / (diharuskan)

 Pemanggilan use case oleh use case lain, cont ohnya adalah pemanggilan sebuah fungsi program

 Tanda panah t erbuka harus t erarah ke sub use case

Buka Rekening

<<include>> catat data pribadi

(28)

 <<ext end>> perluasan dari use case lain jika kondisi at au syarat t erpenuhi

 Kurangi penggunaan associat ion Ext end ini, t erlalu banyak pemakaian associat ion ini membuat diagram sulit

dipahami.

 Tanda panah t erbuka harus t erarah ke parent / base use case

Buka Rekening

<<extend>>

Buka Deposito Nasabah

(29)

USE CASE DIAGRAM - Associat ion

 Generalizat ion/ inherit ance digambarkan dengan sebuah garis

berpanah t ert ut up pada salah sat u ujungnya yang menunjukkan lebih umum

 Generalizat ion/ inherit ance dipakai ket ika ada sebuah

(30)

USE CASE DIAGRAM - syst em boundar y

boxes

 Digambarkan dengan kot ak disekit ar use case, unt uk

menggambarkan jangkauan sist em (scope of of your syst em).

 Biasanya digunakan apabila t erdapat beberapa alt ernat if sist em yang dapat dijadikan pilihan

(31)

ACTIVITY DIAGRAM

 M enggambarkan proses bisnis dan urut an akt ivit as

dalam sebuah proses

 Dipakai pada business modeling unt uk

memperlihat kan urut an akt ifit as proses bisnis

 St rukt ur diagram ini mirip flow chart at au Dat a Flow

Diagram pada perancangan t erst rukt ur

(32)

ACTIVITY DIAGRAM – simbol

Simbol Ket erangan

Start Point

End Point

Activities

Fork (Percabangan)

Join (Penggabungan)

Decision

Swimlane

Sebuah cara untuk mengelompokkan activity berdasarkan Actor

(33)

ACTIVITY DIAGRAM – cont oh

Supplier Bagian Pembelian

Bagian Gudang

Memberi informasi data Barang yang akan dipesan

Menerima

Kirim Barang disertai Faktur Terima Barang

dan Faktur

(34)

Sequence Diagram

Sequence diagram menggambarkan interaksi antar objek

di dalam dan di sekitar sistem (termasuk pengguna,

display, dan sebagainya) berupa message yang digambarkan terhadap waktu.

Sequence diagram terdiri atar dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait).

Sequence diagram biasa digunakan untuk

menggambarkan skenario atau rangkaian langkah-langkah

yang dilakukan sebagai respons dari sebuah event untuk

menghasilkan output tertentu

 Diawali dari apa yang men-trigger aktivitas tersebut,

proses dan perubahan apa saja yang terjadi secara

(35)
(36)
(37)

Case St udy: ATM

Syst em

System Analysis:

1. Business Process Identification

Use Case Diagram

2. Business Process Modeling

Activity Diagram

3. Business Process Realization

(38)

Latihan

 Terdapat Sist em ATM dimana pengguna dapat :

1. M elihat Saldo

2. M ent ransfer Uang

3. M engambil Uang

4. Logout

 Buat lah use case diagram, act ivit y diagram, dan

(39)
(40)

Layar

Kotak Uang Kotak Kart u

(41)

M asukkan PIN:

Kotak Uang Kotak Kart u

(42)

M enu Utama

1. M elihat Saldo

2. M ent ransfer Uang

3. M engambil Uang

4. Logout

Kotak Uang Kotak Kart u

(43)

M enu M elihat Saldo

1. Saldo anda adalah ….

Kotak Uang Kotak Kart u

(44)

M enu M ent ransfer Uang

1. No Account Penerima:

Kotak Uang Kotak Kart u

(45)

M enu M ent ransfer Uang

1. Jumlah uang yang dikirim:

Kotak Uang Kotak Kart u

(46)

M enu M ent ransfer Uang

1. Uang berhasil t erkirim

Kotak Uang Kotak Kart u

(47)

M enu M engambil Uang

1. Jumlah uang yang diambil:

Kotak Uang Kotak Kart u

(48)

M enu M engambil Uang

Uang berhasil diambil

Kotak Uang Kotak Kart u

(49)

Use Case Diagr am

Pengguna

Sistem AT M

Memasukkan Kartu Memasukkan PIN

Mengecek Saldo

Mentransfer Uang

Mengambil Uang Melakukan Logout

(50)

Act ivit y Diagr am: Memasukkan Kar t u

Mulai

Pengguna Sistem ATM

Menyiapkan Kartu

Memasukkan Kartu Memv alidasi Kartu

kartu valid?

Menampilkan MenuPIN

Mengeluarkan Kartu

Selesai tidak

(51)

Act ivit y Diagr am: Memasukkan PIN

Pengguna Sistem ATM

Mulai

Memasukkan PIN

Memv alidasi Account

pin valid?

Menampilkan MenuUtama

lebih dari 3x?

Memblokkir Kartu

Selesai

ya tidak

tidak

(52)

Act ivit y Diagr am: Mengecek Saldo

Pengguna Sistem ATM

Mulai

Memilih Mengecek Saldo di Menu Utama

Memproses Pengecekan Saldo

Menampilkan Saldo di Menu Saldo

(53)

Act ivit y Diagr am: Ment r ansfer Uang

Pengguna Sistem ATM

Mulai

Memilih Mentransfer Uang di Menu Utama

Memasukkan Account Tuj uan

Memasukkan Jumlah Uang yang dikirim

Menghitung Kecukupan Saldo Pengirim Memv alidasi Account

Tuj uan

Account T ujuan Valid?

Saldo Cukup?

Mentransfer Uang

Selesai tidak

ya tidak

(54)

Act ivit y Diagr am: Mengambil Uang

Pengguna Sistem ATM

Mul ai

Memilih M enu Mengambil Uang di Menu Utama

Memasukkan Jumlah Uang

Mengecek Ketercukupan Saldo

Saldo Cukup?

Memproses Pengambilan Uang

Mengeluarkan Uang di Kotak Uang Mengambil Uang di Kotak

Uang

tidak

(55)

Act ivit y Diagr am: Melakukan Logout

Sistem ATM Pengguna

M ulai

Memilih Keluar di Menu Utama

M emproses Logout

Mengeluarkan Kuitansi

M engeluarkan Kartu Mengambil Kuitansi

Mengambil Kartu

(56)

Sequence Diagr am: Memasukkan Kar t u

Pengguna

(from 1 Use Case Diagram)

KotakKartu ProsesValidasiKartu MenuPIN

alt kartu v alid?

[ya]

[tidak]

memasukanKartu()

validasiKartu()

tampilkan()

(57)

Type of Class

1. Boundary Class

 Class yang berhubungan dengan act or (user int erface)

2. Cont rol Class

 Class yang berhubungan dengan pemrosesan, komput asi, penghit ungan, dsb

3. Ent it y Class

(58)

Sequence Diagr am: Memasukkan PIN

Pengguna

(from 1 Use Case Diagram)

M enuPIN ProsesValidasiAccount Account Login MenuUtama

alt PIN v alid?

[ya] [tidak]

alt lebih dari 3x?

[tidak]

[ya]

m emasukkanPIN()

validasi(id, pin)

(59)

Sequence Diagr am: Mengecek Saldo

Pengguna

(from 1 Use Case Diagram)

MenuUtama ProsesMengecekSaldo Account Balance Transaksi MenuMengecekSaldo

memilihMengecekSaldo()

lihatSaldo(id)

getIDBalance()

getSaldo()

setTransaksi(tgl, jenis)

(60)

Sequence Diagr am: Ment r ansfer Uang

Pengguna MenuUtama MenuMentransferUang ProsesM entransferUang Account pengirim:Bal ance penerim a:Balance T ransaksi

alt saldo cukup?

[ya]

[ti dak] memi li hMentransferUang()

tampilkan()

memasukkanJumlahUang()

memasukkanAccountT uj uan()

transferUang(id, jumlah)

getIDBalance() getSaldo()

setSal do(sal do)

setSaldo(saldo)

setT ransaksi(tgl, jenis)

tam pi lkanUangBerhasi lDi ki ri m()

(61)

Sequence Diagr am: Mengambil Uang

Pengguna MenuUtama MenuMengambilUang ProsesMengambilUang Account Balance Transaksi KotakUang

alt saldo cukup?

[ya]

[tidak] memi lihMengambil Uang()

tampilkan()

memasukkanJuml ah()

ambi lUang(id, jumlah)

getIDBalance()

getSaldo()

setSaldo(saldo)

keluarkanUang(juml ah)

setTransaksi(tgl, jenis)

Tampi lkanUangBerhasil Diambil()

(62)

Sequence Diagr am: Melakukan Logout

Pengguna

(from 1 Use Case Diagram)

MenuUtama MenuLogout ProsesLogout KotakKuitansi KotakKartu

memilihKeluar()

tampilkan()

logout()

keluarkanKuitansi()

keluarkanKartu()

(63)

Referensi

Dokumen terkait

Sebagian besar informasi diperoleh dari laporan-laporan kasus terpisah, uji-uji klinik, dan/atau studi-studi farmakokinetik pada subyek sehat dan usia muda yang tidak sedang

This alternative can be even more promising considering that scaling up the process would not result in a yield loss (assays up to 5 g scale have been shown to be as successful as

Sherriff dkk (2014) mengetahui bahwa suami mempunyai pengaruh kuat pada keputusan isteri untuk menginisiasi menyusui dan meneruskannya. Akan tetapi perlu diteliti aspek perilaku

Pemindahan gugus fungsi hidrazid keposisi 3 (orto) atau komposisi 2 (meta) menghasilkan senyawa yang kurang aktif.. Mengubah gugus hidrazid dengan gugus karbonil

manusia masyarakat Sumedang terutama dalam mendesain motif batik sebaiknya. mendapat perhatian khusus dari berbagai pihak terutama Pemerintah

Front Office adalah cermin dari kualitas hotel yang akan pertama kali dinilai tamu saat memasuki suatu hotel untuk itu kesiapan, kesigapan, ketepatan serta kemampuan

Pola aktivitas &amp; latihan : kondisi klien yang lemah sehingga harus dipapah, dan dadanya terus berdebar-bedar mengakibatkan pasien tidak bisa malakukan aktivitas

Before you’re able to begin playing at most online bingo websites you’ll need to download the free software!. Some casinos offer you the opportunity to play bingo without having