Дизайн, управляемый доменами: обработка сложных объектов с множеством состояний и отношений (недвижимость)

Итак, я ' m является новичком в DDD, и я пытаюсь создать масштабируемую и гибкую систему для моего нынешнего работодателя (агентства недвижимости), которая поможет нам ускорить внутренние процедуры компании.

Как уже говорилось, мы работаем в сфере недвижимости. Я пытаюсь дать определение нашему UL, и у меня возникают проблемы с концептуализацией некоторых сложных объектов.

Например: в сфере недвижимости «консультант по недвижимости» посетит потенциальный «дом клиента» и предоставит «оценку» его «собственности». . При включении эта «Оценка» становится «Листингом», который также может стать «Проданной собственностью» или «Изъятой собственностью». Есть так много разных состояний, в которых может находиться «Собственность». Должен ли я определять «Собственность» как объект или каждое отдельное состояние (Оценка, Листинг, Продано, Withdrawn) быть определенным как отдельный объект?

Проблема усложняется, когда мы добавляем «Клиентов» в смесь. Клиент может быть «Владелец собственности», «Покупатель», «Покупатель», «Теннант», «Инвестор», «Разработчик» и многие, многие другие. Вдобавок ко всему, клиент может быть комбинацией более чем одного из них! Опять же, должен ли «Клиент» быть сущностью, и все эти состояния должны быть представлены просто как свойства сущности «Клиент» или они должны быть отдельными сущностями?

Вдобавок, как насчет связи сущностей «Клиент» с « Объекты собственности. Это отношения «многие ко многим», и я не вижу простого способа их объединить. DDD, похоже, утверждает, что сущность должна быть уникальной в своем существовании, что означает, что у меня не может быть «Свойство». сущность со списком прикрепленных сущностей «Клиент», не заставляя мою сущность «Клиент» вести себя как ВО. И наоборот, при рассмотрении сущностей «Клиент» со списком связанных с ними сущностей «Свойство».

Я читал по 8 часов в день по этой теме последние 2 недели. Это очень сбивает с толку, и мне еще предстоит распутать этот беспорядок. Будем очень признательны за любую помощь и указатели в правильном направлении!

9
задан Socceroos 29 November 2010 в 00:02
поделиться