- •Введение
- •Анализ предметной области. Постановка задачи на разработку
- •Комплектация помещений
- •Перечень технических устройств
- •Рабочая программа дисциплины «мис»
- •Описание лабораторной работы
- •Пример решения задачи
- •Критерии оценки при выполнении лабораторной работы
- •Постановка задачи на разработку и требования к системе
- •Выбор средств разработки приложения
- •Язык программирования
- •Разработка программного приложения для выполнения лабораторных работ
- •Архитектура приложения
- •Разработка базы данных
- •Пользователи и алгоритмы их работы
- •Проверка результатов
- •Разработка пользовательского интерфейса
- •Реализация пользовательского интерфейса и тестирование приложения
- •Реализация интерфейса преподавателя
- •Реализация пользовательского интерфейса модуля «Алгоритм Косарайю»
- •Реализация пользовательского интерфейса модуля «Метод к-средних»
- •Тестирование разработанного приложения
- •Заключение
- •Список использованных источников
Разработка базы данных
После проектирования системы нужно приступить к разработке структуры базы данных. В рамках создания базы данных будут реализованы следующие основные таблицы:
- таблица «Пользователи» предназначена для хранения информации обо всех пользователях системы и включает такие поля, как логин, пароль, фамилия, имя, отчество, группа (в случае студентов) и роль пользователя в системе (администратор, преподаватель или студент).
- таблица «Алгоритм Косарайю» предназначена для сохранения сведений о ходе выполнения студентами соответствующей лабораторной работы.
- таблица «Метод К-средних», в которой хранится информация о процессе выполнения студентами задания, а также ссылка на файлы с итогами выполненных работ.
Используя эти данные, можно построить единую инфологическую модель данных, отражающую структуру и взаимосвязи элементов системы. (Рис. 3.2).
Рисунок 3.2 — Инфологическая модель данных
После того как структура базы данных была разработана, следует привести её в логичный вид, выполнив нормализацию сущностей. Для этого сущности нужно привести к первой нормальной форме (Рис 3.3), что подразумевает выполнение определённых требований. Во-первых, у каждой сущности должен быть свой уникальный ключевой атрибут, который всегда заполнен. Во-вторых, все атрибуты должны быть простыми и неделимыми. Также важно, чтобы значения в ячейках были одиночными (скалярными), а строки не повторялись, чтобы избежать дублирования информации. Ниже представлены сущности, уже соответствующие первой нормальной форме.
Рисунок 3.3 — Первая нормальная форма
Следующим шагом становится приведение сущностей ко второй нормальной форме. На данном этапе важно убедиться, что каждое поле напрямую и полностью зависит от ключа, особенно если ключ составной и состоит из нескольких частей. Другими словами, не должно быть таких полей, которые зависят лишь от какой-то одной части составного ключа. Также ключ должен оставаться уникальным, однозначно идентифицируя каждую запись. Это позволяет избежать избыточности и повысить логичность структуры базы данных. Ниже приведены сущности, удовлетворяющие критериям второй нормальной формы (Рис. 3.4).
Рисунок 3.4 — Вторая нормальная форма
Заключительным шагом процесса нормализации становится приведение базы данных к третьей нормальной форме. На этом этапе необходимо убедиться, что все неключевые поля напрямую связаны именно с первичным ключом таблицы, а не зависят косвенно друг от друга. Говоря проще, каждое неключевое поле должно описывать именно ту сущность, к которой оно относится, и не быть завязанным на другие неключевые поля. Это позволяет сделать структуру базы данных максимально прозрачной и удобной для последующего использования. В результате получаем модель данных, полностью соответствующую третьей нормальной форме (Рис 3.5).
Рисунок 3.5 — Третья нормальная форма
После того как нормализация завершена, переходим к шагу по созданию даталогической модели базы данных (Рис. 3.6). Даталогическая модель является графической схемой, которая наглядно показывает структуру и логику организации данных в системе, исходя из выбранной модели данных. Она помогает увидеть основные сущности и определить, как именно эти сущности связаны друг с другом. Для построения такой схемы используется метод «Сущность-связь». Разработанная модель должна полностью соответствовать третьей нормальной форме, поскольку выполнение этого условия гарантирует отсутствие избыточности и делает базу данных удобной и эффективной в использовании.
Рисунок 3.6 — Даталогическая модель данных
Следующим шагом в разработке базы данных становится создание её физической модели (таблицы 3.1–3.4). Под физической моделью понимается логическая структура базы, но уже адаптированная под конкретную систему управления базами данных (СУБД). Важно учесть все технические детали, необходимые для практической реализации: названия таблиц и полей, типы данных, настройки первичных и внешних ключей и другие элементы, от которых зависит корректная работа системы. Эта модель служит основой для последующего создания и настройки базы данных в выбранной СУБД.
Таблица 3.1. Физическая модель таблицы «пользователи»
№ |
Имя поля |
Подпись |
Тип данных |
Кол-во символов |
Обяз. поле |
Ключ |
1 |
Логин |
Login |
char |
50 |
да |
PK, FK |
2 |
Пароль |
Password |
char |
50 |
да |
нет |
3 |
Фамилия |
Surname |
char |
50 |
да |
нет |
4 |
Имя |
Name |
char |
50 |
да |
нет |
№ |
Имя поля |
Подпись |
Тип данных |
Кол-во символов |
Обяз. поле |
Ключ |
5 |
Отчество |
Patronymic |
char |
50 |
нет |
нет |
6 |
Группа |
Group |
char |
10 |
нет |
нет |
7 |
Роль |
Role |
int |
1 |
да |
нет |
Таблица 3.2. Физическая модель таблицы «Студент-работа»
№ |
Имя поля |
Подпись |
Тип данных |
Кол-во символов |
Обяз. поле |
Ключ |
1 |
ID |
ID |
serial |
16 |
да |
PK |
2 |
Логин |
Login |
char |
50 |
да |
FK |
3 |
ID работы |
ID_job |
int |
16 |
да |
FK |
Таблица 3.3. Физическая модель таблицы «Алгоритм Косарайю»
№ |
Имя поля |
Подпись |
Тип данных |
Кол-во символов |
Обяз. поле |
Ключ |
||
1 |
ID работы |
ID_job |
serial |
16 |
да |
PK |
||
2 |
|
Login |
char |
50 |
да |
FK |
||
3 |
Дата выполнения |
Date |
date |
|
да |
нет |
||
4 |
Время выполнения |
Time |
time |
|
да |
нет |
||
5 |
Сдано |
Pass |
int |
1 |
да |
нет |
||
6 |
Имя поля |
Подпись |
Тип данных |
Кол-во символов |
Обяз. поле |
Ключ |
||
7 |
Результат (компоненты) |
Result |
varchar |
255 |
да |
нет |
Таблица 3.4. Физическая модель таблицы «Метод К-средних»
№ |
Имя поля |
Подпись |
Тип данных |
Кол-во символов |
Обяз. поле |
Ключ |
||||
1 |
ID работы |
ID_job |
serial |
16 |
да |
PK |
||||
2 |
|
Login |
char |
50 |
да |
FK |
||||
3 |
|
Date |
date |
|
да |
нет |
||||
4 |
Время выполнения |
Time |
time |
|
да |
нет |
||||
5 |
Сдано |
Pass |
int |
1 |
да |
нет |
||||
6 |
Выбранные центроиды |
Centroids |
varchar |
50 |
да |
нет |
||||
7 |
|
Cluster_result |
varchar |
255 |
да |
нет |
||||
В результате проделанной работы была разработана структура базы данных, которая станет основой для функционирования системы выполнения лабораторных работ.
