Проектирование АИС «Зоопарк радуга»

ФЕДЕРАЛЬНОЕ АГЕНСТВО ПО ОБРАЗОВАНИЮ

Государственное образовательное  учреждение

высшего профессионального образования

«Братский государственный университет»

БРАТСКИЙ ЦЕЛЛЮЛОЗНО-БУМАЖНЫЙ КОЛЛЕДЖ

 

 

 

 

II этап

Государственного междисциплинарного экзамена

Для специальности 230103.51

Курс 4 квалификация – техник

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Работу выполнил: Д. В. Чуркин 
Работу проверил:  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Братск

2010

 

СОДЕРЖАНИЕ

 

 

  1. Описание предметной области

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

База данных «Зоопарк радуга» содержит шесть таблиц, три запроса на выборку, одна главная форма, из которой можно перейти во все остальные пять форм.

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

Тема моей базы данных Строительная компания. Для своей компании я выбрала название Гранд_Строй. В данной БД 6 таблиц, 6 форм и 3 запроса.

  1. Проектирование структуры автоматизированной

информационно системы «Зоопарк радуга»

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

В нашем случае мы имеем такие сущности и атрибуты в них, как:

Сущность Гранд_Строй включает в себя следующие характеристики:

  • Номер_Договора;
  • Название_Договора.

Сущность Заказчики включает в себя следующие характеристики:

  • Код_Заказчика;
  • Фирма;
  • Фамилия_заказчика;
  • Имя;
  • Отчество;
  • Улица_Фирмы;
  • Дом;
  • Квартира_Офис;
  • Контактный_Телефон;
  • Название_Договора.

Сущность Заказ_Объекта включает в себя следующие характеристики:

  • Код_Заказа;
  • Город;
  • Улица;
  • Название_Объекта;
  • Заказчик.

Сущность Бригады включает в себя следующие характеристики:

  • Код_Бригады;
  • Фамилия;
  • Имя;
  • Отчество;
  •  
  • Должность;
  • Категория_Рабочего;
  • Рабочий_Объект;
  • Название_Оборудования;
  • Код_заказчика.

Сущность Инфор_О_Рабочих включает в себя следующие характеристики:

  • Табельный_Номер;
  • Пол;
  • Дата_Рождения;
  • Улица;
  • Дом;
  • Квартира;
  • Телефон;
  • Название_Договора;
  • Бригада.

Сущность Оборудование включает в себя следующие характеристики:

  • Код_Оборудования;
  • Название_Оборудования;
  • Категория_Оборудования.
  •  
  1. Разработка ER-диаграммы

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

 

 

  1. Нормализация сущностей

Первая нормальная форма

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

Приведение отношения к 1НФ — довольно простая операция. Нужно просмотреть схему отношения и разделить составные атрибуты на различные столбцы (строки).

Таблица 1. Гранд_Строй

Номер_Договора

Название_Договора

1

Договор по постройке жилого дома

2

Договор по постройке моста

3

Договор по постройке школы


Таблица 2. Бригады

Код_Бригады

Фамилия

Имя

Отчество

Должность

Категория_Рабочего

Рабочий_Объект

Название_Оборудования

Код_Заказчика

1

Морозов

Юрий

Анатольевич

Прораб

Инженеро-технический

Строительство дороги

Различные краски

Альтаир

2

Павлов

Анатолий

Сергеевич

Инженер

Инженеро-технический

Строительство дороги

Сухая засыпка

Альтаир

3

Морозов

Павел

Анатольевич

Отделочник

рабочий

Строительство дороги

Пиломатериалы

Альтаир


Таблица 3. Заказ_Объекта

Код_Заказа

Город

Улица

Название_Объекта

Заказчик

1

Братск

Космонавтов

Строительство дороги

Альтаир

2

Братск

Юилейная

Строительство школы

Хагит

3

Братск

Южная

Строительство жилого дома

Бетор


 

 

Таблица 4. Заказчики

Код_Заказчика

Фирма

Фамилия_Заказчика

Имя

Отчество

Улица_Фирмы

Дом

Квартира_Офис

Контактный_Телефон

