Итак, мы прошли весь путь проектирования от начала до конца. Предлагаю теперь, когда мы знаем все термины и понятия, еще раз записать пошагово алгоритм проектирования.
Шаг 1. Изучить все процессы предметной области. Понять кто выполняет действия и какие это действия, какие документы используются в процессе их выполнения.
Шаг 2. На основании анализа, проведенного на первом шаге, выделить сущности предметной области. Сущностями могут быть люди, документы, структурные подразделения и многое другое. Помним, что «увидеть» все сущности сразу не всегда получается и это совершенно нормально.
Шаг 3. Попытаться понять, какие сущности в предметной области связаны друг с другом. Для этого нужно просто подобрать глагол, который описывает эту связь. Если его не удается подобрать, то связи скорее всего нет в реальности.
Шаг 4. Для тех пар сущностей, которые связаны в реальной жизни, записать по два предложения, описывающих связь с позиции каждой сущности. Помним, что оба предложения начинаются со слова «Один», а вот в дополнении может стоять как «Один» так и «Много».
Выделяем числительные в дополнениях и читаем тип связи.
Шаг 5. Перейти от сущностей к таблицам по принципу «одна сущность — одна таблица».
Шаг 6. Построить связи согласно типам, которые мы выявили на шаге 4, используя при этом правило №1 (стр.30), правило №2 (стр. 32) и правило №3 (стр.36).
Шаг 7. Связи типа «много-ко-многим» порождают дополнительные сущности, поэтому на шаге 7 нужно определить, что это за новые сущности и какие у них атрибуты. В результате должна получиться ER-диаграмма в нотации Crow’s foot.
Шаг 8. База данных построена. Остается проверить полученные таблицы на выполнение трех нормальных форм. Возможно, на этом этапе потребуется выделить еще пару-тройку пропущенных сущностей и дополнить ими диаграмму.
Итог проектирования БД