aggregation: agregacja
Rodzaj związku między obiektami wyrażającego zależność polegającą na zawieraniu jednego obiektu przez inny obiekt. W programowaniu obiektowym oznacza to proces tworzenia nowej klasy przy użyciu już istniejących klas — nowo tworzona klasa może zawierać dowolną liczbę obiektów innych klas. Najczęściej przytaczanym przykładem obrazującym ten rodzaj związku jest analogia do samochodu i silnika — samochód „zawiera” silnik. A więc klasa o nazwie Samochód może zawierać obiekt klasy Silnik. Agregacja jest niesymetryczna, co oznacza, że samochód zawiera silnik, ale silnik nie zawiera samochodu. Jest też przechodnia, co oznacza, że jeśli świeca zapłonowa jest częścią silnika, to jest ona także częścią samochodu. Należy zaznaczyć, że z pojęciem agregacji wiąże się wiele wątpliwości i nie ma jednej powszechnie akceptowanej jej definicji. W języku UML ten rodzaj związku jest nazywany kompozycją. Symbolem agregacji na diagramach UML jest pusty romb.