Разработка автоматизированной информационной системы "Типография" для автоматизации расчёта себестоимости готовой продукции печатного издательства

Системный анализ и формирование схемы информационных потоков автоматизации данных печатного издательства. Алгоритмы приложений и тестирование автоматизированной информационной системы. Разработка руководства системного программиста и пользователя.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 25.02.2013
Размер файла 4,6 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

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

Описание внешнего уровня БД

Внешний уровень проектируемой БД являет собой обобщенное представление отдельных пользователей. Это представление может быть оформлено в виде технической документации (технического задания), различных схем, рисунков, таблиц, словесного описания.

Каждый пользователь представляет данные в соответствии с формами различных документов, присущих данной предметной области. При этом одни и те же данные могут иметь различную форму представления -- тип, длину.

Предметной областью называется часть реального мира, представляющая интерес для исследования и автоматизации. Анализируя предметную область, выделяют требования будущих пользователей базы данных, определяются классы объектов данной предметной области, их свойства, выявляются связи между объектами, строится информационная модель предметной области.

Объекты предметной области являются материальными, они имеют физическое представление. Свойства определяют хранимую информацию объектов. Объекты могут обладать статистическими и динамическими свойствами.

В ходе анализа предметной области необходимо получить представление об объекте автоматизации, системе управления, выявить какие функции системы управления будут автоматизированы. В настоящее время широким спросом пользуются задачи автоматизации функций учета и контроля состояния объекта управления на предприятии, всё более востребованной является автоматизация функции анализа. Важным является изучение организационной структуры предприятия, определение состава задач и функциональных подсистем, перечня входной и выходной информации в рамках разрабатываемой АИС.

Для формирования внешнего уровня БД необходимо:

- провести обследование и анализ предметной области;

- определить функциональные требования предъявляемые к программному средству в рамках решения задачи автоматизации;

- определить размер разрабатываемой автоматизированной информационной системы (АИС), которая может охватывать потребности, как отдельного подразделения, так и всего предприятия в целом. Необходимо определить и возможную тенденцию функционального развития АИС.

В результате проведённого анализа предметной области была определена иерархия функций, приведённая на рисунке 14.

Рисунок 14 - Иерархия функций

Формализованное описание предметной области

Выявим классы объектов, присущие заданной предметной области, их свойства, характеристики свойств и связи между классами объектов. Формализованное описание предметной области представляется в виде таблиц 3 и 4

Таблица 3 - Классы объектов предметной области, свойства

Класс объектов/

Свойство

Ключ

(уникальный, первичный)

Физические характеристики

(тип, длина)

Обязательность значения

(м.б., д.б.)

Логические ограничения

(диапазон значений, прописные, строчные буквы для символьных свойств и т.п.)

Процессы

(генерация, ввод значений, возможность обновления, просмотра)

1

2

3

4

5

6

Оформитель

Номер ИНН

УИ1 П

Текст 13

д.б.

Вв, Пр, Об

Фамилия

Текст 20

д.б.

Первая буква заглавная

Вв, Пр, Об

Имя

Текст 20

д.б.

Первая буква заглавная

Вв, Пр, Об

Отчество

Текст 20

д.б.

Первая буква заглавная

Вв, Пр, Об

Кадровая карта

Номер труд. до.г

УИ1 П

Текст 8

д.б.

Вв, Пр, Об

Номер ИНН

УИ2

Текст 13

д.б

Пр

Код должности

УИ2

Текст 6

д.б.

Пр

ОГРН работодателя

УИ2

Текст 13

д.б

Пр

Должность

Код

УИ1 П

Текст 6

д.б.

Ген, Пр

Должность

Текст 25

д.б.

Первая буква заглавная

Вв, Пр, Об

Долж инструкции

Текст 45

м.б.

Вв, Пр, Об

Ед. изм

Код

УИ1 П

Текст 4

д.б.

Ген, Пр

Наим. ед. изм

Текст 4

д.б

Вв, Пр, Об

Полное название

Текст 25

д.б

Вв, Пр, Об

