Anda di halaman 1dari 52

CLASS PERTEMUAN

DIAGRAM 06

REKAYASA PERANGKAT LUNAK


PENYUSUN
• Aprilia Sulistyohati, S.Kom,M.Eng
• Bahtera Alam Wijaksono, M.Kom
• Fauzan Natsir, M.Kom
• Dewi Anjani, M.Kom
• Millati Izzatillah, S.Kom., MMSI
• 0pitasari, M.Kom
• Redo Abeputra Sihombing M.Kom
• Yuli Haryanto, M.Kom
Meet us
PENGERTIAN CLASS DIAGRAM
diagram kelas adalah salah satu jenis diagram struktur pada UML
yang menggambarkan dengan jelas struktur serta deskripsi class,
atribut, metode, dan hubungan dari setiap objek.

Apa yang ada pada class diagram?


• Class dan interface beserta atribut dan operasinya
• Relasi yang terjadi antar objek
• Constraint terhadap objek-objek yang saling berhubungan
• Inheritance untuk organisasi class yang lebih baik

Static view dari elemen pembangun sistem


PENGENALAN CLASS DIAGRAM
Mampu membantu proses pembuatan sistem dengan
memanfaatkan konsep forward / reserve enginerring

Class Diagram memiliki 2 komponen pentiing

Structural Behavioral
Ciri pembeda antar Tingkah laku atau kegiatan yang
object mampu dilakukan object
Contoh

Class : Pintu Struktural Behavioral

• Lebar
• Tinggi • Buka
• Warna • Tutup
Gambar Class Diagram
Product

serialNumber
name Class Name
price

buy()
display() Attributes

Operations
Gambar Class Diagram
• Membantu dalam visualisasi struktur kelas-kelas dari
Mahasiswa suatu system dan hubungan antar kelas (inheritance,
Class Name aggregation, and association) dan penjelasan detail
NIM
tiap kelas (methode/function/behavior dan
NAMA Atribut/
atribut/property/data)
ALAMAT Property/ • Diagram ini merupakan fondasi untuk component
Data diagram dan deployment diagram
Kuliah() Methode/
• Diagram paling penting pada object oriented analysis
Cuti() Function/ and design
KKP()
Behavior • Class digambarkan dengan sebuah kotak dengan 3
section
• Sebuah class atau atribut/methode bisa
mempunyai dokumentasi Gunakan dengan
lambang dibawah ini dan ditarik dengan garis
putus tanpa panah
CLASS DIAGRAM
 Disarankan untuk tidak menggambar tanpa 3 section ini
 Kadang-kadang boleh ada section tambahan untuk
menggambarkan keterangan class
 Setiap atribut/methode/association diperbolehkan ada
sebuah keterangan atribut/methode yang diletakkan
diantara tanda { }
 Sebuah class atau atribut/methode bisa mempunyai
dokumentasi dengan lambang dibawah ini dan ditarik
dengan garis putus tanpa panah
ASSOCIATION ANTARA AKTOR DAN
USECASE
 Merepresentasikan blueprint dari object
 Properti: ciri khas dan pembeda antar objek
 Metode: aksi yang dapat dilakukan oleh objek tersebut
 Contoh class Manusia
 Attribut: nama, usia, tanggal lahir
 Method: berjalan, makan, minum
 Notasi kotak dengan 3 bagian: Nama kelas, Atribut, Metode/operation
VISIBILITY
 Menyatakan level akses sebuah object
 Visibility dapat diterapkan pada atribut atau
method
 Tampilkan visibility secara urut berkelompok mulai dari
urutan tertinggi
 Type data (int,float,char) dari sebuah atribut dapat
disertakan
MULTIPLICITY
 Indikasi berapa banyak objek yang bisa mengisi
properti
 1 (pasti 1)
 0..1 (0 atau 1)
 * (Tidak ada batasan, bisa 0, 1, ..., n)
 Biasanya didefinisikan batas bawah dan atas, kecuali untuk yang pasti
bernilai 1
 Mirip dengan konsep one-to-one dan one-to many pada relational
database
HUBUNGAN ANTAR CLASS
 Asosiasi, yaitu hubungan statis antar class. Umumnya
menggambarkan class yang memiliki atribut berupa class
lain, atau class yang harus mengetahui eksistensi class
lain. Panah navigability menunjukkan arah query antar
class
 Agregasi, yaitu hubungan yang menyatakan bagian (“terdiri
atas..”)
 Pewarisan, yaitu hubungan hirarkis antar class. Class dapat
