Логическое проектирование
Построение схемы данных выполняется в несколько этапов: 1) Извлечение информации из интервью с заказчиком, изучение предоставленной информации и выделение сущности (объекты предметной области, информация о которых подлежит хранению). Каждая сущность имеет уникальный идентификатор и обладает свойствами: - обладать одним или несколькими атрибутами, которые либо принадлежат этой сущности, либо наследуются через связи; - сущность обладает одним или несколькими ключами, однозначно идентифицирующими каждый экземпляр; - может обладать любым количеством связей с другими сущностями. 2) Моделирование связей. Связь – это поименованная ассоциация между двумя сущностями, значимая в рассматриваемой предметной области. Обычно каждый экземпляр одной сущности (родительской) ассоциируется с произвольным числом экземпляров-потомков. Имя каждой связи между двумя сущностями должно быть уникально, однако может повторяться в пределах модели. Для каждой связи определяется степень и обязательность. Связь всегда направляется от родительской сущности. Связи бывают следующих типов: - 1:1 (один к одному) – используется на верхнем уровне иерархической модели данных; - 1:М (один ко многим) – один экземпляр одной сущности связывается с несколькими экземплярами второй сущности; - М:N (многие ко многим) – используется на начальной стадии разработки диаграммы. 3) Определение атрибутов сущности. Атрибут – характеристика сущности, значимая в рассматриваемой предметной области и предназначена для классификации, идентификации или выражения состояния сущности. Атрибут может быть описан или идентифицирован, при определении связи между сущностями идентифицирующие атрибуты наследуются от родительской сущности к потомку. Атрибут или их совокупность может использоваться для уникальной идентификации каждого экземпляра сущности (первичный ключ). Атрибут, являющийся первичным ключом, должен располагаться в верхней части списка. Ни одна из частей ключа не должна принимать значение 0, быть незаполненной или отсутствовать. Если сущности связаны, то связь передает ключевой атрибут дочерней сущности, и он называется внешним ключом (FK). На рисунке 1 представлена схема базы данных, на которой видно, что в существующей базе данных семь таблиц, так как в модели присутствуют семь сущностей – это Товары, Группы товаров, Склад, Клиенты, Поставщики, Приход товара, Расход товара. Также на рисунке описаны и все атрибуты сущностей. Все сущности в модели связаны связью один ко многим (1:М). Рисунок 1. Схема базы данных Сущность Клиенты и Товары должны быть связаны между собой, но связь получается многие-ко-многим, так как несколько клиентов могут купить один и тот же товар, а так же несколько наименований товара могут быть проданы одному клиенту, но связи многие-ко-многим в базе данных использовать не рекомендуется, поэтому вводится промежуточная сущность Расход товара, которая связывается с сущностью Клиенты по ключевому полю Код_клиента связью один-ко-многим. А сущность Товары связывается с сущностью Расход товара по ключевому полю Код_товара связью один-ко-многим. Поставщики поставляют товар на склад. Один поставщик может доставлять несколько видов товаров, а так же один товар может поставляться несколькими поставщиками. Соответственно, снова получается связь многие-ко-многим, чтобы избавиться от нее, вводится промежуточная сущность Приход товара, которая соединяется с сущностью Поставщики и с сущностью Товары связью один-ко-многим. Сущность Группы_товаров и Товары связаны при помощи связи один-ко-многим, так как одной группе может принадлежать несколько наименований товаров. Сущности Склад и Товар соединяются при помощи отношения один-ко-многим, так как на одном складе может быть несколько наименований товара. Полученная схема будет служить основой для создания информационной базы проектируемой системы.
|