Юр. лицо

Номер ОГРН

УИ1 П

Текст 13

д.б

Вв, Пр, Об

Адрес

Текст 30

д.б

Вв, Пр, Об

Телефон

Текст 15

м.б

Вв, Пр, Об

Код рода деятел

УИ2

Текст 4

д.б

Пр

Заказ

Номер

УИ1 П

Текст 6

д.б

Вв, Пр, Об

Дата принятия

Дата

д.б

Краткая запись

Пр, Об

Код услуги

УИ2

Текст 4

д.б

Пр, Об

Тираж

Целое число

д.б

>0

Вв, Пр, Об

Код ед изм

УИ2

Текст 4

д.б

Пр, Об

Цена тиража

Денежный 8

д.б

>0 2 символа после запятой

Вв, Пр, Об

Код ден ед изм

УИ2

Текст 4

д.б

Пр, Об

Номер труд дог

УИ2

Текст 8

д.б

Пр, Об

ОГРН заказчика

УИ2

Текст 13

д.б

Пр, Об

Дата выдачи

Дата

д.б.

Краткая

Пр, Об

Ден ед изм

Код

УИ1 П

Текст 4

д.б

Ген, Пр

Денеж ед изм

Текст 6

д.б

Вв, Пр, Об

Полное название

Текст 45

д.б

Вв, Пр, Об

Вид_услуги

Код

УИ1 П

Текст 4

д.б

Ген, Пр

Наимен_услуг

Текст 25

д.б

Вв, Пр, Об

Краткое_опис

Текст 45

м.б

Цена_1_экз

Денежный 8

д.б

>0 2 символа после запятой

Вв, Пр, Об

Код_ден_ед_изм

УИ2

Текст 4

д.б

Пр, Об

Код_вида_деятел

УИ2

Текст 4

д.б

Пр, Об

Вид_деятельности

Код

УИ1 П

Текст 4

д.б

Ген, Пр

Наимен_вида_деятел

Текст 25

д.б

Вв, Пр, Об

Краткое_описание

Текст 45

м.б

Вв, Пр, Об

Прибыль

Код

УИ1 П

Текст 4

д.б

Ген, Пр

Номер_с/ф

УИ2

Текст 4

д.б

Пр, Об

Дата_с/ф

Дата

д.б

Вв, Пр, Об

Прибыль

Денежный 8

д.б

>0 2 символа после запятой

Пр, Об

Процент_прибыли

Действительное

д.б

>0 2 символа после запятой

Пр, Об

Род_деятельности

Код

УИ1 П

Текст 4

д.б

Ген, Пр

Наимен_рода_деятел

Текст 25

д.б

Вв, Пр, Об

Краткое_описание

Текст 45

м.б

Вв, Пр, Об

Материалы

Код_материала

УИ1 П

Текст 4

д.б

Вв, Пр, Об

Наименование

Текст 25

д.б

Вв, Пр, Об

Код_ед_изм

УИ2

Текст 4

д.б

Пр, Об

Стоимость

Денежный 8

д.б

>0 2 символа после запятой

Вв, Пр, Об

Код_ден_ед_изм

УИ2

Текст 4

д.б

Пр, Об

Расход_на_А4_ф

Действительное

д.б

>0 2 символа после запятой

Вв, Пр, Об

Процент_накл_расходов

Действительное

д.б

>0 2 символа после запятой

Вв, Пр, Об

Себестоимость_ГП

Номер_с/ф

УИ1 П

Текст 4

д.б

Вв, Пр, Об

Номер_заказа

УИ2

Текст 4

д.б

Пр, Об

Код_бумаги

УИ2

Текст 4

д.б

Пр, Об

Код_краски

УИ2

Текст 4

д.б

Пр, Об

Код_мастер_пленки

УИ2

Текст 4

д.б

Пр, Об

Код_переплета_ламината

УИ2

Текст 4

д.б

Пр, Об

Код_доп_работ

УИ2

Текст 4

д.б

Пр, Об

Себестоимость_заказа

Денежный 8

д.б

