Методически правильно начинать работу с карандашом и листом бумаги, не используя компьютер. Неоптимальные решения и прямые ошибки, заложенные на этапе проектирования, в последствии очень трудно устраняются, поэтому этот этап является основополагающим.
Разработка технического задания
Техническое задание на проектирование БД должен предоставить заказчик. Но для этого он должен владеть соответствующей терминологией и знать, хотя бы в общих чертах, технические возможности основных СУБД. Поэтому обычно используют следующие подходы:
· Демонстрируют заказчику работу аналогичной БД, после чего согласовывают спецификацию отличий;
· Если аналога нет, выясняют круг задач и потребностей заказчика, после чего помогают ему подготовить техническое задание.
При подготовке технического задания составляют:
· Список исходных данных, с которыми работает заказчик;
· Список выходных данных, которые необходимы заказчику для управления структурой своего предприятия;
· Список выходных данных, которые не являются необходимыми для заказчика, но которые он должен предоставить в другие организации (в вышестоящие структуры, в органы статистического учета, прочие административные и контролирующие организации).
|
|
Разработка структуры БД
Выяснив основную часть данных, которые заказчик потребляет или поставляет, можно приступать к созданию структуры базы, т.е. структуры ее основных таблиц.
1. Работа начинается с составления генерального списка полей – он может насчитывать десятки и даже сотни позиций.
2. В соответствии с типом данных, размещаемых в каждом поле, определяют наиболее подходящий тип для каждого поля.
3. Далее распределяют поля генерального списка по базовым таблицам. Цель - обеспечить, чтобы ввод данных в одну таблицу производился, по возможности, в рамках одного подразделения, а еще лучше – на одном рабочем месте.
4. Наметив столько таблиц, сколько подразделений охватывает база данных, приступают к дальнейшему делению таблиц. Критерием деления является факт множественного повтора данных в соседних записях. Например, табл. 7.3.1.
Таблица 7.3.1.