05 pemodelan dan kakas pemodelan (2).pptx

28
PEMODELAN & KAKAS PEMODELAN (LANJ.) Rekayasa Perangkat Lunak Sem. Genap 2013/2014 [email protected]

Upload: syamsulizar

Post on 25-Dec-2015

376 views

Category:

Documents


13 download

TRANSCRIPT

Page 1: 05 Pemodelan dan Kakas Pemodelan (2).pptx

PEMODELAN & KAKAS

PEMODELAN (LANJ.)

Rekayasa Perangkat Lunak

Sem. Genap 2013/2014

[email protected]

Page 2: 05 Pemodelan dan Kakas Pemodelan (2).pptx

OVERVIEW Kelas Objek Communication diagram Sequence diagram

Page 3: 05 Pemodelan dan Kakas Pemodelan (2).pptx

KELAS Kelas digunakan untuk memodelkan

abstraksi yang berasal dari persoalan yang ingin kita selesaikan (terutama pada saat analisis).

Page 4: 05 Pemodelan dan Kakas Pemodelan (2).pptx

KELAS SEBAGAI STRUKTUR STATIS• Kelas merupakan pengkapsulan

(pembungkusan) nilai-nilai atribut dan layanan-layanan eksklusifnya.

• Objek adalah instan dari kelas. Sehingga kelas merupakan deskripsi satu objek atau lebih dengan sekumpulan atribut dan layanan yang seragam.

• Perbedaan kelas dan objek adalah objek merupakan entitas konkret yang ada secara ruang dan waktu, sedangkan kelas merupakan representasi abstraksi.

Page 5: 05 Pemodelan dan Kakas Pemodelan (2).pptx

PROPERTI – PROPERTI KELAS Kelas memiliki properti-properti berikut:

Nama untuk membedakan dengan kelas lain

AtributOperasi / method implementasi layananTanggung jawab (responsibilities) kontrak

atau kewajiban kelasMahasiswa

-nim-nama-alamat-tanggalLahir

+setNama()+getNama()+getUmur()

Page 6: 05 Pemodelan dan Kakas Pemodelan (2).pptx

KLASIFIKASI KELAS Ada beberapa macam kelas sesuai

perannya dalam sistem Dapat digambarkan dengan notasi

stereotype<<….>>

Beberapa jenis kelas yang membantu dalam pembuatan Communication diagram:<<entity>><<control>><<boundary>>

Page 7: 05 Pemodelan dan Kakas Pemodelan (2).pptx

<<ENTITY>> Merepresentasikan situasi yang spesifik

terhadap domain aplikasi, atau objek di dunia nyata, biasanya data dari sistem

Biasanya memiliki banyak sekali atribut Memiliki banyak operasi primitif

(getAttr(), setAttr(), dll) Tidak memiliki operasi kompleks Hanya memiliki sedikit state Contoh: Kontrak, Pelanggan, Mahasiswa

Page 8: 05 Pemodelan dan Kakas Pemodelan (2).pptx

<<CONTROL>> Merepresentasikan aliran kerja, kontrol, atau

proses perhitungan tertentu Biasanya tidak memiliki/memiliki sedikit atribut

miliknya sendiri Biasanya masa hidupnya singkat, yakni hanya

hidup pada waktu proses yang dikontrolnya dilakukan

Sering memiliki akses ke kelas-kelas entity, untuk meminta data, menulis kembali hasil perhitungan, dll.

Memiliki operasi kompleks Terkadang tidak punya state, Tapi terkadang memiliki state yang kompleks yang

menggambarkan proses yang komprehensif

Page 9: 05 Pemodelan dan Kakas Pemodelan (2).pptx

<<BOUNDARY>> Digunakan untuk memodelkan interaksi

antara sistem dengan lingkungan sekitarnya, misal: aktor, atau layanan eksternal

Tidak memiliki operasi sendiri, hanya meneruskan pemanggilan operasi

Page 10: 05 Pemodelan dan Kakas Pemodelan (2).pptx

OBJEK Objek adalah instan dari kelas Contoh: pada sistem penggajian, objek

Adi adalah instan dari kelas Karyawan.

Page 11: 05 Pemodelan dan Kakas Pemodelan (2).pptx

OBJECT

Karyawan

Pak Adi Bu Susi Mbak Dini Pak Roni

Objek dari kelas karyawan

Kelas karyawan

Page 12: 05 Pemodelan dan Kakas Pemodelan (2).pptx

OBJEK• Struktur dan perilaku objek yang serupa

didefinisikan dalam satu kelas• Ciri-ciri objek Mempunyai:

– Identitas: properti objek yang membedakannya dari semua objek yang lain

– State: semua properti objek (biasanya statis) ditambah nilai properti saat itu (biasanya dinamis)

– Perilaku (peran dan tanggung jawab): bagaimana objek-objek beraksi dan bereaksi dalam perubahan status dan pelewatan pesan.

Page 13: 05 Pemodelan dan Kakas Pemodelan (2).pptx

PENGGAMBARAN OBJEK DI UML

Page 14: 05 Pemodelan dan Kakas Pemodelan (2).pptx

COMMUNICATION DIAGRAM Pada UML 1.x disebut Collaboration

