Рисунок 9 - Интерфейс работы Администратора
На рисунке 10 изображена форма добавления пользователя в систему, где Администратор может присвоить ему роль, выбрав ее из выпадающего списка. Также можно выбрать Группу (рисунок 11) и Руководителя (рисунок 12), если для создаваемой записи выбран доступ «Студент».
Рисунок 10 - Форма добавления пользователя
Рисунок 11 - Форма добавления пользователя (выбор группы)
Рисунок 12 - Форма добавления пользователя (выбор Преподавателя)
На рисунке 13 показано главное окно работы Преподавателя. Окно содержит поля с выпадающими списками «Группа» и «ФИО» студента. А также кнопки «Загрузить отчеты», «Справка» и «Выход» При нажатии на кнопку «Справка», откроется окно, содержащее некоторые пояснения к функциональным возможностям.
Рисунок 13 - Главное окно работы Преподавателя
При нажатии на кнопку «Загрузить отчеты» откроется форма выбора нужного отчета (рисунок 14), содержащая кнопки «Результат теппинг-теста», «Отчет с рекомендациями для студента» и «Назад».
Рисунок 14 - Форма выбора отчета
Нажав на кнопки «Результат теппинг-теста», «Отчет с рекомендациями для студента» можно посмотреть соответствующие отчеты.
Рисунок 15 - Главный интерфейс работы Студента
На рисунке 15 отображен главный интерфейс работы Студента. Данная форма содержит небольшое текстовое пояснение, а также кнопки «Теппинг тест», «Посмотреть результаты», «Инструкция» и «Выход».
При нажатии на кнопку «Теппинг тест» откроется окно тестирования (рисунок 16).
В окне содержатся кнопки «Начать тестирование», «Завершить» и «Назад». Также есть два таймера и два элемента Button для выбора руки, которой будет производиться тестирование.
Если на главном окне работы Студента (рисунок 15) нажать на кнопку «Посмотреть результаты», то система выведет форму (рисунок 17) с заголовком «Результаты тестирования», где можно ознакомиться с результатами, содержащимися в полях, а также посмотреть на графики для обеих рук и сводный график.
Рисунок 16 - Окно тестирования
Рисунок 17- Окно просмотра результатов
Также можно войти в систему (рисунок 11) как Эксперт. Тогда после авторизации, откроется форма работы Эксперта. На рисунке 18 изображён интерфейс работы Эксперта со справочниками, а именно добавление, редактирование или удаление информации в таблицах БД «Справочник результатов» и «Справочник рекомендаций». На данном интерфейсе расположены два поля ввода под названием «Описание» и «Рекомендация», выпадающий список возможных вариантов результатов, а также кнопки «Применить» и «Выход».
Рисунок 18 - Интерфейс работы Эксперта
3.2.8 Описание использованных методов и классов
Класс QSqlQuery обеспечивает интерфейс для выполнения SQL запросов и навигации по результирующей выборке. Для выполнения SQL запросов, просто создают объект QSqlQuery.
В дополнение к QSqlQuery были использованы два высокоуровневых класса для работы с базами данных. Это классы QSqlQueryModel, QSqlTableMode.
Эти классы происходят от QAbstractTableModel (который происходит от QAbstractItemModel) и могут существенно облегчить представление данных из базы данных в элементно-ориентированных классах таких, как QListView и QTableView. Это подробно объясняется в разделе Отображение данных в таблице-представлении. Конструктор QSqlQuery принимает необязательный аргумент QSqlDatabase, который уточняет, какое соединение с базой данных используется. Если его не указать, то используется соединение по умолчанию.
Если возникает ошибка, exec() возвращает false. Доступ к ошибке можно получить с помощью QSqlQuery::lastError(). QSqlQuery предоставляет единовременный доступ к результирующей выборке одного запроса. После вызова exec(), внутренний указатель QSqlQuery указывает на позицию перед первой записью. Если вызвать метод QSqlQuery::next() один раз, то он переместит указатель к первой записи. После этого необходимо повторять вызов next(), чтобы получать доступ к другим записям, до тех пор пока он не вернет false. Вот типичный цикл, перебирающий все записи по порядку.
Класс QMainWindow предоставляет главное окно приложения. Главное окно предоставляет структуру для создания пользовательского интерфейса приложения. Qt имеет класс QMainWindow и связанные с ним классы для управления главным окном. QMainWindow имеет собственный компоновщик, в который можно добавлять QToolBar'ы, QDockWidget'ы, QMenuBar, и QStatusBar. Компоновщик имеет центральную область, которая может быть занята любым виджетом.
Класс QMessageBox создаёт окно сообщения для вывода информации пользователю.
Класс QInputDialog обеспечивает простой удобный диалог для ввода информации пользователем.
QList наиболее часто используемый класс-контейнер. Он хранит список значений указанного типа (T), доступ к которым осуществляется по индексу. Внутренне QList реализован с использованием массива, что гарантирует быстрый доступ к элементам по индексу. С помощью QList::append() и QList::prepend(), элементы могут быть добавлены в оба конца списка, а с помощью QList::insert(), вставлены в середину списка. QList наиболее оптимизирован для расширения, минимизации кода и скорости исполнения, чем другие классы-контейнеры. QStringList является наследником QList <QString>. Листинг основных программных модулей приведен в приложении А.
3.3 Диаграммы
3.3.1 Диаграмма вариантов использования
Диаграмма вариантов использования описывает функциональное назначение системы [15]. Она является исходным концептуальным представлением системы и строится с целью:
- определить общие границы и контекст моделируемой предметной области;
- сформировать общие требования к функциональному поведению и интерфейсу системы;
- подготовить исходную документацию для взаимодействия разработчиков и заказчиков - пользователей системы.
В диаграмму вариантов использования входят актанты (actors), варианты использования (usecase) и ассоциации (association).
Диаграмма вариантов использования разрабатываемой системы представлена на рисунке 19. Система содержит 4 актанта: Администратор, Эксперт, Преподаватель и Студент.
Администратор имеет доступ ко всем данным, содержащимся в таблицах БД «Пользователь», «Доступ», «Студент», «Результат тестирования». Он вносит и редактирует всю поступающую ему информацию о пользователях, отчетах и тестах.
Рисунок 19 - Диаграмма вариантов использования
Эксперт имеет доступ к двум таблицам БД «Справочник результатов» и «Справочник рекомендаций». Он может редактировать информацию, так как рекомендации могут иногда обновляться, а также может происходить изменение шкалы коэффициентов, что отразится и на результатах и их описании.
Преподаватель - это главный актант системы. Преподавателю доступны просмотр отчетов (о результатах тестирования, отчет с рекомендациями для его подопечного(-ых)) и возможность сохранения отчетов.
Студенту доступны две функции системы: прохождение тестирования и просмотр результатов. При прохождении теста используется показатель асимметрии, а также на основе результатов (последовательность чисел) обозначается конечный результат в виде коэффициента силы нервной системы и отчет, содержащий описание и некоторые рекомендации для конкретного показателя КСНС, доступный только Преподавателю.
Доступ осуществляется в соответствии с правами пользователей: Администратор, Студент, Эксперт, Преподаватель.
нейрофизиологический полушарие асимметрия модель
3.3.2 Сценарий
Сценарий - текстовое описание последовательности действий, необходимых для выполнения экземпляра варианта использования. Сценарий пишется по определенному шаблону. При создании сценариев тщательно прорабатывается интерфейс системы, и учитываются отношения между вариантами использования. Для абстрактных вариантов использования, являющихся обобщениями конкретных вариантов, сценарии обычно не пишут. Ниже приведен сценарий для варианта использования «Формирование отчета с результатами конкретного студента».
Вариант использования: Формирование отчета с результатами тестирования конкретного студента.
Вариант использования: Сформировать отчет с результатами тестирования конкретного студента.
Краткое описание. Позволяет Преподавателю узнать о результатах тестирования его студента (подшефного), отслеживать его активность за определенный период времени, с указанием количества баллов студента.
Предусловие: Выполнен вариант использования «Войти в систему». На экране - главное окно «Окно работы Преподавателя», содержащее поля с выпадающим списком «ФИО», «Группа» и кнопки: «Загрузить отчеты» «Справка», «Выход».
Актант. Преподаватель.
Основной поток событий
1. Преподаватель, чтобы посмотреть отчеты о конкретном ученике, выбирает соответствующую строку из выпадающего списка групп и фамилий и нажимает на кнопку «Загрузить отчеты».
А1: Справка.
А2: Выход.
2. Система открывает форму «Выбор необходимого отчета», содержащую поле с фамилией, именем и отчеством конкретного ученика и кнопки: «Результат теппинг-теста», «Отчет с рекомендациями для ученика» и «Назад».
А3: Преподаватель выходит из формы «Выбор необходимого отчета».
3. Преподаватель нажимает на кнопку «Результат теппинг-теста», щелкая левой кнопкой мыши.
А4: Преподаватель нажимает на кнопку «Отчет с рекомендациями для ученика»
А5: Преподаватель нажимает на кнопку «Назад».
4. Система открывает форму «Результат теппинг-теста» с заголовком: «Результаты тестирования» с полями «Ведущая рука», «Не ведущая рука», включающими в себя поля «r1», «r2», «r3», «r4», «r5», «r6», «max» «min» и «КСНС». Форма также содержит кнопки «Показать график ведущей/не ведущей руки», «Сводный график», «Сохранить отчет» и «Назад». Поля вывода заполняются системой автоматически по актуальным данным БД.
5. Преподаватель выбирает интересующую его руку и нажимает кнопку «Показать график ведущей/не ведущей руки» для просмотра более подробной информации о результатах тестирования.
А6: Преподаватель нажимает кнопку «Сводный график».
А7: Преподаватель нажимает кнопку «Сохранить отчет».
А8: Преподаватель нажимает кнопку «Назад».
6. Система открывает окно с графиком с заголовком «График результатов по ведущей/не едущей руке» и кнопкой «Назад».
7. Преподаватель просматривает график и нажимает кнопку «Назад».
8. Система закрывает окно «График результатов тестирования» и выводит на экран форму «Результат теппинг-теста».
9. Преподаватель нажимает кнопку «Назад».
10. Система закрывает форму «Результат теппинг-теста» и выводит на экран форму «Выбор необходимого отчета».
11. Преподаватель нажимает кнопку «Назад».
12. Система закрывает форму «Выбор необходимого отчета» и выводит на экран главное окно работы преподавателя. Вариант использования успешно завершается.
Альтернативы
А1: Справка.
А1.1. Преподаватель нажимает кнопку «Справка»
А1.2. Система выводит на экран окно с текстом справки и кнопкой «Назад».
А1.3. Преподаватель просматривает текст справки и нажимает кнопку «Назад».
А1.4. Система закрывает окно с текстом справки и выводит на экран главную форму приложения, настроенную на права Преподавателя. Вариант использования завершается.
А2. Выход.
А2.1. Преподаватель нажимает кнопку «Выход»
А2.2. Система закрывает главное окно работы преподавателя и выводит на экран окно авторизации. Вариант использования завершается.
А3: Преподаватель выходит из формы «Выбор необходимого отчета».
А3.1. Преподаватель нажимает на кнопку «Назад».
А3.2. Система выводит на экран окно приложения, настроенное на права Преподавателя. Вариант использования завершается.
А4: Преподаватель нажимает на кнопку «Отчет с рекомендациями для ученика» Начинает выполняться другой вариант использования «Формирование отчета с рекомендациями для конкретного студента». По завершению этого сценария выполняется переход к пункту 10 основной последовательности.
А5: Преподаватель нажимает на кнопку «Назад».
А5.1. Система закрывает форму «Выбор необходимого отчета» и выводит на экран главное окно приложения, настроенное на права Преподавателя.
А6: Преподаватель нажимает кнопку «Сводный график».
А6.1. Система открывает окно «Сводный график», которое содержит два графика и кнопку «Назад».
А6.2. Преподаватель просматривает график и нажимает кнопку «Назад».
А6.3. Система закрывает окно со сводным графиком и выводит на экран главную форму приложения, настроенную на права Преподавателя.
А7: Преподаватель нажимает кнопку «Сохранить отчет».
А7.1. Выполняется вариант использования «Сохранение отчета».
А8: Преподаватель нажимает кнопку «Назад».
А8.1. Система закрывает форму «Результат теппинг-теста» с заголовком: «Результаты тестирования» и выводит на экран форму «Выбор необходимого отчета». Выполняется пункт 2 основной последовательности.
Постусловия. При успешном завершении Преподаватель получает главную страницу приложения с меню, настроенным на права Преподавателя.