>0 2 символа после запятой

Вв, Пр, Об

Себестоимость_1_экз

Денежный 8

д.б

>0 2 символа после запятой

Вв, Пр, Об

Код_ден_ед_изм

УИ2

Текст 4

д.б

Пр, Об

Допол_работы

Код_доп_работ

УИ1 П

Текст 4

д.б

Ген, Пр

Наименование

Текст 25

д.б

Вв, Пр, Об

Стоимость_за_1_экз

Денежный 8

д.б

>0 2 символа после запятой

Вв, Пр, Об

Код_ден_ед_изм

УИ2

Текст 4

д.б

Пр, Об

Бумага

Код

УИ1 П

Текст 4

д.б

Ген, Пр

Код_материала

УИ2

Текст 4

д.б

Пр, Об

Описание

Текст 45

м.б

Вв, Пр, Об

Переплет_ламинат

Код

УИ1 П

Текст 4

д.б

Ген, Пр

Код_материала

УИ2

Текст 4

д.б

Пр, Об

Описание

Текст 45

м.б

Вв, Пр, Об

Краска

Код

УИ1 П

Текст 4

д.б

Ген, Пр

Код_материала

УИ2

Текст 4

д.б

Пр, Об

Описание

Текст 45

м.б

Вв, Пр, Об

Мастер_пленка

Код

УИ1 П

Текст 4

д.б

Ген, Пр

Код_материала

УИ2

Текст 4

д.б

Пр, Об

Описание

Текст 45

м.б

Вв, Пр, Об

В таблице 3 использованы сокращения: УИ - уникальный идентификатор, П - кандидат в первичный ключ (главный уникальный идентификатор), Ген - генерация значения, Вв - ввод значения, Пр - просмотр значения, Об - обновление значения.

Таблица 4 - Связи между классами объектов (КО)

Классы объектов

Опциональность связи

Имя связи со стороны

Тип связи со стороны

главн. КО

подч. КО

глав. КО

подч. КО

главн. КО

подч. КО

Главн. КО

подч. КО

1

2

3

4

5

6

7

8

Материалы

Бумага

Д.Б.

Д.Б.

формирует

содержит

1

М

Материалы

Краска

Д.б.

Д.б.

формирует

содержит

1

М

Материалы

Переплет_ламинат

Д.б.

Д.б.

формирует

содержит

1

М

Материалы

Мастер_пленка

Д.б.

Д.б.

формирует

содержит

1

М

Бумага

Себестоимость_ГП

Д.б.

Д.б.

формирует

содержит

1

М

Краска

Себестоимость_ГП

Д.б.

Д.б.

формирует

содержит

1

М

Переплет_ламинат

Себестоимость_ГП

Д.б.

Д.б.

формирует

содержит

1

М

Мастер_пленка

Себестоимость_ГП

Д.б.

Д.б.

формирует

содержит

1

М

Ед_изм

Заказ

Д.б.

Д.б.

формирует

содержит

1

М

Ед_изм

Материалы

Д.б.

Д.б.

формирует

содержит

1

М

Ден_ед_изм

Материалы

Д.б.

Д.б.

формирует

содержит

1

М

Ден_ед_изм

Заказ

Д.б.

Д.б.

формирует

содержит

1

М

Ден_ед_изм

Себестоимость_ГП

Д.б.

Д.б.

формирует

содержит

1

М

Ден_ед_изм

Доп_работы

Д.б.

Д.б.

формирует

содержит

1

М

Ден_ед_изм

Вид_услуги

Д.б.

Д.б.

формирует

содержит

1

М

Доп_работы

Себестоимость_ГП

Д.б.

Д.б.

формирует

содержит

1

М

Себестоимость_ГП

Прибыль

Д.б.

Д.б.

формирует

содержит

1

М

Заказ

Себестоимость_ГП

Д.б.

Д.б.

формирует

содержит

1

М

Кадровая_карта

Заказ

Д.б.

Д.б.

формирует

содержит

1

М

Вид_услуги

Заказ

Д.б.

Д.б.