diturunkan dari class lain dan mewarisi semua atribut dan
metoda class asalnya dan menambahkan fungsionalitas
baru, sehingga ia disebut anak dari class yang diwarisinya.
Kebalikan dari pewarisan adalah generalisasi.
 Hubungan dinamis, yaitu rangkaian pesan (message) yang
di-passing dari satu class kepada class lain. Hubungan
dinamis dapat digambarkan dengan menggunakan sequence
diagram yang akan dijelaskan kemudian
GENERALIZATI
ON
 Inheritance pada UML
 Sub class mewarisi feature dari super classnya
 Sub class mampu overriding metode super classnya
 Dinotasikan dengan anak panah mengacu ke super
class
ASSOCIATION
 Menggambarkan hubungan antar class
 Ditandai dengan garis lurus
 Seringkali ditambahkan label dan multiplicity
untuk memperjelas hubungan
 Multiplicity adalah jumlah kejadian minimum dan
maksimum dari suatu objek/kelas untuk satu kejadian
tunggal dari objek.kelas yang terkait
 Asosiasi
objek/kelas
dan notasi
multiplicity
AGGREGATION
 Sebuah hubungan di mana satu kelas “whole” yang lebih
besar berisi satu atau lebih kelas “part” yang lebih kecil.
atau kelas “part” yang lebih kecil adalah bagian dari
kelas “whole” yang lebih besar.
 'has a' relationship
 Klub memiliki banyak anggota
 Orang bisa memiliki makna tersendiri tanpa kehadiran
sebuah klub 1.. 0..
 Dinotasikan dengan diamond “kosong” * 1 Kerja

Mahasiswa 1 0..1 Wali

1.. 1
 Jika dipisah, tidak merubah makna * ORTU
AGGREGATION
 Sebuah ruangan memiliki meja dan kursi
 Tanpa kehadiran ruang, meja dan kursi bisa tetap ada
COMPOSITION
 'has a' or 'contains a' relationship (whole-part)
 Kampus memiliki fakultas CS atau kampus terdiri dari fakultas CS (salah satunya)
 Tanpa ada kampus, maka tidak ada fakultas CS
 Composition menggunakan lambang diamond tertutup
CLASS DIAGRAM
MAHASISWA Nama Class

+ NIM:String
+ NAMA:String
Attribut Class
+ ALAMAT:String
+ TGLLAHIR:Date

tambahMhs()
updateMhs() Behaviour Class
hapusMhs()

NIM : 2 digit pertama adalah tahun,


digit 3 dan 4 adalah angkatan, digit 5 Keterangan
adalah jenjang (tambahan / option)
CLASS ICON – CLASS DIAGRAM

MAHASISWA Nama Class

+ NIM:String
+ NAMA:String
+ ALAMAT:String Attribut Class
+ TGLLAHIR:Date
RELATION – CLASS DIAGRAM
MAHASISWA WILAYAH

+ NIM:String 1..* 1 +kdPos:String


+ NAMA:String +nmWilayah:String
+ ALAMAT:String
+ TGLLAHIR:Date
tambahWLY()
updateWLY()
hapusWLY()
tambahMhs()
updateMhs()
hapusMhs()
selectWLY(kdPos)

INDIKATOR
INDIKATOR RELATION – CLASS DIAGRAM
Indikator/ Arti Keterangan/
Gambar Contoh
0..1 Kosong atau satu
0..* Lebih dari sama dengan kosong

0..n Lebih dari sama dengan n, dimana n lebih dari 1 0..3

1 Hanya satu
1..* Lebih dari sama dengan satu
1..n Lebih dari sama dengan satu dimana n lebih dari satu 1..5

* Banyak atau Many


N Hanya N, dimana N lebih dari satu 9

n..* Lebih dari sama dengan N dimana N lebih dari satu 7..*

n..m Lebih dari sama dengan N dan kurang dari sama dengan M. 3..10
Dimana M dan N lebih dari satu.
INDIKATOR RELATION – CLASS DIAGRAM

Agregasi (Aggregation)

Kunci Gabungan
(Composite Key)

Turunan (Inheritance) Specialisasi/Generalisasi

Ralasi (Relation)

Dependencies
Realizations
INDIKATOR VARIABLE – CLASS DIAGRAM

+ Public

# Protected

- Private

$ Static

/ Drived Atribut tidak standar

* Abstrak Fungsi tidak standar


CONTOH – CLASS DIAGRAM
Setiap Nomor Rekening Harus Memiliki ATM
ATM
REKENING