Название_Договора

1

Альтаир

Южакин

Борис

Аркадьевич

Хабарова

9

 

36-65-41

Договор по постройке дороги

5

Хагит

Смирнов

Иван

Борисович

Юбилейная

33

 

33-56-45

Договор по постройке школы

7

Бетор

Жуков

Петр

Васильевич

Энгельса

12

 

23-15-64

Договор попостройке жилого дома


Таблица 5. Информация_О_Рабочих

Табельный_Номер

Пол

Дата_Рождения

Улица

Дом

Квартира

Телефон

Название_Договора

1

Мужской

15.05.1970

Космонавтов

38

12

45-95-16

Договор по постройке дороги

2

Мужской

12.08.1965

Энгельса

50

120

43-25-42

Договор по постройке дороги

3

Мужской

05.01.197

Юбилейная

49

30

46-21-52

Договор по постройке дороги


Таблица 6. Оборудование

Код_Оборудования

Наименование_Оборудования

Категория_Оборудования

1

Электроприборы

Строительная техника

2

Бетономешалки

Строительная техника

3

Плиточный материал

Строительные материалы


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

 

Вторая нормальная форма

Отношения находятся во 2 НФ, если оно  находится в ШФ, и при этом все неключевые атрибуты зависят только от ключа целиком, а не от какой-то его части.

Если все данные таблицы имеют  простой первичный ключ, состоящий  только из одного поля, тогда все таблицы автоматически находится во второй НФ.

Таблицы в БД Гранд_Строй находится во второй НФ, т. к. она удовлетворяет первой нормальной формы и все ее поля, не входящие в первичный ключ, связаны полной функциональной зависимостью с первичным ключом.

Третья нормальная форма

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

Чтобы привести отношение к ЗНФ  необходимо, чтобы факты, хранимые в таблице, зависели только от ключа.

 

  1. Физическая модель автоматизированной информационной системы Гранд_Строй

Физическая модель таблицы  Бригады

Имя поля

Тип данных

Описание

Размер поля

Формат поля

Маска ввода

Число десятичных знаков

Подпись

Значение по умолчанию

Условие на значение

Сообщение об ошибке

Обязательное поле

Пустые строки

Индексированное поле

Ключевое поле (да)

Код_Бригады

счетчик

                     

Да (Совпадения не допускаются)

+

Фамилия

текстовый

 

20

             

Да

Нет

Да (Совпадения допускаются)

 

Имя

Тестовый

 

15

             

Да

Нет

Да (Совпадения допускаются)

 

Отчество

Текстовый

 

20

             

Да

Нет

Да (Совпадения допускаются)

 

Должность

Текстовый

 

10

             

Да

Нет

Да (Совпадения допускаются)

 

Категория_Рабочего

Текстовый

 

20

       

0

   

Да

Нет

Да (Совпадения допускаются)

 

Рабочий_Объект

Мастер подстановки

                 

Да

Нет

Да (Допускаются совпадения)

 

Название_Оборудования

Мастер подстановки

           

0

   

Да

Нет

Да (Допускаются совпадения)

 

Код_Заказчика

Мастер подстановки

           

0

   

Да

Нет

Да (Допускаются совпадения)

 

 

 

Физическая модель таблицы  Гранд_Строй

Имя поля

Тип данных

Описание

Размер поля

Формат поля

Маска ввода

Число десятичных знаков

Подпись

Значение по умолчанию

Условие на значение

Сообщение об ошибке

Обязательное поле

Пустые строки

Индексированное поле

Ключевое поле (да)

Номер_Договора

счетчик

                     

Да (Совпадения не допускаются)

+

Название_Договора

текстовый

 

35

             

Да

Нет

Да (Совпадения допускаются)

 

Физическая  модель таблицы Заказ_Объекта

Имя поля

Тип данных

Описание

Размер поля

Формат поля

Маска ввода

Число десятичных знаков

Подпись

Значение по умолчанию

Условие на значение

Сообщение об ошибке

Обязательное поле

Пустые строки

Индексированное поле

Ключевое поле (да)

Код_Заказа

счетчик

                     

