Предлагаемый подход предполагает использование приемов,
Предлагаемый подход предполагает использование приемов, использующихся в процессе проектирования как объектно-ориентированных систем, что позволяет достичь присущего объектным системам уровня адекватности представления предметной области, так и реляционных баз данных, что предполагает достаточно высокую степень формализма при проектирования схемы данных.
Будем рассматривать процесс проектирования на примере создания схемы данных, описывающих отгрузки товара со склада. Имеется следующая информация
NoS |
Уникальный номер отгрузки |
Date |
Дата отгрузки |
EmpID |
Идентификатор ответственного сотрудника |
EmpName |
Имя сотрудника |
GoodsID |
Уникальный артикул товара |
СoodsName |
Наименование товара |
Pieces |
Количество отгруженного товара (штуки) |
На начальном этапе мы должны
1) определить границы предметной области, выявив в ней возможные классы и объекты, для чего можно использовать существующие методы объектно-ориентированного анализа. В нашем примере такими классами могут быть классы, описывающие товары (cGoods), служащих (cEmployees) и отгрузки (cShipments).
2) нормализовать имеющуюся схему данных. В процессе нормализации мы получили несколько 3НФ отношений (первый столбец содержит имя атрибута, второй – накладываемые на него ограничения)
rStaff (информация о сотрудниках)
StaffID |
Primary key |
StaffName |
|
rGoods (информация о товарах)
GoodsID |
Primary key |
GoodsName |
|
rShipments (общие данные об отгрузках)
NoS |
Primary key |
Sdate |
|
StaffID |
|
rShipmentComments (необязательные комментарии об отгрузках)
NoS |
Primary key, Foreign key on rShipments.NoS |
Comments |
|
rShipmentItems(детальные данные об отгрузках)
NoS |
Primary key, Foreign key on rShipments.NoS |
GoodsID |
Primary key, Foreign key on rGoods.GoodsID |
Pieces |
|
Дальнейшие шаги по созданию схемы данных основаны на выявлении функциональных зависимостей С->R.ra между классами и ключевыми атрибутами отношений, возникших в процессе нормализации данных.
Содержание Назад Вперед