NoRek NoATM
Nama TglBuat
1 1 TglAktif
TglLahir
Alamat Password
CONTOH CLASS DIAGRAM
CONTOH – CLASS DIAGRAM
Setiap Nomor Rekening Dapat Memiliki ATM
ATM
REKENING

NoRek NoATM
Nama TglBuat
0..1 1 TglAktif
TglLahir
Alamat Password
CONTOH – CLASS DIAGRAM
satu dosen memiliki (kediaman) atau tinggal di satu wilayah,
sedangkan wilayah tersebut bisa saja mempunyai banyak dosen

DOSEN WILAYAH

NIM 1..* 1 KDPOS


NAMA NMWILAYAH
ALAMAT
TGLLAHIR
CONTOH – CLASS DIAGRAM
satu dosen tidak harus terdata wilayah,
sedangkan wilayah tersebut bisa saja mempunyai banyak dosen

DOSEN WILAYAH

NIM 0..* 1 KDPOS


NAMA NMWILAYAH
ALAMAT
TGLLAHIR
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 MATAKULIAH

KDDOSEN 1..* 1..* KDMATKUL


NAMA NMMATKUL
ALAMAT
TGLLAHIR

JADWAL

JAMMULAI
JAMAKHIR
CONTOH – CLASS DIAGRAM
● Hindari Penggunaan Association (Garis Terputus), karena memerlukan
analisa ulang

DOSEN MATAKULIAH

KDDOSEN KDMATKUL
NAMA NMMATKUL
ALAMAT
TGLLAHIR
1

1
JADWAL
1.. 1..
* JAMMULAI *
JAMAKHIR
CONTOH – CLASS DIAGRAM
Terdapat table pegawai, dimana diantara pegawai tersebut terdapat
pimpinan dari pegawai pegawai lainnya.
Tetapi pimpinan tertinggi tidak dipimpin oleh pegawai lainnya
dengan kata lain pimpinan tertinggi adalah top Level

PEGAWAI

NIK 1
NAMA
ALAMAT
TGLLAHIR

0..*
GENERALISASI – CLASS DIAGRAM

● Dua Atau Lebih Class Dapat Melakukan Berbagi Attribut dan Method

PEGAWAI

NIK
NAMA
ALAMAT
TGLLAHIR

DOSEN KARY_HARIAN KARY_TETAP


KDDOSEN UPAHHARIAN GAJIBULANAN
MULAINGAJAR JMLHARIKERJ
HONORPERJAM A
AGREGASI DAN COMPOSITE – CLASS DIAGRAM

● komposit merupakan hasil gabungan yang tak terpisahkan


dari class lainnya, sedangkan agregasi merupakan gabungan
tetapi tidak mutlak
PELANGGAN

NOPLG
NAMA
TGLDAFTAR

PEL_PLN PEL_TELKOM

NOPLGPLN NOPLGTELKOM
NAMAPLGPLN NAMAPLGTELKOM
TGLDAFTARPLN TGLDFTRTELKOM

Class Diagram Agregasi


AGREGASI DAN COMPOSITE – CLASS DIAGRAM

TAGIHAN PEMBAYARAN

NOTAGIHAN NOEMBAYARAN
TGLTAGIHAN TGLTAGIHAN

Class Diagram Komposit


STUDI KASUS

Class diagram
SOAL
PT. SUKA MAKMUR PT. SUKA MAKMUR Asumsi :
• Setiap Unit dapat
FORM PERMINTAAN ATK BUKTI SERAH ATK membuat Lebih
dari satu Form
No. Fpb : F001 NO. BSB : B001
Tgl. Fpb : 4 Mei 2023 • Permintaan
Satu Barang.
Form Permintaan
TGL. BSB : 7 Mei
Nama Unit : Accounting 2023
Nama Unit : Accounting Barang dapat membuat
Keperluan : Pembuatan Laporan Keuangan
Tgl. Pakai : 7 Mei 2004 Berdasarkan Permintaan Bagian Saudara No. F001
Lebih dari satu Bukti
tertanggal 4 Mei 2023, berikut ini kami kirimkan barang – Penyerahan Barang,
Tolong disiapkan barang-barag sebagai berikut : barang sebagai berikut : karena dapat
NO NAMA BARANG SATUAN JUMLA JUML
dimungkinkan Jumlah yang
NO NAMA BARANG SATUAN
H AH diminta bisa tidak sama
MINT SER dengan jumlah yang
A AH diserahkan.
1. Disket Box 10 1. Disket Box 8
2. Kertas HVS 70 gr Rim 5 2. Kertas HVS 70 gr Rim 4
3. Tinta Printer Canon Unit 2 3. Tinta Printer Canon Unit 2

