Консультации по моделированию домена - PullRequest
1 голос
/ 07 марта 2009

Новый для DDD здесь и есть вопрос архитектуры, который должен быть типичной проблемой.

У меня есть сущность StockItem и сущность Store. Я назначаю StockItem нескольким магазинам и устанавливаю разные уровни ParLevel для каждого магазина. Затем мне нужно иметь транзакции (продажа, покупка, передача и т. Д.), Которые корректируют количество под рукой в ​​разных магазинах.

Каков предпочтительный способ моделирования этого решения? В моей БД я бы имел следующую упрощенную структуру таблицы: [StockItem] StockItemID pk, Имя

[магазин] StoreID pk, Имя

[Store_StockItem] StoreStockItemID pk, StoreID fk, StockItemID fk, ParlLevel, QuantityOnHand

[StockItemTransaction] StockItemTransactionID pk, StockItemStoreID fk, StockItemTransactionTypeID fk, Количество

Любой совет с благодарностью

1 Ответ

5 голосов
/ 07 марта 2009

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

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

Помните, что модель данных и модель предметной области не отображаются друг на друга в соотношении 1: 1.

...