@slip31

Как правильно описать бизнес процесс (ddd)?

Добрый день.
Есть бизнес, в котором пользователь, зарегистрировавшись (используя почту и пароль) может получить консультацию специалиста в неком чате. После этого он может придти (а может не придти) уже ногами в офисы и заключить договор (который уже включает другие данные - паспортные и т.д.). Пользователь может так же просто сразу придти в офис и заключить договор.
Как разделить это всё?
User(Email email, Email password) can go to
Office (Email email, Email password, Passport: passport )
ang Get() any Services()
Пользователь - это Entity, ok. У него есть идентификатор, его можно зарегистрировать и прочее. А вот когда он приходит в офис, чтобы заключить договор - это еще одна сущность Client() или нет? Или это тот же User просто без "паспортной" части? И где должна находится валидация этого? в Email, Name, Passport как в Value-Object или, если это разные сущности, должен быть какой то сервис выделен, к которому я обращаюсь из Value object?

Простите за кашу
  • Вопрос задан
  • 70 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы