Kết tập (gộp) là một loại của quan hệ kết hợp, tập trung thể hiện quan hệ giữa
tổng thể và bộ phận(Whole / part).Kếttậpthườngbiểudiễnchoquanhệ“có”(has-a),
“là bộ phận của”(is-a-part-of),hoặc “bao gồm”(contains), v.v.thểhiệnmối quanhệ
mộtlớp tổngthểcó, gồm,chứahayliênkếtvớimộthoặcnhiềulớpthànhphần.Người tachiaquanhệkếttậpthànhbaloại:
Kếttậpthôngthường
Kếttậpchiasẻvà
Kếttậphợpthànhhayquanhệhợpthành.
Quanhệ kết tập thông thường,gọitắtlàkếttậpthểhiệnmốiliên kếtgiữahailớp,
trong đó đối tượng của lớp này bao gồm một số đối tượng của lớp kia, song không tồn
tại trong nội tại của lớp đó.Lớp phíabộphậncũng chỉ làmộtbộphận logiccủaphía
tổng thể và chúng không được chia sẻvới các lớp khác.Ví dụ: một hạm đội của lớp
HamDoi gồm một số (3..10) tàu chiến của lớp TauChien, nhưng tàu chiến không chứa trong lớp HamDoi. Vậy, lớp HamDoi có quan hệ kếttập với TauChien.UML sửdụngkýhiệu:
đểbiểu diễnquan hệ kết tập vàluôn đượcgắn vớiphía tổng thể. Hình 2-12thểhiệnquanhệgiữalớpHamDoivàlớpTauChien.
HamDoi 3..10 TauChien
Hình2-12Quanhệkếttập thôngthường
Trongquanhệnày,việcquảnlýcácđốitượngcủacáclớpliênquanlàkhácnhau. Ta có thể loại bỏ một số tàu chiến của một hạm đội sao cho số còn lại ít nhất là 3, tươngtựcóthểbổsungvàomộtsố tàu chiếnsaochokhôngquá10.Nhưngkhiđãloại bỏ một hạm đội thì phải loạibỏ tất cảcác tàu chiến của hạm đội đó vìmỗi tàu chiến
chỉ thuộcmột hạm đội. Nói một cách khác, một đối tượng của lớp phía bộ phận sẽ khôngthểtồntạiđộclậpnếunókhôngphảilàmộtphầncủapháitổngthể.
Kếttập chiasẻ
Quanhệ kết tập chia sẻlàloạikết tập,trongđóphíabộphận cóthểthamgiavào nhiều phía tổng thể. Ví dụ: một dự án của lớp DuAn có nhiều nhân viên của lớp
NhanVientham giavàmộtnhân viêncó thểthamgiavào nhiều(hai)dựán.UMLsử dụngkýhiệu:
-30 -
đểbiểudiễnquanhệkếttậpchiasẻvàluônđượcgắnvớiphíatổng thể.Hình2-13thểhiệnquanhệgiữalớpDuAnvàlớpNhanVien.
DuAn 0..2 * NhanVien
Hình2-13Quanhệkếttậpthôngthường
Mỗidựán cóthểcónhiềungườithamgiavàmỗingườilạicóthể thamgianhiều nhấtlàhaidự án. Trongquan hệnày, tacó thểloại bỏ,hay thànhlậpmộtdự án (phía tổngthể)nhưng khôngnhấtthiết phảiloạibỏ,hayphải tuyểnthêmnhữngngườitham gia(phíabộphận)vàodựánnhưkiểukếttậpởtrên.Tuynhiên khixửlýcácmốiquan hệđó thìphảicập nhậtlạicácmối liênkết củacácnhân viên tham giavào cácdựán tươngứng.
Kếttậphợpthành
Quan hệ chỉ ra một vật có chứa một số bộ phận và các bộ phận đó tồn tại vật lý
bên trong vật tổng thể.Dovậykhi thựchiệnhuỷbỏ,haythiếtlậpmớibêntổngthểthì
WindowchứacáclớpText,MenuvàDialogBox. TrongUML cóhaicách biểudiễn quanhệhợpthànhnhưsau:
* Text Window Text * Menu * DialogBox * Window chứa * * Menu DialogBox Hình2-14 Quanhệkếttậphợpthành