diagram Menunjukkan pertukaran pesan antar

instan (objek) dari kelas-kelas yang berbeda pada suatu waktu

Pesan-pesan dapat diberi nomor untuk menunjukkan urutan

Page 15: 05 Pemodelan dan Kakas Pemodelan (2).pptx

CONTOH:(DARI KEHIDUPAN SEHARI-HARI)

Zaki adalah mahasiswa Poltek. Ia ingin mengajukan

cuti akademik selama 2 semester. Ia menemui

dosen walinya mambahas hal tersebut. Setelah

disetujui secara lisan oleh dosen wali, Zaki pergi ke

bagian Akademik untuk mengajukan permohonan

cuti secara resmi. Bagian Akademik kemudian

meminta tanda tangan persetujuan kepada Dosen

Wali. Setelah itu, surat permohonan dimintakan

persetujuan KPS dan Kajur sebelum dilakukan

update pada datanya sebagai mahasiswa Poltek.

Page 16: 05 Pemodelan dan Kakas Pemodelan (2).pptx

SIAPA SAJA YANG TERLIBAT?

Zaki : Mahasiswa : DosenWali

: Akademik

kpsIF : KPS

KajurIF : Kajur

Page 17: 05 Pemodelan dan Kakas Pemodelan (2).pptx

PESAN APA SAJA YANG DISAMPAIKAN?

Page 18: 05 Pemodelan dan Kakas Pemodelan (2).pptx

Pengajuan Cutisd

Zaki : Mahasiswa : DosenWali

: Akademik

kpsIF : KPS

KajurIF : Kajur

1 : meminta saran()

2 : saran cuti()

3 : memohon status cuti()

4 : minta persetujuan()

5 : persetujuan dosen wali()

6 : minta persetujuan()

7 : persetujuan kps()

9 : persetujuan kajur()

8 : minta persetujuan()

10 : update status mahasiswa()

framelifeline

pesan (message)

Page 19: 05 Pemodelan dan Kakas Pemodelan (2).pptx

BEGITU PULA DALAM PERANGKAT LUNAK

Operator

Login

Kelas apa saja yang terlibat dalam use case Login?

<<boundary>> ?

<<control>> ?

<<entity>>?

Page 20: 05 Pemodelan dan Kakas Pemodelan (2).pptx

COMMUNICATION: LOGIN

: User<<entity>>

: GUILogin<<boundary>>

: ProsesLogin<<control>>

: Operator

Bagaimana komunikasi yang terjadi?

Page 21: 05 Pemodelan dan Kakas Pemodelan (2).pptx

Loginsd

SEQUENCE DIAGRAM

: Operator

: GUILogin : ProsesLogin : User

Login(username,password) Login(username,password) Verifikasi user

(username,password)

BooleanstatusLogin

statusLogin

message

return message

lifeline

execution

Page 22: 05 Pemodelan dan Kakas Pemodelan (2).pptx

MACAM-MACAM MESSAGEBerdasarkan tipe aksinya: Synchronous call: mengirim pesan

dan menunggu respons sebelum melakukan eksekusi lainnya

Reply message: respons

Page 23: 05 Pemodelan dan Kakas Pemodelan (2).pptx

MACAM-MACAM MESSAGE Asynchronous call: mengirim pesan

tanpa menunggu respons

Create: digunakan untuk menciptakan lifeline lain

Page 24: 05 Pemodelan dan Kakas Pemodelan (2).pptx

MACAM-MACAM MESSAGE Delete: untuk mengakhiri lifeline lain

Page 25: 05 Pemodelan dan Kakas Pemodelan (2).pptx

COMMUNICATION VS SEQUENCE Keduanya menggambarkan urutan

pertukaran pesan antar objek saat run-time

Sequence diagram:Urutan waktu dari pertukaran pesan lebih

mudah diikutiHubungan antar elemen lebih sulit dilihatMemungkinkan penggambaran iterasiSulit menggambarkan, jika banyak objek

yang terlibat

Page 26: 05 Pemodelan dan Kakas Pemodelan (2).pptx

COMMUNICATION VS SEQUENCE Communication diagram:

Menggambarkan lebih jelas interaksi antar objek

Urutan pesan lebih sulit dilihat, apalagi jika ada banyak objek dan banyak interaksi. Pesan harus dinomori dengan seksama

Iterasi hanya dapat ditambahkan dengan pesan tambahan dan notasi tertentu

Dapat diintegrasikan dengan mudah untuk menggambarkan arsitektur global

Page 27: 05 Pemodelan dan Kakas Pemodelan (2).pptx

COMMUNICATION VS SEQUENCEGunakan sequence diagram: Jika kita memiliki sedikit objek, dan

interaksi yang kompleks dan panjang Jika ada iterasi

Gunakan communication diagram: Jika ada banyak objek dan interaksi

(kolaborasi) antar objek dianggap penting Jika kita bermaksud mengintegrasikan

semua diagram menjadi representasi arsitektur global yang dinamis

Page 28: 05 Pemodelan dan Kakas Pemodelan (2).pptx

TUGAS Buatlah communication diagram dan

sequence diagram dari topik aplikasi PA1 masing-masing.

Manakah yang lebih cocok digunakan pada rancangan perangkat lunak Anda?