формирует

содержит

1

М

Юр_лицо

Заказ

Д.б.

Д.б.

формирует

содержит

1

М

Юр_лицо

Кадровая_карта

Д.б.

Д.б.

формирует

содержит

1

М

Должность

Кадровая_карта

Д.б.

Д.б.

формирует

содержит

1

М

Оформитель

Кадровая_карта

Д.б.

Д.б.

формирует

содержит

1

М

Вид_деятельности

Вид_услуги

Д.б.

Д.б.

формирует

содержит

1

М

Род_деятельности

Юр_лицо

Д.б.

Д.б.

формирует

содержит

1

М

В таблице 4 использованы сокращения: м.б. - может быть; д.б. - должно быть; КО - класс объектов, главн. - главный; подч. - подчиненный.

Уровни доступа пользователей

Были определены потенциальные пользователи программным средством и базой данных. Были выделены две группы пользователей. Описание представлено ниже в виде таблицы 5.

- Программист. Пользователь данной категории имеет практически полный доступ к базе данных, он может добавлять, просматривать, модифицировать записи базы данных.

- Менеджер. Пользователь данной категории характеризуется тем, что имеет ограниченные права по сравнению с программистом. Ему доступно добавление и редактирование существующих данных, кроме некоторых справочников. Менеджер имеет право удалять записи из базы данных некоторых таблиц, к которым он имеет непосредственное отношение.

Таблица 5 - Уровни доступа пользователей

Объекты доступа

Пользователи

Программист

Менеджер

1

2

3

Оформитель

Номер_ИНН

I, U, D, R

R

Фамилия

I, U, D, R

R

Имя

I, U, D, R

R

Отчество

I, U, D, R

R

Кадровая_карта

Номер_труд_дог

I, U, D, R

R

Номер_ИНН

I, U, D, R

R

Код_должности

I, U, D, R

R

ОГРН_рабоатдателя

I, U, D, R

R

Должность

Код

I, U, D, R

R

Должность

I, U, D, R

R

Долж_инструкции

I, U, D, R

R

Ед_изм

Код

I, U, D, R

R

Наим_ед_изм

I, U, D, R

R

Полное_название

I, U, D, R

R

Юр_лицо

Номер_ОГРН

I, U, D, R

R

Адрес

I, U, D, R

R

Телефон

I, U, D, R

R

Код_рода деятел

I, U, D, R

R

Заказ

Номер

I, U, D, R

I, U, D, R

Дата_принятия

I, U, D, R

I, U, D, R

Код_услуги

I, U, D, R

I, U, D, R

Тираж

I, U, D, R

I, U, D, R

Код_ед_изм

I, U, D, R

I, U, D, R

Цена_тиража

I, U, D, R

I, U, D, R

Код_ден_ед_изм

I, U, D, R

I, U, D, R

Номер_труд_дог

I, U, D, R

I, U, D, R

ОГРН_заказчика

I, U, D, R

I, U, D, R

Дата_выдачи

I, U, D, R

I, U, D, R

Ден_ед_изм

Код

I, U, D, R

R

Денеж_ед_изм

I, U, D, R

R

Полное_название

I, U, D, R

R

Вид_услуги

Код

I, U, D, R

I, U, D, R

Наимен_услуг

I, U, D, R

I, U, D, R

Краткое_опис

I, U, D, R

I, U, D, R

Цена_1_экз

I, U, D, R

I, U, D, R

Код_ден_ед_изм

I, U, D, R

I, U, D, R

Код_вида_деятел

I, U, D, R

I, U, D, R

Вид_деятельности

Код

I, U, D, R

R

Наимен_вида_деятел

I, U, D, R

R

Краткое_описание

I, U, D, R

R

Прибыль

Код

I, U, D, R

R

Номер_с/ф

I, U, D, R

I, U, D, R

Дата_с/ф

I, U, D, R

I, U, D, R

Прибыль

I, U, D, R

I, U, D, R

Процент_прибыли

I, U, D, R

I, U, D, R

Род_деятельности

Код

