“Анти-требования” для модели данных
Самый очевидный способ подойти к проработке модели данных – смотреть на ее сущности как на объекты реального мира, добавляя им атрибуты, которые имеют очевидный смысл. Например, “товар” в корзине интернет-магазина, состоит из названия, его описания, цены, количества приобретенных единиц и других похожих свойств. Недостаток такого подхода в том, что модели такого рода могут очень сильно разрастаться, их состояние зависит от кучи различных условий, и для корректного их обновления придется писать сложную логику.
Распилить модель правильным образом могут помочь “анти-требования”. Идея такая – вы формулируете фейковое бизнес-требование, влияюбщее на отношения атрибутов, и оцениваете его адекватность. Например, “Когда описание товара длиннее 5000 символов, его цена должна измениться на 20%”. Если требование звучит неадекватно – нет никакой необходимости держать эти атрибуты в рамках одной сущности. Если звучит адекватно – связь есть, нужно выделять в отдельную сущность.
Post #1125
7.49K

- 🤡 25
- 👍 10
- 🤔 9
- 💩 3