Как программные системы … ?
визуализировать
специфицировать
конструировать
документировать

One of many








Зависимость:
Класс А могут затронуть изменения в классе B. Другими словами: изменяя класс B (названия полей, методов, их параметры и возвращаемый тип) возможно потребуется делать изменения и в классе A

Ассоциация:
Класс A зависит от B.
Объект A знает об объекте B.

Агрегация:
Класс A зависит от B.
Объект A знает об объекте B.
Объект A состоит из объекта B.

Композиция:
Класс A зависит от B.
Объект A знает об объекте B.
Объект A состоит из объекта B.
Объект A управляет жизненным циклом объекта B.

Реализация:
Класс A зависит от B.
Класс A определяет методы объявленные интерфейсом B.
Объекты A можно рассматривать через интерфейс B.

Наследование:
Класс A зависит от B.
Класс A наследует интерфейс и реализацию класса B, но может переопределить её.
Объекты A можно рассматривать через интерфейс класса B.