I, U, D, R

R

Наимен_рода_деятел

I, U, D, R

R

Краткое_описание

I, U, D, R

R

Материалы

Код_материала

I, U, D, R

I, U, D, R

Наименование

I, U, D, R

I, U, D, R

Код_ед_изм

I, U, D, R

I, U, D, R

Стоимость

I, U, D, R

I, U, D, R

Код_ден_ед_изм

I, U, D, R

I, U, D, R

Расход_на_А4_ф

I, U, D, R

I, U, D, R

Процент_накл_расходов

I, U, D, R

I, U, D, R

Себестоимость_ГП

Номер_с/ф

I, U, D, R

I, U, D, R

Номер_заказа

I, U, D, R

I, U, D, R

Код_бумаги

I, U, D, R

I, U, D, R

Код_краски

I, U, D, R

I, U, D, R

Код_мастер_пленки

I, U, D, R

I, U, D, R

Код_переплета_ламината

I, U, D, R

I, U, D, R

Код_доп_работ

I, U, D, R

I, U, D, R

Себестоимость_заказа

I, U, D, R

I, U, D, R

Себестоимость_1_экз

I, U, D, R

I, U, D, R

Код_ден_ед_изм

I, U, D, R

I, U, D, R

Допол_работы

Код_доп_работ

I, U, D, R

I, U, R

Наименование

I, U, D, R

I, U, R

Стоимость_за_1_экз

I, U, D, R

I, U, R

Код_ден_ед_изм

I, U, D, R

I, U, R

Бумага

Код

I, U, D, R

R

Код_материала

I, U, D, R

R

Описание

I, U, D, R

R

Переплет_ламинат

Код

I, U, D, R

R

Код_материала

I, U, D, R

R

Описание

I, U, D, R

R

Краска

Код

I, U, D, R

R

Код_материала

I, U, D, R

R

Описание

I, U, D, R

R

Мастер_пленка

Код

I, U, D, R

R

Код_материала

I, U, D, R

R

Описание

I, U, D, R

R

В таблице 5 использованы сокращения операций, производимых со свойствами классов объектов: R - read (чтение); I - insert (добавление); U - update (обновление); D - delete (удаление).

Информационно-логическая модель предметной области

Для построения инфологической модели предметной области использовалась методология Ричарда Баркера. Это расширенная методология. Она позволяет учесть все особенности семантической модели:

– несколько уникальных идентификаторов;

– опциональность свойств и связей;

– моделирование взаимоисключающих связей, классов объектов.

К данной модели предъявляются следующие требования:

– качество изображения. Правило «мертвые вороны летят на восток»;

– прямоугольные классы объектов рисуются не по сетке. Линии связи прямые;

– линии связей не должны пересекаться;

– избегать большого количества параллельных линий;

– избегать жаргонов при названии классов объектов и свойств;

– для улучшения зависимости диаграммы увеличивать прямоугольники;

– помнить правила использования супертипов и арков;

– связь, обязательная с обеих сторон, - редко встречающаяся связь;

– связь, необязательная с обеих сторон, - тоже редко встречающаяся связь;

– рекомендуется связь необязательная с обеих сторон, кроме рекурсивного подтипа.

В настоящее время существуют разнообразные методологий (нотации) построения ER--модели.

Рассмотрим методологию построения Ричарда Баркера. Элементы методологии: класс объектов, свойство класса объектов, уникальные идентификаторы, опциональность свойств, мощность (тип), опциональность и переносимость связей, уникальность объектов из связей, супертипы, подтипы, арки.

Классом объектов называют совокупность объектов, обладающих одинаковым набором свойств. При отображении в информационной системе каждый класс объектов представляется своим идентификатором, который отличает один класс от другого. Идентификатор должен быть уникальным. Каждый объект обладает определенным набором свойств. Для объектов одного класса набор этих свойств одинаков.

При описании предметной области необходимо отразить связь между объектами разных классов.

Различают связи типа «один к одному» (1:1), «один ко многим» (1:М), «многие ко многим» (М:М).

