Разработка базы данных 'Оборудование компьютерных классов учебного заведения'
Введение
База данных - это организованная
структура, предназначенная для хранения информации.
С понятием базы данных тесно связано
понятие системы управления базой данных. Это комплекс программных средств,
предназначенных для создания структуры новой базы, наполнение её содержимым,
редактирования содержимого и визуализации информации. Под визуализацией
информации базы понимается отбор отображенных данных в соответствии с заданным
критерием, их упорядочивание, оформление и последующая выдача на устройство вывода
или передачи по каналом связи.
Задача состоит в создании базы данных и
приложения по учету оборудования компьютерных классов. Это необходимо для
автоматизации работы информационно-технической службы учебного заведения по
учету оборудования.
Проблема учета оборудования актуальна,
поскольку сейчас в большинстве учреждений нет единых хранилищ данной
информации, и сведения хранятся на бумажных носителях, либо в уже
сформированных отчетных материалах. В связи с этим, при интенсивной работе по
замене и починке оборудования, а так же периодического перемещения по
аудиториям, очень сложно отследить его местонахождение, что затрудняет поиск
необходимого оборудования, приводит к долгим описям и затягивает формирование
различных отчетностей.
База данных позволит хранить в себе
актуальную информацию обо всем компьютерном оборудовании и о том, где оно
используется; предоставлять необходимые данные в любой момент времени и
выводить отчеты. Автоматизация учета позволит решить все описанные выше
проблемы, а так же предоставит ряд преимуществ при работе с учетом
оборудования.
1. Постановка задачи
1.1 Задание
В курсовом проекте требуется разработать
базу данных «Оборудование компьютерных классов учебного заведения»:
· Изучить выбранную
предметную область;
· Разработать
инфологическую модель базы данных;
· Реализовать базу данных в
СУБД MySQL и приложение к ней в среде Delphi;
· Составить пояснительную
записку к курсовому проекту.
1.2 Назначение базы данных
База данных «Оборудование компьютерных
классов учебного заведения» предназначена для автоматизации работы
информационно-технической службы учебного заведения в области учета
оборудования.
1.3 Выполняемые функции
1. Хранение информации об аудиториях,
а также какое оборудование в них установлено;
. Хранение информации о рабочих
местах и об их наполнении;
. Хранение информации об
оборудовании, его исправности, а так же где оно используется;
. Хранение информации о ПК и
комплектующих;
. Формирование отчетов.
1.4 Категории пользователей
1. Администраторы: сотрудник информационно-технической
службы, ответственный за учет оборудования, а так же другие сотрудники службы,
которые производят замену и починку оборудования.
Предоставляется полный доступ к просмотру
и редактированию всех данных в базе, а так же возможность формирования отчетов;
. Гости: остальные сотрудники
информационно-технической службы и руководящий состав.
Возможность просмотра информации об
оснащении аудиторий оборудованием и вывод отчетов.
1.5 Причины выбора данной СУБД и языка программирования
Для проектирования базы данных была
выбрана СУБД MySQL исходя из следующих особенностей:
. Позволяет работать с удаленной
базой данных, что дает возможность осуществлять доступ к одной базе с разных
компьютеров в учебном заведении;
. Поддерживает одновременную работу
сразу нескольких пользователей с базой данных;
. Предоставляет высокий уровень
защиты данных;
. Обладает невысокими требованиями
к аппаратной части серверов;
. Является бесплатной СУБД на
рынке;
. Требует минимальной начальной
настройки и дальнейшего администрирования;
. Является развивающейся СУБД
(частые релизы, усовершенствование базы, исправление ошибок).
Для работы с базой данных, построенной на
СУБД MySQL, была выбрана среда разработки приложений Delphi, так как обладает
следующими качествами:
. Является языком высокого уровня и
позволяет быстро и эффективно создавать приложения в ОС Windows, которая
является наиболее распространенной операционной системой, и используется на
большинстве компьютеров в учебном заведении.
. Позволяет разрабатывать приложения
в архитектуре клиент-сервер и содержит целый набор средств для работы с СУБД
MySQL;
. Приложения обладают высокой
производительностью и низкими требованиями к ресурсам ПК.
2. Проектирование базы данных
.1 Концептуальное проектирование
Цель концептуального (инфологического)
моделирования - обеспечение наиболее естественных для человека способов сбора и
представления той информации, которую предполагается хранить в создаваемой базе
данных. Поэтому инфологическую модель данных пытаются строить по аналогии с
естественным языком, который не может быть использован в чистом виде из-за
сложности компьютерной обработки текстов и неоднозначности любого естественного
языка. Основными конструктивными элементами концептуальных моделей являются
сущности, связи между ними и их свойства (атрибуты).
Сущность - любой различимый, информацию о
котором необходимо хранить в базе данных. Сущностями могут быть люди, места,
самолеты, рейсы, вкус, цвет и т.д. Необходимо различать такие понятия, как тип
сущности и экземпляр сущности.
Атрибут - поименованная характеристика
сущности. Его наименование должно быть уникальным для конкретного типа
сущности, но может быть одинаковым для различного типа сущностей. Атрибуты
используются для определения того, какая информация должна быть собрана о
сущности.
.1.1 Сущности
Сущность «Аудитория»:
Сущность «Аудитория» необходима для
хранения и просмотра данных о аудиториях, которые находятся в учебном
заведении.
Содержит поля: Ключ, Номер аудитории,
Ответственный.
Сущность «Оснащение аудитории»:
Сущность «Оснащение аудитории» необходима
для хранения и просмотра данных о том, какое оборудование в какой аудитории
располагается.
Содержит поля: Ключ, Ключ аудитории, Ключ
оборудования / Ключ рабочего места, Тип.
Сущность «Рабочее место»:
Сущность «Рабочее место» необходима для
хранения и просмотра данных о рабочих местах, организованных в аудиториях.
Содержит поля: Ключ, Название.
Сущность «Оснащение
рабочего места»:
Сущность «Оснащение рабочего места»
необходима для хранения и просмотра данных о том, какое оборудование входит в
состав рабочего места.
Содержит поля: Ключ, Ключ рабочего места,
Ключ оборудования.
Сущность «Тип
оборудования»:
Сущность «Тип оборудования» необходима для
хранения и просмотра данных о типах компьютерного оборудования.
Содержит поля: Ключ, Название.
Сущность «Оборудование»:
Сущность «Оборудование» необходима для
хранения и просмотра данных об имеющемся в учебном заведении оборудовании.
Содержит поля: Ключ, Инвентарный номер,
Серийный номер, Ключ типа оборудования, Ключ характеристик, Использовано.
Сущность
«Характеристики»:
Сущность «Характеристики» необходима для
хранения и просмотра данных о названии оборудования и его характеристиках.
Содержит поля: Ключ, Ключ типа
оборудования, Модель, Перечень характеристик.
Сущность «Тип
комплектующих»:
Сущность «Тип комплектующих» необходима
для хранения и просмотра перечня типов комплектующих для ПК.
Содержит поля: Ключ, Название, Совмещение.
Сущность «Комплектующие»:
Сущность «Комплектующие» необходима для
хранения и просмотра данных о комплектующих, которые установлены в ПК.
Содержит поля: Ключ, Ключ оборудования,
Ключ типа комплектующих, Модель.
2.1.2 Взаимосвязи сущностей
Взаимосвязь сущностей отображена в таблице
1.1.
Таблица 1.1. Взаимосвязь сущностей
Сущности
|
Тип связи
|
Пояснение
|
Аудитория
Оснащение аудитории
|
1:∞
|
Рабочее место
Оснащение рабочего места
|
1:∞
|
В состав одного
рабочего места может входить несколько различных видов оборудования. Но одно
и то же оборудование не может одновременно находиться в составе разных
рабочих мест.
|
Тип
оборудования Характеристики
|
1:∞
|
Тип
оборудования может включать в себя различное количество оборудования разных
моделей и характеристик. Но характеристики могут точно описать оборудование
только одного типа.
|
Характеристики
Оборудование
|
1:∞
|
Может быть
несколько экземпляров оборудования с одними и теми же характеристиками. Но
каждый экземпляр оборудования может охарактеризовать только один набор
характеристик.
|
Оборудование
Комплектующие
|
1:∞
|
Оборудование,
такое как системный блок, содержит определенный набор комплектующих. Но один
экземпляр комплектующих может быть установлен только в один системный блок.
|
Тип
оборудования Оборудование
|
1:∞
|
Тип
оборудования может быть одинаковым у нескольких экземпляров оборудования. Но
каждый экземпляр оборудования может быть только одного типа.
|
Тип
комплектующих Комплектующие
|
1:∞
|
Тип может быть
одинаковым для нескольких комплектующих. Но каждый экземпляр комплектующих
может быть только одного типа.
|
Оборудование
Оснащение аудитории
|
1:1
|
Одно
оборудование может располагаться только в одной аудитории.
|
Оборудование
Оснащение рабочего места
|
1:1
|
Одно
оборудование может входить в состав только одного рабочего места.
|
Рабочее место
Оснащение аудитории
|
1:1
|
Одно рабочее
место может располагаться только в одной аудитории.
|
2.1.3 Концептуальная инфологическая модель
Аудитория
|
Код аудитории
|
Номер
|
Ответственный
|
Оснащение
аудитории
|
Код оснащения
|
Аудитория
|
Оборудование/
рабочее место
|
Тип
|
Рабочее
место
|
Код
|
Название
|
Оснащение
рабочего места
|
Код
|
Рабочее место
|
Оборудование
|
2.2 Даталогическое проектирование
Даталогическое проектирование -
организация данных, выделенных на предыдущем этапе проектирования в форму,
принятую в выбранной СУБД.
Содержанием даталогического проектирования
является определение модели данных. Модель данных - это набор соглашений по
способам представления сущностей, связей, агрегатов, системы классификации.
Кроме этого каждая модель данных определяет особенности выполнения основных
операций над данными:
·
добавление,
·
удаление,
·
модификация,
·
выборка.
Особое внимание при построении модели
уделяют целостности и отсутствию избыточности данных. Избыточность - это
многократное повторение одних и тех же данных.
.2.1 Отношения и атрибуты
Сущность «Аудитория»
Имя поля
|
Тип данных
|
ID
|
Int
|
Number
|
Varchar
|
Otver
|
Varchar
|
Сущность «Оснащение
аудитории»
Имя поляТип
данных
|
|
ID
|
Int
|
Aud_id
|
Int
|
Obo_id
|
Int
|
Tip
|
Tinyint
|
Сущность «Рабочее место»
|
ID
|
Int
|
name
|
Varchar
|
Сущность «Оснащение
рабочего места»
Имя поляТип
данных
|
|
ID
|
Int
|
Arm_id
|
Int
|
Obo_id
|
Int
|
Сущность «Тип
оборудования»
Имя поляТип
данных
|
|
ID
|
Int
|
Tip
|
Varchar
|
Сущность «Оборудование»
Имя поляТип
данных
|
|
ID
|
Int
|
Invent
|
Varchar
|
Serini
|
Varchar
|
Tip_id
|
Int
|
Hrk_id
|
Int
|
Isp
|
Tinyint
|
Сущность «Характеристики»
Имя поляТип данных
|
|
ID
|
Int
|
Tip_id
|
Int
|
Name
|
Varchar
|
Haracter
|
Varchar
|
Сущность «Тип
комплектующих»
Имя поляТип
данных
|
|
ID
|
Int
|
Name
|
Varchar
|
Multi
|
Tinyint
|
Сущность «Комплектующие»
Имя поляТип
данных
|
|
ID
|
Int
|
Obo_id
|
Int
|
Tik_id
|
Int
|
Model
|
Varchar
|
.2.2 Ключевые поля, индексы
Перечень ключевых полей и индексов
отображен в таблице 1.2.
Таблица 1.2. Ключевые поля и индексы
Сущность
|
Имя поля
|
Значение
|
Аудитория
|
ID
|
Первичный ключ,
автоинкремент
|
Оснащение
аудитории
|
ID
|
Оснащение
аудитории
|
Aud_id
|
Внешний ключ
для связи с таблицей «Аудитория»
|
Оснащение
аудитории
|
Obo_id
|
Внешний ключ
для связи с таблицами «Оборудование», «Рабочее место»
|
Рабочее место
|
ID
|
Первичный ключ,
автоинкремент
|
Оснащение
рабочего места
|
ID
|
Первичный ключ,
автоинкремен.
|
Оснащение
рабочего места
|
Arm_id
|
Внешний ключ
для связи с таблицей «Рабочее место»
|
Оснащение
рабочего места
|
Obo_id
|
Внешний ключ
для связи с таблицей «Оборудование»
|
Тип
оборудования
|
ID
|
Первичный ключ,
автоинкремент
|
Оборудование
|
ID
|
Первичный ключ,
автоинкремент
|
Оборудование
|
Tip_id
|
Внешний ключ
для связи с таблицей «Тип оборудования»
|
Оборудование
|
Hrk_id
|
Внешний ключ
для связи с таблицей «Характеристики»
|
Характеристики
|
ID
|
Первичный ключ,
автоинкремент
|
Характеристики
|
Tip_id
|
Внешний ключ
для связи с таблицей «Тип оборудования»
|
Тип
комплектующих
|
ID
|
Первичный ключ,
автоинкремент
|
Комплектующие
|
ID
|
Первичный ключ,
автоинкремент
|
Комплектующие
|
Obo_id
|
Внешний ключ для
связи с таблицей «Оборудование»
|
Комплектующие
|
Tik_id
|
Внешний ключ
для связи с таблицей «Тип комплектующих»
|
2.2.3 Схема данных
Аудитория
|
ID
|
Number
|
Otver
|
Оснащение
аудитории
|
ID
|
Aud_id
|
Obo_id
|
Tip
|
Рабочее
место
|
ID
|
name
|
Оснащение
рабочего места
|
ID
|
Arm_id
|
Obo_id
|
3. Особенности реализации
.1 Учет специфики предметной области
База данных предназначена для учета,
хранения и обработки информации об оборудовании в компьютерных аудиториях
учебного заведения.
В каждой аудитории могут располагаться как
рабочие места, так и отдельное оборудование (принтер, сканер, проектор,
интерактивная доска и др.). Сканер и принтер так же могут входить в состав
рабочего места.
В процессе эксплуатации, оборудование и
комплектующие системных блоков могут ломаться и быть заменены на другие. Так
же, компьютерное оборудование может быть перемещено из одной аудитории в
другую, или отправлено на склад. Периодически необходима замена расходных
материалов для принтеров, копиров и факсов.
Сотрудники информационно-технической
службы должны в любой момент времени обладать информацией о местонахождении
компьютерного оборудования и комплектующих. Это необходимо для своевременной и
качественной замены устаревшего / сломанного оборудования, а так же для ведения
учета и составления отчетов.
Руководители могут оценить общее состояние
технического обеспечения учебного процесса, просмотрев отчеты, и принимать
различные решения (распоряжение на замену устаревшего оборудования или
увеличение общего количества компьютерного оборудования).
База данных отражает все аспекты специфики
выбранной предметной области.
Таблица 1.3. Ограничения бизнес правил
Сущность
|
Имя поля
|
Тип
|
Ограничение
|
Аудитория
|
number
|
varchar
|
Length=4
|
Аудитория
|
otvet
|
varchar
|
Length=25
|
Рабочее место
|
name
|
varchar
|
Length=15
|
Тип
оборудования
|
tip
|
varchar
|
Length=40
|
Оборудование
|
invent
|
varchar
|
Length=15
|
Оборудование
|
htk_id
|
int
|
Allow Null
|
Оборудование
|
name
|
varchar
|
Length=20
|
Характеристики
|
name
|
varchar
|
Length=40
|
Характеристики
|
haracter
|
varchar
|
Length=40
|
Тип
комплектующих
|
name
|
varchar
|
Length=25
|
Комплектующие
|
model
|
varchar
|
Length=40
|
4. Пользовательский интерфейс
.1 Описание работы с базой данных
Просмотр записей в базе данных, а так же
вывод отчетов осуществляется через главную форму программы.
Главная форма программы состоит из
вкладок, на которых располагаются таблицы с данными, а так же элементы
управления записями (добавление, изменение, копирование, удаление, поиск,
выборка, обновление, переход по записям и автозаполнение). Из окна главной
формы так же возможно выводить форму редактирования записей, отчеты, настройки
и сведения о программе.
Форма редактирования записей позволяет
добавлять и изменять записи в базе данных. Списки со значениями из других
таблиц на форме автоматически подстраиваются под условия выборки для удобства и
скорости работы с базой. При работе осуществляется контроль вносимых данных и
защита от некорректного ввода.
Отчеты формируются автоматически на основе
записей в базе данных. Сформированный отчет можно распечатать, а так же
сохранить на жесткий диск или на флешку.
Настройки предоставляют возможность менять
основной цвет окна программы и администраторам базы изменять пароли доступа.
Окно сведений о программе выводит
следующие данные: основную задачу приложения, полное название продукта, текущую
версию программы, а так же информацию о заказчике.
Выход из приложения осуществляется выбором
пункта меню «Выход», либо нажатием на кнопку «Закрыть» в верхнем правом углу
главной формы программы.
4.2 Запросы
Список запросов базы данных «Оборудование
компьютерных классов учебного заведения»:
. Выборка записей;
. Добавление записи;
. Изменение записи;
. Удаление записи.
Запросы на выборку
записей:
Оснащение выбранной аудитории:
SELECT * FROM bd_osn
WHERE aud_id=bd_aud.id;
Характеристики для
выбранного оборудования:
SELECT * FROM bd_hrk
WHERE id=bd_obo.hrk_id;
Запросы на добавление
записи:
Добавление аудитории:
INSERT INTO `bd_aud`
(number, otvet) VALUES («'+Edit_aud1.text+'», «'+Edit_aud2.text+'»);
Добавление данных в
таблицу «Оснащение рабочего места»:
INSERT INTO `bd_aos`
(arm_id, obo_id) VALUES ('+ListBox_arm. Items [ComboBox_armaos. ItemIndex] +', '+Form2.
SimpleDataSet17ID. AsString+');
Запросы на изменение записи:
Изменение типа
оборудования:
UPDATE `bd_tip` SET tip=
«'+Edit_tip1.text+'» WHERE id='+inttostr(id);
Перенос оборудования на
склад:
UPDATE `bd_obo` set isp=0
WHERE id=bd_osn.obo_id;
Запросы на удаление
записи:
Удаление комплектующих:
DELETE FROM `bd_kom`
WHERE id=bd_obo.kom_id;
Перенос оборудования на
склад:
DELETE FROM `bd_aud`
where id=bd_aud.id;
4.3 Формы
Главная форма
Работа с базой данных начинается с вкладки
«Авторизация» главной формы (рис. 1).
Рисунок 1. Вкладка «Авторизация»
После входа в программу мы попадаем на
вкладку «Просмотр» (рис. 2).
Рисунок 2. Вкладка «Просмотр» (слева - вид
Гостя, справа - вид Администратора)
На вкладке «Просмотр» отображается вся
необходимая информация об оснащении компьютерных аудиторий и краткие сведения
об оборудовании, которое в них установлено.
Вкладка «Редактирование» включает в себя
еще 4 вкладки, на которых располагаются таблицы для редактирования:
. «Оснащение аудиторий» (рис. 3);
. «Рабочие места» (рис. 4);
. «Оборудование» (рис. 5);
. «Комплектующие» (рис. 6);
Рисунок 3. Вкладка «Оснащение аудиторий»
Рисунок 4. Вкладка «Рабочие места»
Рисунок 5. Вкладка «Оборудование»
Рисунок 6. Вкладка «Комплектующие»
На вкладках редактирования располагаются
таблицы с данными и элементы управления записями базы данных:
. Выборка данных.
. Добавление записи ();
. Изменение записи ();
. Создание копии ();
. Удаление записи ();
. Поиск соответствующей записи ();
При изменении значения переключателя на
«>», в дочерней таблице будет произведена выборка записей, соответствующих
выбранной записи в главной таблице. К примеру, при выборе 1 го переключателя на
вкладе «Комплектующие», в таблице «Комплектующие» будут отображены только те
экземпляры, которые установлены в системном блоке, указанном в таблице «ПК»
(рис. 7).
Рисунок 7. Выборка данных в таблице
«Комплектующие»
При добавлении (), изменении() или создании копии() записи открывается
Форма редактирования записей.
После нажатия на кнопку «Добавить запись»
(), открывается форма
(рис. 8) и исходные данные в ней автоматически подстраиваются под условия
выборки, если она задана.
Рисунок 8. Добавление записи
При нажатии на кнопку «Изменить запись» (), открывается форма
редактирования с данными выбранной записи (рис. 9).
Рисунок 9. Изменение записи
«Создание копии» позволяет открывать форму
для добавления записи с уже заполненными исходными данными на основе выбранной
записи в таблице, что значительно ускоряет работу при добавлении однообразных
записей в базу данных. После нажатия на кнопку «Удаление записи» и
подтверждения удаления выбранная запись безвозвратно удаляется из базы данных.
Так же вместе с выбранной записью могут удаляться или быть изменены связанные с
ней данные в других таблицах.
Рисунок 10. Диалоговое окно подтверждение
удаления записи
Как Администраторам, так и Гостям
предоставляется доступ к «Настройкам программы» (рис. 11). Гости имеют
возможность только сменить основной цвет программы для текущей сессии.
Администраторы могут сохранять настройки цвета, а так же изменять пароль от
своей учетной записи.
Рисунок 11. Настройки программы
Так же все пользователи могут получить
справочные сведения о программе, выбрав пункт меню «О программе» (рис. 12).
Рисунок 12. О программе
4.4 Отчеты
Все пользователи базы данных имеют доступ
к отчетам.
Список отчетов базы данных:
. Оснащение аудиторий;
. Перечень оборудования;
. ПК и комплектующие;
В отчете «Оснащение аудиторий» выводится
сведения об установленном в аудиториях оборудовании (рис. 13).
Рисунок 13. Отчет «Оснащение аудиторий»
Рисунок 14. Отчет «Перечень оборудования»
В отчете «ПК и комплектующие» выводится
данные обо всех компьютерах и их наполнении (рис. 15).
Рисунок 15. Отчет «ПК и комплектующие»
Заключение
При работе над курсовым проектом было
проведено тщательное исследование предметной области, построены инфологическая
и даталогическая модели, выявлены сущности, связи, бизнес-процессы и алгоритмы.
Данная база представляет собой приложение
для учета оборудования в учебных заведениях и может служить полезным средством
в работе информационно-технической службы. Она включает в себя набор
стандартных функций для работы с данными, а так же ряд дополнительных функций,
значительно ускоряющих работу с базой данных (поиск, выборка, создание копий и
др.). Так же присутствует возможность вывода отчетов по основным пунктам.
Но текущая версия базы данных так же имеет
и ряд недостатков:
. База данных располагается на
едином сервере, доступ к которому открыт всем, у кого есть исполняемый файл
приложения. Нет возможности размещения базы на внутренних серверах учебного
заведения для индивидуальной и защищенной работы.
. Отсутствует учет ряда данных,
таких как программное обеспечение ПК, Mac-адреса сетевых карт, расходное
оборудование, тип сети в аудиториях и др.
. При неактивности приложения в
течение некоторого времени, сеанс с базой данных прерывается, происходит сбой в
работе и необходимо запускать приложение заново.
. Присутствует ряд сбоев в выборке
данных при работе.
. Неполный контроль соответствия и
адекватности вводимых значений.
Пользовательский интерфейс приложения базы
данных является быстродейственным и легким в освоении.
На данный момент база данных отвечает всем
требованиям, предоставляемым к учебным базам данных.
Список литературы
автоматизация учебный оборудование база
1. А. Хоманенко, В. Гофман, Е. Мещеряков, В. Никифоров.
«Delphi 7». 2006 год.
2. А. Хоманенко, В. Гофман. «Работа с базами данных в
Delphi» 3-е издание. 2005 год.
. М. Фленов. «Программирование в Delphi глазами
хакера» 2-е издание. 2007 год.
. А. Шкрыль. «Разработка клиент-серверных приложений в
Delphi». 2006 год.
. Д. Осипов. «Delphi XE2». 2012 год.
. М. Кузнецов, И. Симдянов. «MySQL 5». 2010 год.
. Форум программистов «Vingrad».
http://forum.vingrad.ru
. Форум «SQL.ru». http://www.sql.ru
. Форум по программированию «Delphi Sources».
http://www.delphisources.ru/forum