Найти в Дзене
Пишем диплом по ИТ

Предметная область и база данных.

После того, как вы сделали приличную IDEF0 (или диаграмму в другой процессной нотации), пришло время описать предметную область. В итоге это описание выльется в проект вашей базы данных и классов, если вы апологет ООП. Так вот, если процессная диаграмма сделана на совесть, а не, чтобы препод отстал, то пришло время собирать стрелки. Ваши стрелки - это будущие сущности предметной области, будущие таблицы базы данных. К этому нужно подходить с умом, конечно. Тут не все так просто. Правило "одна стрелка=одна сущность=одна таблица" работает не всегда, но часто. Давайте попробуем на примере. Итак, есть такая диаграмма IDEF0: Я вижу такие сущности: Товар, Накладная возврата, Оприходованный товар. Тут прямо стрелка=сущность. Если у нас несколько складов, то стрелка "Складское помещение" даст нам сущность "Склад". Если склад один, то, возможно, здесь такая сущность не нужна.
Стрелка "Диспетчер склада" скорее всего должна быть расширена до сущности "Сотрудник". Возможно, нам дальше и какие-т

Время собирать стрелки....

После того, как вы сделали приличную IDEF0 (или диаграмму в другой процессной нотации), пришло время описать предметную область. В итоге это описание выльется в проект вашей базы данных и классов, если вы апологет ООП.

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

К этому нужно подходить с умом, конечно. Тут не все так просто. Правило "одна стрелка=одна сущность=одна таблица" работает не всегда, но часто.

Давайте попробуем на примере. Итак, есть такая диаграмма IDEF0:

Рис.1  - IDEF0
Рис.1 - IDEF0

Я вижу такие сущности: Товар, Накладная возврата, Оприходованный товар. Тут прямо стрелка=сущность.

Если у нас несколько складов, то стрелка "Складское помещение" даст нам сущность "Склад". Если склад один, то, возможно, здесь такая сущность не нужна.
Стрелка "Диспетчер склада" скорее всего должна быть расширена до сущности "Сотрудник". Возможно, нам дальше и какие-то другие сотрудники понадобятся. Все-таки это фрагмент, а не вся система.
Возвращенный товар и Оприходованый товар - это тот товар, который будет в накладных. Это слабые сущности внутри накладных. Их пока отдельно выделять не будем.

Имеем следующие сущности:


Рис.2. Сущности
Рис.2. Сущности

Первичные ключи лучше отметить сразу.

Ну и дальше думать о том, как эти сущности связаны между собой. Кто знает, как связывать, тот без труда свяжет. Кто забыл или не знает, велкам смотреть видосик на youtube и книжку читать.

P.S. Что здесь важно понять? Нафигачите дурацких стрелок типа "Товар прибыл", или "Информация", или "Какие-то данные (сам не знаю какие)" - ваша база данных умрет не родившись.