Но ведь ты меня понял и нарисовал - значит, цель достигнута
. Не обижайся. Я сегодня целый день с диаграммами вожусь, они мне вот уже вот где <показываю поперёк горла>.
Хочешь более простой модели - отсеки лишнее, получишь более частный случай и вероятность потерять лес за деревьями
.
Зачем я выделил более общий случай: я уже 2 раза участвовал в таких системках, и в течении года после внедрения приходили именно к такой модели. Причина в том, что компания пытается использовать систему в более широких рамках, чем начальные. Выясняется, что:
- компания начинает работать и с физиками, и с юриками, и со своими собственными филиалами, и с ПБОЮЛами;
- договоры бывают трёхсторонними, многосторонними и внутренними, а лица могут выступать в роли гарантов, управляющих предприятий и т.д.;
- предметом договора становится пёс знает что.
Теперь я предпочитаю несколько усложнить модель, но выйти на более высокий уровень абстракции.
Причём эта модель подходит для очень многих документов-соглашений (договоры, счета, счета-фактуры, товарные накладные), всё зависит только от стиля визуализации. А если допустить связь с документом одной роль - то схема подойдёт и для документов-решений.
Насчёт абстрактного класса: ассоциация абстрактного класса означает ассоциации всех его подклассов, которые являются конкретными классами.
Или... это была теоретическая задача, отвязанная от конкретной системы?