Да (Совпадения не допускаются)

+

Город

текстовый

 

25

             

Да

Нет

Да (Совпадения допускаются)

 

Улица

Тестовый

 

20

             

Да

Нет

Да (Совпадения допускаются)

 

Название_Объета

Текстовый

 

35

             

Да

Нет

Да (Совпадения допускаются)

 

Заказчик

Мастер подстановки

           

0

   

Да

Нет

Да (Совпадения допускаются)

 

 

Физическая модель таблицы  Заказчики

Имя поля

Тип данных

Описание

Размер поля

Формат поля

Маска ввода

Число десятичных знаков

Подпись

Значение по умолчанию

Условие на значение

Сообщение об ошибке

Обязательное поле

Пустые строки

Индексированное поле

Ключевое поле (да)

Код_Заказчика

счетчик

                     

Да (Совпадения не допускаются)

+

Фирма

текстовый

 

25

             

Да

Нет

Да (Совпадения допускаются)

 

Фамилия_Заказчика

Тестовый

 

20

             

Да

Нет

Да (Совпадения допускаются)

 

Имя

Текстовый

 

10

             

Да

Нет

Да (Совпадения допускаются)

 

Отчество

Текстовый

 

15

       

0

   

Да

Нет

Да (Совпадения допускаются)

 

Улица_Фирмы

Текстовый

 

20

             

Да

Нет

Да (Совпадения допускаются)

 

Дом

Текстовый

 

5

             

Да

Нет

Да (Совпадения допускаются)

 

Квартира_Офис

Тестовый

 

5

             

Нет

Да

Да (Совпадения допускаются)

 

Контактный_Телефон

Текстовый

 

6

 

00\-00\-00

                 

Название_Договора

Мастер подстановки

           

0

   

Да

Нет

Да (Совпадения допускаются)

 

 

 

Физическая модель таблицы  Информация_О_Рабочих

Имя поля

Тип данных

Описание

Размер поля

Формат поля

Маска ввода

Число десятичных знаков

Подпись

Значение по умолчанию

Условие на значение

Сообщение об ошибке

Обязательное поле

Пустые строки

Индексированное поле

Ключевое поле (да)

Табельный_Номер

счетчик

                     

Да (Совпадения не допускаются)

+

Пол

текстовый

 

10

             

Да

Нет

Да (Совпадения допускаются)

 

Дата_Рождения

Дата/время

     

00.00.0000

         

Да

Нет

Да (Совпадения допускаются)

 

Улица

Текстовый

 

20

             

Да

Нет

Да (Совпадения допускаются)

 

Дом

Текстовый

 

5

       

0

   

Да

Нет

Да (Совпадения допускаются)

 

Квартира

Текстовый

 

5

             

Да

Нет

Да (Совпадения допускаются)

 

Телефон

Текстовый

 

6

 

00\-00\-00

         

Да

Нет

Да (Совпадения допускаются)

 

Название_Договора

Мастер подстановки

                 

Да

Нет

Да (Совпадения допускаются)

 

Бригада

Мастре подстановки

                 

Да

Нет

Да (Совпадения допускаются)

 

 

 

Физическая модель таблицы  Оборудование

Имя поля

Тип данных

Описание

Размер поля

Формат поля

Маска ввода

Число десятичных знаков

Подпись

Значение по умолчанию

Условие на значение

Сообщение об ошибке

Обязательное поле

Пустые строки

Индексированное поле

Ключевое поле (да)

Код_Оборудования

счетчик

                     

Да (Совпадения не допускаются)

+

Наименование_Оборудования

текстовый

 

35

             

Да

Нет

Да (Совпадения допускаются)

 

Категория_Оборудования

Текстовый

 

25

             

Да

Нет

Да (Совпадения допускаются)

 

 

 

Список подстановок используется в таблицах Бригады, Заказ_Объекта, Заказчики, Инфор_О_Рабочих. В таблице Бригады мастер подстановок используется в трех столбцах: Рабочий_Объект, Название_Оборудования и Код_Заказчика. Чтобы образовать связь между таблицами, то необходимо выбрать поле Мастер подстановок, затем: Объект «столбец подстановки» будет использовать значение из таблицы или запроса. Например, таблица Бригады связаны по полю Рабочий_Объект с таблицей Заказ_Объекта. Аналогично создавались и другие связи.

  1. Последовательность создания таблиц с помощью

