OPERASI DAN ATTRIBUT
Bahagian Attribut (Attribute Compartment)
-
Class mempunyai attribut yang menerangkan ciri-ciri yang dipunyai oleh
objek-objek di dalamnya.
-
Attribut boleh didapati dengan menganalisa definisi bagi kelas, keperluan
masalah dan dari domain pengetahuan.
-
Nama bagi attribut perlu ringkas dan unik bagi sesuatu kelas
-
Attribut yang baik untuk kelas pelajar:
nama , major
-
Attribut yang tidak sesuai pilihKursus
-
Attribute di dalam class diagram boleh dinyatakan beserta dengan jenisnya
cth integer, Boolean dan sebagainya.
-
attribut perlu relevan dengan domain masalah.
-
Contoh bagi class Person:
-
Dari Perspektif doktor: nama, alamat, tarikhLahir, tinggi, berat
-
Dari perspektif pegawai bank: nama, alamat, noAkaun
-
Contoh attribut bagi kelas kereta

Bahagian Operasi (Operation Compartment)
-
Kelakuan bagi sesuatu kelas diwakili oleh operasi.
-
Operasi digunakan untuk memanipulasi attribut atau boleh digunakan untuk
melakukan sesuatu tindakan.
-
Implementasi bagi operasi dinamakan method.
-
Cth:

Konvensyen penamaan bagi class, attribut dan operasi
-
Dengan adanya gaya konvensyen penamaan akan memberikan konsistensi sepanjang
pembangunan projek
-
Class : bermula dengan huruf besar dan jika terdapat perkataan yang kedua
juga dimulakan huruf besar contoh:
-
Attribut dan operasi: bermula dengan huruf kecil dan perkataan kedua dimulakan
huruf besar contoh:
-
Attribut: name, location, timeOfDay, creditHours
-
Operasi: getPrerequisite()
-
bagi nama class, atribut dan operasi, underscore tidak digunakan perkataan-perkataan
yang berlainan digabungkan bersama dan dibezakan oleh huruf besar
HUBUNGAN
-
Hubungan memberikan laluan bagi komunikasi antara objek dilakukan.
-
Terdapat tiga jenis hubungan iaitu
-
association
-
Aggregation
-
Generalization
ASSOCIATION
-
hubungan semantik 2 arah yang menghubungkan antara kelas.
-
Ini bermakna terdapat pautan (link) antara objek-objek di dalam kelas yang
berkenaan.

-
Data boleh bergerak dalam mana-mana arah atau kedua-dua arah sepanjang
pautan tersebut.
-
Untuk menjelaskan maksud bagi hubungan tersebut nama diberikan kepada association
-
Contoh bagi hubungan searah:
-
contoh bagi hubungan 2 arah:
-
suatu association boleh ditunjukkan arahnya dengan menggunakan anak
panah dan ianya dinamakan Navigable Association

Multiplicity
-
menentukan berapa bilangan instance di dalam suatu class yang boleh dikaitkan
dengan setiap instance dalam kelas yang lain.
-
setiap hujung association mempunyai penunjuk multiplicity (multiplicity
indicator ).
-
Julat bagi multiplicity atau penunjuk multiplicity boleh terdiri daripada:
-
zero to one (0..1)
-
zero to many (0..* atau *)
-
2 (2) , 5 hingga 11 (5..11) dan sebagainya
-
jika penunjuk multiplicity tidak dinyatakan ia dianggap 1 secara default.
-
Contoh:
-
Tiada atau ramai individu mempunyai kereta. 1 atau lebih kereta boleh
dipunyai oleh individu
-
tiada atau ramai pengarang menggunakan 1 atau lebih komputer

Peranan / Role
-
Peranan menunjukkan peranan bagi satu kelas dikaitkan dengan satu kelas
yang lain
-
Nama bagi role adalah dalam bentuk noun

Qualified Association
-
digunakan bagi association yang mempunyai multiplicity one-to-many atau
many-to-many.
-
Contoh
-
Satu Directory mempunyai banyak fail. Dalam konteks directory, nama fail
adalah untuk fail yang tertentu. Qualifier digunakan supaya setiap 1 file
name dari Directory boleh di”associate” kepada satu fail.
-
Oleh itu satu hubungan one-to-many boleh dijadikan kepada hubungan
one-to-one dengan menggunakan qualifier
AGGREGATION
-
Aggregation adalah hubungan part-whole atau part-of
-
Suatu objek yang mewakili komponen bagi sesuatu dihubungkan (associate)
dengan objek yang mewakili keseluruhan
-
Keyword untuk mengenalpasti aggregation adalah seperti “consist of”, “contains”,
“is part of”
-
Contoh:
-
Navy contains many warships

Composition Aggregation
-
composition aggregation adalah hubungan dimana “parts live inside a whole”
(sebahagian daripada)
-
Kereta mengandungi (consist of) 4 roda, enjin, gear box, chasis
-
Contoh:
-
Window mengandungi banyak menu, buttons, listboxes dan texts.

GENERALIZATION
-
Definisi di dalam UML “ A taxonomic (taxonomy is the science of classification)
relationship between a more general element and a more specific element”
-
Mempunyai hubungan “is-a” Juga dikenali sebagai inheritance
-
car “is a” vehicle, sales manager “is an” employee
-
Contoh:
-
Kenderaan adalah general class (superclass) derived kepada class yang khusus
(subclass) melalui generalization (inheritance)

-
class yang berada di atas adalah abstract class dimana tiada objek yang
boleh dikaitkan dengannya.
-
Class yang berada di bawah adalah concrete class dimana objek boleh dicipta
dari class tersebut