Рассмотрим простую агрегацию с моим любимым примером (шахматы): я бы создал шахматную доску как двумерный массив шахматных фигур (по крайней мере, мне кажется, что это хорошее решение), например:
chessman [,] board=new chessman[8,8];
Это означает, что на каждой позиции может стоять шахматная фигура. Но на самом деле фигурок будет максимум 32. И в этом проблема - что должна отображать диаграмма классов, реализация или мое предположение?
BOARD‹>----Шахматная фигура 0..64 или 0..32?
Потому что реализация однозначно позволяет 64, а игровая логика не должна допускать больше 32.