пытаясь определить совокупные корни домена проката автомобилей - PullRequest
1 голос
/ 04 февраля 2012

Я пытаюсь изучить некоторые аспекты DDD с доменом веб-сайта проката автомобилей.

Пользователь / клиент выбирает автомобиль с начальной и конечной станции и периода времени.

Расчет цены зависит от различных факторов, таких как способ оплаты, время, классификация автомобилей и так далее.Данные извлекаются из подсистемы, которая отличается по стратегии доступа к данным от остальной части приложения.

В области есть несколько действующих лиц, таких как служба станции, центр обработки вызовов ...

Идея дляограниченный контекст:

  • Компания (сотрудник, машина, вокзал)
  • Бронирование (бронирование, модель для процесса запроса бронирования)
  • Ценообразование (модель цены)
  • Биллинг (фактура аренды, позиции, клиент)

После определения ограниченного контекста я не уверен, правильны ли агрегированные корни каждого из них.Мои мысли

  • Компания: все три из них
  • Бронирование: бронирование (доступ к счетам, автомобиль и клиент)
  • Цены: матрица тарифов
  • Биллинг: клиент (доступ к бронированию, биллингам)

При необходимости я могу добавить некоторые диаграммы классов, чтобы показать различный ограниченный контекст.Если требуется дополнительная информация, диаграмма классов или ее следует перенести в другой раздел, не стесняйтесь спрашивать / делать это.

1 Ответ

1 голос
/ 05 февраля 2012

Имея небольшой опыт работы с доменом проката автомобилей, я бы сказал, что вы на правильном пути. Несколько вещей, о которых вы должны знать: ограниченный контекст - это логическое, а не физическое разделение. Таким образом, использование чего-то вроде составного пользовательского интерфейса позволит вам отображать информацию о ценах как часть процесса бронирования. Вы будете размещать компоненты пользовательского интерфейса из разных BC вместе и использовать их для руководства конечного пользователя через процесс, который он пытается завершить. Другое дело, что вы ищете общие корни во всех BC, но я надеюсь, что вы понимаете, что вам не нужна модель предметной области в каждом из них. Может быть, простая модель данных подойдет, если вещи не являются «ключевыми» для вашего бизнеса или основаны на природе. В этом красота БЦ, способность делать осознанный выбор технологий.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...