BAGIAN ACCOUNTING BAGIAN GUDANG

Susilo Ageng Dewi Handayani


Prayoga
Langkah Membuat Class Diagram (1)
 Mengeluarkan atribut pada dokumen dengan
mengelompokannya
Kelompok 1 Kelompok 2 Kelompok 3 Kelompok 4 Kelompok 5
NoFPB NamaUnit NamaBarang NoBSB NamaStaff
TglFPB Satuan TglBSB
Keperluan JmlSerah
TglPakai
JmlMinta
Langkah Membuat Class Diagram (2)
 Menentukan Atribut yang dapat menjadi Primary Key jika
TIDAK ADA boleh DIBUAT BARU lalu tentukan
ketergantungan atribut terhadap primary key nya

Kelompok 1 Kelompok 2 Kelompok 3 Kelompok 4 Kelompok 5


NoFPB* KodeUnit* KodeBarang* NoBSB* KodeStaff*
TglFPB NamaUnit NamaBarang TglBSB NamaStaff
Keperluan Satuan
TglPakai JmlMinta
JmlSerah
Langkah Membuat Class Diagram (3)
 Menentukan nama entitas dari kelompok atribut yang
telah bergantung terhadap primary keynya.

FPB Unit Barang BSB Staff


NoFPB* KodeUnit* KodeBarang* NoBSB* KodeStaff*
TglFPB NamaUnit NamaBarang TglBSB NamaStaff
Keperluan Satuan
TglPakai JmlMinta
JmlSerah
Langkah Membuat Class Diagram(4)
 Gambarkan hubungan masing-masing entitas
beserta atribut – atributnya.
 Dapat dilihat dari dokumen ataupun asumsi
 Setiap Unit dapat membuat Lebih dari satu Form Permintaan
Barang
Langkah Membuat Class Diagram
 Satu Form Permintaan Barang dapat membuat Lebih dari satu Bukti
Penyerahan Barang
Langkah Membuat Class Diagram
 karena dapat dimungkinkan Jumlah Barang yang diminta bisa tidak sama
dengan jumlah Barang yang diserahkan
Langkah Membuat Class Diagram
 Dari dokumen dapat dilihat bahwa seorang staff menempati satu unit
Langkah Membuat Class Diagram
 Dari dokumen dapat dilihat bahwa dokumen FPB dan BSB dibuat oleh
masing-masing bagian, yaitu staff unit accounting dan staff unit
gudang.
Langkah Membuat Class Diagram (5)
 Menentukan multiplicity hubungan dari masing-
masing class yang telah terhubung
 Dapat dilihat dari dokumen ataupun asumsi
 Setiap Unit dapat membuat satu sampai banyak Form Permintaan
Barang
 Setiap satu form permintaan barang dibuat oleh satu unit
Langkah Membuat Class Diagram
 Satu Form Permintaan Barang dapat membuat satu atau banyak Bukti
Penyerahan Barang
 Satu Bukti penyerahan barang dibuat berdasarkan satu form permintaan
barang
Langkah Membuat Class Diagram

 Berdasarkan dokumen pada form


permintaan barang berisi satu
sampai banyak barang, dan setiap
barang bisa berada pada satu atau
banyak form permintaan barang
 Berdasarkan dokumen pada bukti
serah barang berisi satu sampai
banyak barang, dan setiap barang
bisa berada pada satu atau banyak
bukti serah barang
 dapat dimungkinkan Jumlah Barang
yang diminta bisa tidak sama
dengan jumlah Barang yang
diserahkan
 Berdasarkan dokumen satu staff
Langkah Membuat menempati satu unit. Dimana satu
Class Diagram unit bisa terdiri dari beberapa staff
Langkah Membuat Class Diagram

 Dari dokumen dapat dilihat


bahwa dokumen FPB dibuat oleh
satu staff unit accounting. Satu
staff accounting dapat membuat
satu atau banyak FPB.
 Dokumen BSB dibuat oleh satu
staff unit gudang. Stau staff unit
gudang dapat membuat satu
sampai banyak BSB.
Buatlah class diagram berdasarkan judul yang anda ajukan (sesuai
dengan kasus big project)

TUGAS 6
Thanks!
CREDITS: This presentation template was created by Slidesgo, including icons by
Flaticon, and infographics & images by Freepik

Anda mungkin juga menyukai