ИЛМ предметной области представлена в виде ER-диаграммы предметной области, построенной по методологии Ричарда Баркера.

ER-диаграмма - четырехугольник с закругленными углами. В нем описан класс объектов - это значимая вещь, о которой предприятие должно хранить информацию со свойствами - качественное или количественное описание класса объекта. Если обнаружится свойство, имеющий собственные свойства, то это не свойство, а класс объектов. Значение свойства может быть обязательным или необязательным. Такая характеристика свойства называется опциональностью свойства. Обязательность свойства помечается «*». Необязательные значения свойства могут быть неизвестны (или не существуют) для какого-либо объекта на момент его создания. Помечается «о».

Уникальный идентификатор (УИ) - любая комбинация свойств и связей, используемых для однозначной идентификации объекта. Количество УИ в классе объектов может быть каким угодно. На диаграмме идентификатор обозначается «#», если УИ несколько, порядок обозначается числом в скобках. Главным делается идентификатор, чаще используемый.

Обязательная связь помечается сплошной линией, необязательная - пунктирной. Тип (мощность) связи «один» помечается линией, «много» - «вороньей лапой».

Перекрестная проверка модели предметной области и иерархии функций

Перекрестная проверка модели предметной области и иерархии функций представлена в таблице 6.

Таблица 6 - Перекрестная проверка модели предметной области и иерархии функций

Функции

Классы объектов

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

1

I

2

U

3

R

В таблице 6 использованы сокращения классов объектов:

КО1 - Должность

КО2 - Род_деятельности

КО3 - Заказ

КО4 - Себестоимость_ГП

КО5 - Прибыть

КО6 - Юр_лицо

КО7 - Бумага

КО8 - Краска

КО9 - Переплет_ламинат

КО10 - Мастер_пленка

КО11 - Вид_услуг

КО12 - Вид_деятельности

КО13 - Оформитель

КО14 - Кадровая_кадра

КО15 - Ед_изм

КО16 - Ден_ед_изм

КО17 - Доп_работы

КО18 - Материалы

В таблице 6 использованы сокращения функций:

Ф1 - Добавление должности

Ф2 - Обновление должности

Ф3 - Просмотр должности

Ф4 - Добавление род_деятельности

Ф5 - Обновление род_деятельности

Ф6 - Просмотр род_деятельности

Ф7 - Добавление заказ

Ф8 - Обновление заказ

Ф9 - Удаление заказ

Ф10 - Просмотр заказ

Ф11 - Поиск заказ

Ф12 - Сортировка заказ

Ф13 - Отчет заказ

Ф14 - Добавление себестоимость_ГП

Ф15 - Обновление себестоимость_ГП

Ф16 - Удаление себестоимость_ГП

Ф17 - Просмотр себестоимость_ГП

Ф18 - Поиск себестоимость_ГП

Ф19 - Сортировка себестоимость_ГП

Ф20 - Отчет себестоимость_ГП

Ф21 - Добавление прибыть бумага

Ф22 - Обновление прибыть

Ф23 - Удаление прибыть

Ф24 - Просмотр прибыть

Ф25 - Добавление юр_лицо

Ф26 - Обновление юр_лицо

Ф27 - Просмотр юр_лицо

Ф28 - Сортировка юр_лицо

Ф29 - Добавление бумага

Ф30 - Обновление бумага

Ф31 - Просмотр бумага

Ф32 - Добавление краска

Ф33 - Обновление краска

Ф34 - Просмотр краска

Ф35 - Добавление переплет_ламинат

Ф36 - Обновление переплет_ламинат

Ф37 - Просмотр переплет_ламинат

Ф38 - Добавление мастер_пленка

Ф39 - Обновление мастер_пленка

Ф40 - Просмотр мастер_пленка

Ф41 - Добавление вид_услуг

Ф42 - Обновление вид_услуг

Ф43 - Просмотр вид_услуг

Ф44 - Добавление вид_деятельности

Ф45 - Обновление вид_деятельности

Ф46 - Просмотр вид_деятельности

