• Tidak ada hasil yang ditemukan

Sequence Diagram, Class Diagram. Mata Kuliah Testing & Implementasi Sistem Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 07 --

N/A
N/A
Protected

Academic year: 2021

Membagikan "Sequence Diagram, Class Diagram. Mata Kuliah Testing & Implementasi Sistem Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 07 --"

Copied!
50
0
0

Teks penuh

(1)

Sequence Diagram,

Class Diagram

Mata Kuliah Testing & Implementasi Sistem

Program Studi Sistem Informasi 2013/2014

STMIK Dumai

Materi 07

(2)

Acknowledgement

Main Material:

• *Yud, 2012+ Yudhoatmojo, Satrio Baskoro. “Software & Software

Engineering” IKI30202 - Rekayasa Perangkat Lunak Term 1 - 2011/2012.

Faculty of Computer Science University of Indonesia. 2012. Print

Supplements:

• [BCSPW] Blog Catatan Sebuah Perjalanan Wordpress – Unified Modeling

Language (UML)

• *MHGB+ “Sequence Diagram” - mahergabayu.blogspot.com

• *DRCW+ “Tips Membuat Sequence Diagram” – derienct.wordpress.com

• *BKPPB+ “Sequence Diagram” – Bahan Kuliah PPT PDF

(3)

Sequence Diagram

• Mendefinisikan interaksi yang ada di dalam

sistem

– Mengilustrasikan objek yang berpartisipasi di

dalam use case

• Menggambarkan interaksi mana yang

dilakukan saat suatu use case dijalankan

(4)

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

• Masing-masing objek, termasuk aktor, memiliki lifeline

vertikal.

• Message digambarkan sebagai garis berpanah dari satu

objek ke objek lainnya.

• Activation bar menunjukkan lamanya eksekusi sebuah

proses, biasanya diawali dengan diterimanya sebuah

message.

(5)

Sequence Diagram

• Sequence diagram adalah visual coding ( perancangan

form/layar)

• Interaksi object yang tersusun dalam suatu urutan

waktu/kejadian

• Diagram ini secara khusus berasosiasi dengan use case

diagram

– Memperlihatkan tahap demi tahap apa yang seharusnya terjadi

untuk menghasilkan sesuatu didalam use case

• Sequence diagram memodelkan aliran logika dalam sebuah

system dalam cara yang visual

• Sequence diagram biasanya dipakai untuk mendeskripsikan

sebuah/beberapa use case pada use case diagram, yang

menggambarkan hubungan antara actor dan use case

(6)

Komponen Sequence Diagram

Partisipan

Lifeline Peristiwa eksekusi/

Execution occurrence

(7)

Partisipan

• Partisipan berinteraksi satu sama lain sepanjang alur

sequence diagram.

• Partisipan dapat berupa aktor, objek dari class,

tabel dari database, atau apapun yang menjadi

bagian dari jalannya sistem.

• Partisipan yang akan mengirim/menerima alur

pesan (message).

(8)

Lifeline

• Sebuah lifeline menunjukkan kapan aktifnya

suatu objek partisipan sepanjang sequence.

(9)

Peristiwa Eksekusi

• Peristiwa eksekusi berbentuk

persegi panjang yang diletakkan

di garis lifeline untuk

menandakan kapan suatu objek

mengirim atau menerima pesan.

Peristiwa eksekusi/

(10)

Pesan (message)

• Pesan menyampaikan informasi dari suatu objek ke

objek lainnya.

• Pesan yang dikirim (send) digambarkan dengan garis

panah yang solid

• Sedangkan pesan yang diterima

(receive/return)digambarkan dengan garis putus-putus.

(11)

Tipe Pesan (message)

Object Message

Menggambarkan pesan kirim antar objek.

Message to Self

(12)

Tipe Pesan (message) – lanj’

Return Message

(13)
(14)

Tips membuat

sequence diagram

 Buat Flow of event terlebih dahulu  ada di UC

spesifikasi

 Dari flow of event, cari kata benda yang nantinya

akan menjadi kandidat objek partisipan

 Aktor terletak di paling kiri sequence diagram

 Control object, biasanya diletakkan setelah aktor

 Satu use case satu sequence diagram

 Satu object bisa digunakan pada lebih dari satu

sequence diagram

(15)

Belajar membuat sequence

diagram

• Misalnya ada seorang pelanggan ingin makan nasi

goreng. Maka pelanggan akan menemui waiter.

• Waiter mencatat pesanan pelanggan. Karena waiter

tidak bisa memasak nasi goreng, maka dia meminta

bantuan pada TukangNasiGoreng.

• Jika bahan nasi goreng habis, maka TukangNasiGoreng

akan meminta TukangBahanBaku, untuk menyediakan

bahan baku.

• Jika bahan baku habis,maka TukangBahanBaku akan

meminta supplier mengirimkan bahan baku.

(16)

Belajar membuat sequence

diagram

• Terlihat bahwa suatu pernyataan yang membutuhkan

kelas sangat dipentingkan disini. Yang bisa membuat

nasi goreng adalah tukang nasi goreng, maka waiter