Конструктора таблиц

В Окне БД выбираем пункт Таблицы→Создание таблиц в режиме конструктора.

Рисунок 2. Создание таблиц с помощью конструктора.

В поле Имя поля вводим названия полей. В поле Тип данных указываем какой тип данных будет иметь определенное поле.

В БД главная таблица создается первой, так как она независима ни от одной другой. В моей БД главной таблицей является Гранд_Строй. Через эту таблицу можно попасть в любую другую таблицу.

Таблица Гранд_Строй в режиме конструктора имеет следующий вид:

Имя поля

Тип данных

Номер_Договора

Счетчик

Название_Договора

Текстовый


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

Остальные таблицы создаются аналогично.

Заполнение таблиц данными. Например, если добавился новый работник то ФИО, должность категорию рабочего и название договора вносить надо в таблицу Бригады, а дополнительную информацию о нем в таблицу Ифнор_О_Рабочих и нового работника можно поставить на тот объект где работает бригада либо на новый если появился новый заказчик в таблицы Заказчики. Только после добавления нового заказчика можно поставить новых, либо старых рабочих на конкретный объект. А если поступило новое оборудование, то необходимо сначала занести данные в таблицу Оборудование и только потом выбирать эти оборудования для сотрудников.

 

  1. Установка связей между таблицами

В моей БД со всеми таблицами установлена связь «один-ко-многим». Связь между таблицами Заказчик и Гранд_Строй типа М:1, так как заказчики могут подписать один договор, поэтому в таблице Гранд_Строй введено ключевое поле Номер_Договора.

Связь между таблицами Заказчик и Заказ_объекта типа М:1, так как для одиного заказчик может выбрать строительство многих объектов. Поэтому в таблице Заказчики введено ключевое поле Код_Заказчика.

Связь между таблицами Заказчик и Бригады типа М:1, так как с одним заказчиком может работать много человек. Поэтому в таблице Заказчики введено ключевое поле Код_Заказчика.

Связь между таблицами Бригады и Заказ_объекта типа М:1, так как много человек из одной бригады может работать с одним объектом. Поэтому в таблице Заказ_Объекта введено ключевое поле Код_Заказа.

Связь между таблицами Бригады и Инфор_О_Рабочих типа М:1, так как один рабочий из бригады может иметь много дополнительной информации о себе. Поэтому в таблице Бригады введено ключевое поле Код_Бригады.

Связь между таблицами Ифнфор_О_Рабочих и Гранд_Строй типа М:1, так как для один рабочий одновременно может работать только с одним объектом и подписать один договор. Поэтому в таблице Гранд_Строй введено ключевое поле Номер_Договора.

Связь между таблицами Бригады и Оборудование типа М:1, так как много рабочих из бригады может работать с одним оборудованием. Т. е. выделяется конкретный объект и распределяется какой рабочий будет работать за конкретным оборудованием на данном объекте Поэтому в таблице Оборудование введено ключевое поле Код_Оборудования.

Создание связи:

При открытом окне БД на панели инструментов нажимаем на кнопку , которая называется Схема данных. Далее, выбираем необходимые таблицы. Например, свяжем две таблицы Бригады и Оборудования.

Рисунок 3. Создание связей.

 

Далее при нажатии левой  кнопкой мыши перетаскиваем из поля таблицы Оборудования Код_Оборудования в таблицу Бригады к полю Название_Оборудования, потом появится диалоговое окно и необходимо установить галочки как показано на рисунке:

Рисунок 4. Изменение связей.

Также необходимо зайти на вкладку Объедение и поставить переключатель:

Рисунок 5. Параметры объеденения.

Далее нажимаем Ок→Создать. И получится:

Рисунок 5. Создание связей между двумя таблицами.

Остальные связи создаются аналогично.




Проектирование АИС «Зоопарк радуга»