Ф47 - Добавление оформитель

Ф48 - Обновление оформитель

Ф49 - Просмотр оформитель

Ф50 - Добавление кадровая_кадра

Ф51 - Обновление кадровая_кадра

Ф52 - Просмотр кадровая_кадра

Ф53 - Добавление ед_изм

Ф54 - Обновление ед_изм

Ф55 - Просмотр ед_изм

Ф56 - Добавление денеж_ед_изм

Ф57 - Обновление денеж_ед_изм

Ф58 - Просмотр денеж_ед_изм

Ф59 - Добавление доп_работы

Ф60 - Обновление доп_работы

Ф61 - Просмотр доп_работы

Ф62 - Добавление материалы

Ф63 - Обновление материалы

Ф64 - Удаление материалы

Ф65 - Просмотр материалы

Ф66 - Сортировка материалы

Даталогическая модель базы данных

Построение даталогической модели базы данных - это следующий этап проектирования базы данных методом «нисходящего» проектирования. Исходными данными для даталогического проектирования является информационно-логическая модель предметной области. В результате даталогического моделирования должна быть получена логическая структура базы данных, описанная в терминах реляционной модели данных на основе физических записей.

При переходе к даталогической модели следует помнить, что инфологическая модель включает в себя всю информацию о предметной области, необходимую и достаточную для проектирования баз данных. Рассмотрим некоторые основные правила формирования логической структуры реляционной базы данных на основе ER-диаграммы предметной области.

1) Преобразование простых классов объектов. Это классы объектов, информация о которых первой появляется в предметной области, они не имеют рекурсивных связей и не входят в супертипы, арки. Связи на стороне этих классов объектов имеют тип «один».

Такие классы объектов называют родительскими или главными. Алгоритм преобразования следующий: именем реляционного отношения становится имя класса объектов. Каждое свойство класса объектов становится атрибутом отношения, первичный ключ выделяется, уникальные (потенциальные) ключи помечаются. Все свойства, входящие в состав первичного ключа, должны быть обязательными. Атрибуты, входящие в состав уникальных ключей могут быть необязательными. Из состава уникальных ключей могут быть выбраны (помечены) ключи, альтернативные первичному ключу, для возможной реализации связи полученного реляционного отношения с другими отношениями.

2) Преобразование связи 1:М. Связь реализуется копированием первичного ключа из реляционного отношения на стороне «один» в реляционное отношение на стороне "много", из главного отношения в подчиненное. Новому появившемуся атрибуту присваивается уникальное в пределах отношения имя. В имени хорошо использовать имя таблицы, откуда осуществляется копия. Этот вновь появившийся атрибут помечается как внешний ключ. Если на ER--диаграмме опциональность связи со стороны «много» была обязательной, то опциональность внешнего ключа также обязательная. В противном случае опциональность внешнего ключа будет иметь значение "м.б.". Если уникальность класса объектов со стороны "много" определялась из связи, то внешний ключ должен входить в состав первичного ключа, эта ситуация соответственно помечается.

3) Преобразование связи 1:1. В ER-диаграмме связь 1:1 может иметь разную опциональность. От этого зависит её отображение в схеме БД. Если связь "один к одному" обязательна с одной стороны, то поле с внешним ключом добавляется в отношение на обязательной стороне и это отношение становится подчиненным, опциональность внешнего ключа будет обязательной. Если связь 1:1 необязательная или обязательная (что очень редко) в обоих направлениях, необходимо выбрать в какую таблицу будет помещен внешний ключ.

Решение принимается в зависимости от времени появления и объема данных: если строка в одном отношении создается обычно раньше, чем в другом, то это отношение назначается главным, а внешний ключ создается в подчиненном отношении; если в одном отношении будет меньше строк, чем в другом, то есть его размер будет изменяться менее динамично, тогда это отношение назначается главным, а внешний ключ создается в подчиненном. Внешний ключ создается копированием первичного ключа из главного отношения в подчиненное. Опциональность внешнего ключа определяется опциональностью связи. Замечание: внешний ключ, отображающий такую связь должен быть уникальным, это усиливает связь типа 1:1.