mengirimkan pesan buatNasiGoreng yang arahnya

menuju kelas TukangNasiGoreng.

• Begitu juga jika bahannya berasal dari kelas lain, maka

kelas TukangNasiGoreng mengirimkan pesan ke kelas

yang tepat, yaitu kelas TukangBahanBaku.

• Jika TukangBahanBaku perlu bahan baku, maka ia akan

meminta kelas yang punya metode kirimkan bahan

baku untuk bekerja.

(17)

Belajar membuat sequence

diagram

• Contoh diatas berasumsi bahwa

TukangNasiGoreng, TukangBahanBaku dan

Supplier adalah sesuatu yang akan dikoding.

Walaupun dalam kenyataanya mereka

sebenarnya tidak bisa dikoding, contoh ini

hanya untuk memudahkan pemahaman

konsep saja.

Jika dibuatkan Sequence Diagram-nya, maka akan jadi seperi ini .. 

(18)

Belajar membuat sequence

diagram

Source: [BKPPB] buatNasiGoreng() siapkanBahanNasiGoreng() kirimBahanBaku() TukangNasiGoreng TukangBahanBaku Supplier

(19)

Mulai membuat Sequence

Diagram

(20)

Kasus: Edit Profile

Aktor Sistem

1. Memilih menu edit

2. Menampilkan field untuk mengganti profile

3. Mengganti profile yang diinginkan

4. Mengganti profile dan

menyimpan ke dalam database

(21)
(22)

Cara lain menggambar

Partisipan

Boundary

Mengambarkan interaksi antara satu atau lebih actor dengan sistem, memodelkan bagian darisistem yang bergantung pada pihak lain disekitarnya dan merupakan pembatas sistem dengan dunia luar.

Control

Menggambarkan “perilaku mengatur”, mengkoordinasikan perilaku sistem dan dinamika dari suatu sistem, menangani tugas utama dan mengontrol alur kerja suatu sistem

Entity

Menggambarkan informasi yang harus disimpan oleh sistem (struktur data dari sebuah sistem)

(23)

Contoh

(24)
(25)

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 (metode/fungsi).

• Class memiliki tiga area pokok :

– 1. Nama (dan stereotype)

– 2. Atribut

(26)

Class Diagram

• Atribut dan metode 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

Nama Class Atribut

(27)

Class Diagram

• Berfungsi untuk menggambarkan Objek/Class

Pada Sistem

Contoh :

– Object Class Program

(28)

Objek - Class Diagram

Secara umum ada 4 objek Class Diagram:

• Atribut

• Operation/Function/Method

• Relationship

(29)

Objek - Class Diagram

MAHASISWA + NIM:String + NAMA:String + ALAMAT:String + TGLLAHIR:Date tambahMhs() updateMhs() hapusMhs() Nama Class Attribut Class Behaviour Class

NIM : 2 digit pertama adalah tahun, digit 3 dan 4 adalah angkatan, digit 5 adalah jenjang

Keterangan

(30)

Icon – Class Diagram

MAHASISWA

+ NIM:String

+ NAMA:String

+ ALAMAT:String

+ TGLLAHIR:Date

Nama Class

Attribut Class

(31)

Relasi – Class Diagram

MAHASISWA + NIM:String + NAMA:String + ALAMAT:String + TGLLAHIR:Date tambahMhs() updateMhs() hapusMhs() selectWLY(kdPos) WILAYAH +kdPos:String +nmWilayah:String tambahWLY() updateWLY() hapusWLY() 1..* 1 INDIKATOR

(32)

Indikator Relasi (

Multiplicity

)

Indikator/Gambar Arti Keterangan/Contoh

0..1 Nol atau satu 0..* Nol atau lebih

0..n Nol sampai n 0..3

1 Satu dan hanya satu 1..* Satu atau lebih

1..n Satu sampai n 1..5

* nol atau lebih

N Hanya n, dimana n lebih dari satu 9

n..* n atau lebih 7..*

(33)

Indikator Relasi

Agregasi (Aggregation)

Kunci Gabungan (Composite Key)

Turunan (Inheritance) Specialisasi/Generalisasi Ralasi (Relation)

Dependencies Realizations

(34)

Indikator Relasi

1. Asosiasi, menggambarkan class yang memiliki atribut

berupa class lain, atau class yang harus mengetahui

eksistensi class lain.

2. Agregasi, yaitu hubungan yang menyatakan bagian (“terdiri

atas..”).

3. Pewarisan, yaitu hubungan hirarkis antar class. Class dapat

diturunkan dari class lain dan mewarisi semua atribut dan

metode class asalnya dan menambahkan fungsionalitas

baru, sehingga ia disebut anak dari class yang diwarisinya.

Kebalikan dari pewarisan adalah generalisasi.

(35)

Indikator Variabel

+

Public

#

Protected

-

Private

$

Static

/

Drived

Atribut tidak standar

*

Abstrak

Fungsi tidak standar

(36)
(37)

Contoh – Class Diagram

“Setiap nomor rekening harus memiliki 1 dan hanya 1

kartu ATM”

REKENING NoRek Nama TglLahir Alamat kartuATM NoATM TglBuat TglAktif Password 1 1

