РЕФЕРАТ
Введение 3
1 Основные понятия и определения 4
2 Архитектура разрабатываемого приложения 6
2.1 Обзор архитектурных решений графических интерфейсов 6
2.1.1 Архитектура Model-View-Controller 6
2.1.2 Архитектура Model-View-Presenter 7
2.1.3 Архитектура Model-View-ViewModel 8
2.2 Выбор архитектуры для разрабатываемого приложения 9
2.3 Структура БД 10
2.4 Структура и элементы графического интерфейса 11
2.5 Запросы к БД 12
3 Программная реализация и эксперименты 14
3.1 Программная реализация БД 14
3.2 Программная реализация графического интерфейса 14
3.3 Связь с внешней программой построения расписания 15
Заключение 17
Список использованной литературы 18
Приложение А 19
Приложение Б 35
Составление расписания является одним из важных бизнес-процессов в любом учебном заведении. Качество расписания напрямую влияет на эффективность преподавания и на психологический комфорт как студентов, так и преподавателей. Поэтому создание качественного расписания является задачей актуальной.
На сегодняшний день процесс составления расписания в Томском государственном университете представляет собой композицию автоматического и ручного труда. Автоматически контролируется множество доступных аудиторий и временных отрезков. Диспетчер вручную расставляет занятия по таблице время/аудитория. При этом диспетчеру приходится держать в уме возможные противоречия человеческого (нельзя ставить занятия одному и тому же преподавателю одновременно) и географического (аудитории могут находиться в разных корпусах и нужно время для перемещения из одной аудитории в другую) толка, пожелания преподавателей и негласное требование — минимальное количество «окон» для студентов. Ввиду большого количества факультетов и учебных программ в университете такой процесс весьма трудоёмок и утомителен для диспетчера и может привести к возникновению «аномалий» в расписании (например, когда лекция по предмету в неделе стоит после практических занятий по этому предмету и т.п.).
Поэтому на кафедре информационных технологий в исследовании дискретных структур предпринята попытка создать систему автоматизации расстановки занятий по таблице расписания, которая бы учитывала все требования к расписанию и избегала бы аномалии и коллизии в нём. Было принято решение разбить всю систему на две части: часть расчёта расписания по формализованным входным данным и интерфейсную часть. Созданию интерфейсной части и посвящена данная работа.
Принято решение строить интерфейс в виде информационной системы: база данных плюс графический интерфейс к ней. Разрабатываемая информационная система должна взаимодействовать как с диспетчером, так и с подсистемой расчёта расписания по формализованным данным. То есть, одна из задач разрабатываемой информационной системы — формализовать данные, вводимые диспетчером, для подсистемы расчёта расписания и обратно преобразовать формальное расписания в термины исходных данных.
1 Основные понятия и определения
Базой данных (БД) будем называть хранилище для некоторого набора файлов данных, занесенных в компьютер.
Пользователи имеют возможность выполнять (или передавать системе запросы на выполнение) разичные операции над файлами, например:
• добавление новых пустых файлов в базу данных;
• вставка новых данных в существующие файлы;
• получение данных из существующих файлов;
• удаление данных из существующих файлов;
• изменение данных в существующих файлах;
• удаление существующих файлов из базы данных .
Для работы с БД введем понятия нормальных форм (НФ). Всего их 6, однако для данной работы будет достаточно первых трех.
Первая нормальная форма. Переменная отношения находится в 1НФ тогда и только тогда, когда в любом допустимом значении этой переменной отношения каждая ее строка содержит только одно значение для каждого из атрибутов.
Вторая нормальная форма (в этом определении предполагается, что существует только один потенциальный ключ, который и есть первичный ключ отношения). Переменная отношения находится во второй нормальной форме тогда и только тогда, когда она находится в первой нормальной форме, и каждый неключевой атрибут неприводимо зависит от ее первичного ключа.
Третья нормальная форма (в этом определении предполагается, что существует только один потенциальный ключ, который и есть первичный ключ отношения). Переменная отношения находится в третьей нормальной форме тогда и только тогда, когда она находится во второй нормальной форме и ни один неключевой атрибут не является транзитивно зависимым от ее первичного ключа.
Информационной системой (ИС) будем называть совокупность содержащейся в БД информации и информационных технологий и технических средств, обеспечивающих ее обработку.
...
В результате данной работы были изучены язык SQL, принципы работы с базами данных, JDBC (Java Database Connectivity). Было проведено согласование данных, которые нужно хранить в БД, согласование форматов передачи данных между интерфейсом и модулем расчёта расписания. Была разработана структура базы данных, сама БД была заполнена данными для 3-го курса РФФ ТГУ. К БД были разработаны запросы для манипулирования данными, хранящимися внутри нее. Также была разработана архитектура графического интерфейса пользователя, затем был реализован сам интерфейс.
Были проведены эксперименты, в ходе которых было построено расписание для 3 - го курса РФФ ТГУ. Данное расписание хранится в БД, пользователь может с ним взаимодействовать через интерфейс.
Результаты данной работы частично были доложены на всероссийской конференции студенческих научно-исследовательских инкубаторов и опубликованы . Часть результатов была представлена на международную конференцию ICAM 2020.
1. К. Дж. Дейт Введение в системы баз данных. М.: Издательский дом "Вильяме", 2005. — 1328 с.
2. Рыбальченко М. В. Архитектура информационных систем: учебное пособие для вузов. Москва: Юрайт, 2018. — 91 с.
3. Адам Фримен. ASP.NET MVC 4 с примерами на C# 5.0 для профессионалов, 4-е издание = Pro ASP.NET MVC 4, 4th edition. — М.: «Вильямс», 2013. — 688 с.
4. Mike Potel. MVP: Model-View-Presenter The Taligent Programming Model for C++ and
Java" [Электронный ресурс]: Taligent Inc. — URL:
http://www.wildcrest.com/Potel/Portfolio/mvp.pdf (дата обращения: 17.12.2020)
5. Josh Smith. WPF Apps with the Model-View-ViewModel Design Pattern [Электронный
ресурс]: MSDN Magazine. — URL: https://docs.microsoft.com/en-us/archive/msdn-
magazine/2009/february/patterns-wpf-apps-with-the-model-view-viewmodel-design-pattern (дата обращения: 22.02.2020)
6. Климашевская А.О. Автоматическое составление расписания: интерфейс пользователя // Труды Шестнадцатой Всероссийской конференции студенческих научно - исследовательских инкубаторов / под ред. В.В. Демина. 2019. — С. 170-172.