4) Преобразование рекурсивной связи. Поскольку рекурсивная связь - это связь между объектами одного класса объектов, то внешний ключ создается путем копирования первичного ключа в эту же схему отношения. Дополнительные ограничения рекурсивной связи, такие как, «объект не должен ссылаться сам на себя (нельзя быть женатым не себе самом, нельзя подчиняться себе самому)» реализуются либо в логике приложений, либо с помощью хранимых процедур, что более предпочтительно. Замечание: для рекурсивной связи 1:1 комбинация значений первичного и внешнего ключа не должна повторяться в кортежах отношения.

5) Реализация связей М:М. Наличие в ER-диаграмме связей М:М - это не дообследование предметной области и в этом случае модель предметной области не совсем адекватна. Если связь М:М все-таки осталась, то от неё в схеме реляционной БД необходимо избавиться. Реляционные СУБД такую связь не поддерживает. Для того чтобы разорвать связь М:М в схеме реляционной БД создается искусственное отношение, в которое включаются копии первичных ключей из отношений на сторонах связи. Эти копии становятся соответствующими внешними ключами. Первичный ключ такого отношения состоит из обеих копий первичных ключей. В такую суррогатную таблицу по желанию проектировщика могут быть перенесены некоторые атрибуты из отношений на сторонах связи М:М. В любом случае будет получена модель, отражающая предметную область неадекватно.

Анализ схем реляционных отношений на соответствие 3НФ

Проанализируем схемы отношений полученной РБД на соответствие 3НФ. Приведенная схема соответствует, как минимум, 3НФ, поскольку во всех отношениях атрибуты атомарные, первичные ключи не составные и отсутствуют транзитивные зависимости между не ключевыми атрибутами и первичными ключами.

Кроме того, каждый детерминант отношения является потенциальным ключом, что свидетельствует о достижении НФБК.

Таким образом, полученная схема отношений соответствует НФБК и, следовательно, может в достаточной мере обеспечить целостность данных.

Физическая модель базы данных

В выбранной СУБД Access 2003 поддерживаются следующие объекты, необходимые для создания БД:

- таблица - информационная структура РБД. В одной БД все таблицы должны быть связаны;

Указанный объект используются при разработке БД.

Техническое описание таблиц проектируемой базы данных на языке определения данных (ЯОД) выбранной СУБД. В таблицах 7 - 24 технически описаны все таблицы реляционной БД на ЯОД языка SQL (СУБД Access 2003).

Таблица 7 - Реляционная таблица «Бумага»

Таблица "Бумага"

Имя поля

Код

Код_материала

Описание

Ключ

Первичный ключ

Внешний ключ

Тип, длина

Текст (4)

Текст (4)

Текст (45)

Обязательность значения

Обязател. ввод

Обязател. ввод

Логическое ограничение на поле

Примеры данных

Б007

М001

Применяют для визиток

Таблица 8 - Реляционная таблица «Переплет_ламинат»

Таблица "Переплет_ламинат"

Имя поля

Код

Код_материала

Описание

Ключ

Первичный ключ

Внешний ключ

Тип, длина

Текст (4)

Текст (4)

Текст (45)

Обязательность значения

Обязател. ввод

Обязател. ввод

Логическое ограничение на поле

Примеры данных

П001

М003

Журнал в жест. переплете

Таблица 9 - Реляционная таблица «Мастер_пленка»

Таблица "Мастер_пленка"

Имя поля

Код

Код_материала

Описание

Ключ

Первичный ключ

Внешний ключ

Тип, длина

Текст (4)

Текст (4)

Текст (45)

Обязательность значения

Обязател. ввод

Обязател. ввод

Логическое ограничение на поле

Примеры данных

М002

М004

Для ризографии

Таблица 10 - Реляционная таблица «Краска»

...

Таблица "Краска"

Имя поля

Код

Код_материала

Описание

Ключ

Первичный ключ

Внешний ключ

Тип, длина

Текст (4)


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.