(38)

Contoh – Class Diagram

“Setiap nomor rekening dapat memiliki 1 ATM”

REKENING NoRek Nama TglLahir Alamat kartuATM NoATM TglBuat TglAktif Password 1 0.. 1

(39)

Contoh – Class Diagram

“Satu dosen tinggal di satu wilayah,

namun satu wilayah bisa saja dihuni oleh banyak dosen”

DOSEN

NIM

NAMA

ALAMAT

TGLLAHIR

WILAYAH

KDPOS

NMWILAYAH

1..*

1

(40)

Contoh – Class Diagram

“Satu dosen tidak harus terdata di wilayah,

sedangkan wilayah tersebut bisa saja mempunyai banyak dosen”

DOSEN

NIM

NAMA

ALAMAT

TGLLAHIR

WILAYAH

KDPOS

NMWILAYAH

0..*

1

(41)

Contoh – Class Diagram

• Many To Many Association

1 (satu) dosen dapat mengajar banyak mata kuliah dan 1

(satu) mata kuliah dapat diajarkan oleh banyak dosen.

DOSEN KDDOSEN NAMA ALAMAT TGLLAHIR MATAKULIAH KDMATKUL NMMATKUL 1..* 1..* JADWAL JAMMULAI JAMAKHIR Class Asosiasi

(42)

Contoh – Class Diagram

DOSEN KDDOSEN NAMA ALAMAT TGLLAHIR MATAKULIAH KDMATKUL NMMATKUL JADWAL JAMMULAI JAMAKHIR 1..* 1..* 1 1

(43)

Generalisasi – Class Diagram

• Dua atau lebih class dapat melakukan berbagi atribut dan

method

• Dosen, karyawan harian, dan karyawan tetap merupakan

pegawai

PEGAWAI NIK NAMA ALAMAT TGLLAHIR DOSEN KDDOSEN MULAINGAJAR HONORPERJAM KARY_HARIAN UPAHHARIAN JMLHARIKERJA KARY_TETAP GAJIBULANAN

(44)

Agregasi dan Composite – Class Diagram

Contoh Agregasi

(45)

Agregasi dan Composite – Class Diagram

• Agregasi merupakan gabungan tetapi tidak mutlak

PELANGGAN NOPLG NAMA TGLDAFTAR PEL_PLN NOPLGPLN NAMAPLGPLN TGLDAFTARPLN PEL_TELKOM NOPLGTELKOM NAMAPLGTELKOM TGLDFTRTELKOM

(46)

TAGIHAN NOTAGIHAN TGLTAGIHAN PEMBAYARAN NOEMBAYARAN TGLTAGIHAN

Class Diagram Komposit

Agregasi dan Composite – Class Diagram

• Komposit merupakan hasil gabungan yang tak

terpisahkan dari class lainnya

(47)
(48)
(49)

Diagram UML

Nama Diagram Digunakan untuk Digunakan pada tahapan

Diagram Class Menggambarkan hubungan antara model class

dalam system. Analysis, Design

Diagram Object Menggambarkan hubungan antara model object

di dalam system. Analysis, Design

Diagram Aktivitas

Menggambarkan hubungan aliran kerja

business terlepas dari classes, aliran aktivitas dalam sebuah use case, atau detail design dari method.

Analysis, Design

Diagram Use Case

Mendapatkan persyaratan/kebutuhan system dan menggambarkan hubungan antara system dengan aktor.

Analysis

Diagram sequence

Memodelkan prilaku objek dalam sebuah use case. Focus pada urutan berdasarkan waktu dari sebuah aktivitas.

(50)

Referensi

Dokumen terkait

Sementara, pada pengujian efisiensi bahan bakar, penambahan minyak sereh wangi dengan perbandingan volume gasoline: minyak sereh wangi = 1000:2 dapat menin- gkatkan efisiensi

Dari hasil pemantauan harga-harga di daerah pedesaan, Nilai Tukar Petani di Provinsi Daerah Istimewa Yogyakarta pada bulan Maret 2007 mengalami kenaikan indeks NTP sebesar 0,87

Kebijakan pendidikan developmentalisme di Indonesia dilakukan dalam rangka mengembangkan kemampuan dan membentuk watak serta peradaban bangsa yang bermartabat dalam

Öğrencilerin istatistik konusu kapsamında yer alan aritmetik ortalama, mod, medyan ve açıklık kavramlarına ilişkin matematiksel okuduğunu anlama becerisinin, yazma

Pada bulan Februari 2014, NTP-Pt terjadi penurunan sebesar (-0,21) persen dibandingkan dengan bulan Januari , hal ini karena perubahan indeks yang diterima petani

Menggambarkan interaksi antara satu atau lebih actor dengan sistem, memodelkan bagian dari sistem yang bergantung pada pihak lain disekitarnya dan merupakan

Aktor pada Diagram Sequence, menyatakan orang, proses, atau sistem lain yang berinteraksi dengan sistem.. Ditempatkan di bagian

Diagram use case merupakan pemodelan untuk kelakuan (behaivor) sistem informasi yang akan dibuat. Mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan