Обзор существующих решений




 

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

Первое проанализированное приложение называется Журнал преподавателя. Автор позиционирует это приложение как инструмент для ведения учета посещаемости и результативности работы студентов на занятиях. Бесплатная версия имеет ограничения по количеству создаваемых групп - не более 3, и количеству подгрупп - не более 2 для каждой группы. Кроме того, отключена функция импорта списка групп, подгрупп и студентов из CSV-файла. Неактивна также опция экспорта журнала в файл формата XLS (Excel). В платной версии приложения эти ограничения снимаются. Платную версию можно приобрести за 60 рублей. Интерфейс приложения изображен на рисунке 1.2.1. При пользовании этим приложением возникли трудности с заполнением журнала. Данные в приложении должны быть заполнены в определённом порядке. Журнал не может быть создан без предварительного создания группы, после создания группы приложение сообщает, что журнал не может быть создан без студентов, обучающихся в группе, и наконец, после создания студентов журнал успешно добавляется в приложение. Несколько раз приложение останавливало свою работу. А также не удалось выяснить каким образом отмечается успеваемость. По итогу пользования приложение не оправдало своей заявленной функциональности.

 

 

Рисунок 1.2.1 – Интерфейс приложения Журнал преподавателя

 

Вторым проанализированным приложением стал Журнал учителя. Данное приложение подходит как для преподавателей вузов, так и для учителей школ. Интерфейс приложения не адаптирован под разные разрешения экранов и отображается некорректно (рисунок 1.2.2).

 

 

Рисунок 1.2.2 – Интерфейс приложения Журнал учителя

Сложный интерфейс, не понятный на интуитивном уровне, усложняет пользование этим приложением.

Последним приложением стало приложение Study Journal. Данная программа предназначена для преподавателей ВУЗов. Предоставляет возможность вести журналы посещаемости и успеваемости учащихся. Дополнительные возможности: настройка графического представления журнала (таблицы), импорт записей о студентах/группах из файлов, сохранение/восстановление базы данных (SD-card). Интерфейс представлен на рисунке 1.2.3.

 

 

Рисунок 1.2.3 – Интерфейс приложения Study Journal

 

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

 

Разработка приложения

 

Инструмент разработки

Средой разработки была выбрана программа Android Studio. Эта программа является официальной средой для разработки Android приложений. Разработка в данной среде ведется с помощью языка Java.

 

Прецеденты

 

На рисунке 2.2.1 представлена use-case диаграмма системы. На ней изображены варианты использования системы.

Рисунок 2.2.1 – use-case диаграмма системы

 

Название прецедента: вход в систему.

Цель: войти в систему для получения доступа к основным функциям приложения.

Предусловия: ранее не было произведено входа в систему.

Главная последовательность:

· Преподаватель вводит свою фамилию и инициалы, нажимает кнопку войти

· Система успешно запускается и выводит расписание преподавателя на текущую неделю

Альтернативная последовательность (отсутствует интернет соединение):

· Преподаватель вводит фамилию и инициалы, нажимает кнопку войти

· Выводится сообщение о том, что отсутствует интернет соединение

Альтернативная последовательность (в базе расписания СФУ не существует данный преподаватель):

· Преподаватель вводит фамилию и инициалы, нажимает кнопку войти

· Выводится сообщение о том, что такого преподавателя не существует

Название прецедента: добавление или удаление предмета

Цель: добавление предметов преподавателя, которых нет в расписании на сайте sfu-kras.ru (таких как расписание заочных групп). Удаление предметов, которые не актуальны для преподавателя.

Предусловия: в навигационном меню выбран раздел «Журнал».

Главная последовательность (добавление нового предмета):

· На экране отображен список предметов, которые ведет преподаватель

· Пользователь нажимает кнопку «Добавить»

· Открывается диалоговое окно с полем для ввода названия добавляемого предмета и кнопкой «Добавить»

· Пользователь вводит название нового предмета и нажимает кнопку «Добавить»

· Новый предмет добавлен и отображен в списке предметов

Главная последовательность (удаление предмета):

· На экране отображен список предметов, которые ведет преподаватель

· Пользователь долгим нажатием на предмет вызывает контекстное меню и нажимает кнопку «Удалить»

· Происходит удаление предмета и появляется окно с обновленным списком предметов преподавателя

Название прецедента: добавление или удаление группы

Цель: добавление новой группы или удаление неактуальной группы для конкретного предмета

Предусловия: был совершен выбор одного из предметов в списке предметов преподавателя.

Главная последовательность (добавление группы):

· На экране отображен список групп, которые обучаются на конкретном предмете

· Пользователь нажимает кнопку «Добавить»

· Открывается диалоговое окно с полем для ввода названия добавляемой группы и кнопкой «Добавить»

· Пользователь вводит название новой группы и нажимает кнопку «Добавить»

· Новая группа добавлена и отображена в списке групп конкретного предмета

Главная последовательность (удаление группы):

· На экране отображен список групп для конкретного предмета

· Пользователь долгим нажатием на группу вызывает контекстное меню и нажимает кнопку «Удалить»

· Происходит удаление группы и появляется окно с обновленным списком групп

 

Название прецедента: добавление или удаление студентов

Цель: добавление студентов в группы, удаление студентов, которые были отчислены, переведены в другую группу или по другим причинам.

Предусловия: была выбрана конкретная группа

Главная последовательность (добавление студента):

· На экране отображен список студентов, выбранной ранее группы

· Пользователь нажимает кнопку «Добавить»

· Открывается диалоговое окно с полем для ввода имени и фамилии студента и кнопкой «Добавить»

· Пользователь вводит имя студента и нажимает кнопку «Добавить»

· Новый студент добавлен и отображен в списке студентов выбранной группы

Главная последовательность (удаление студента):

· На экране отображен список студентов, выбранной ранее группы

· Пользователь долгим нажатием на студента вызывает контекстное меню и нажимает кнопку «Удалить»

· Происходит удаление студента и появляется окно с обновленным списком студентов

 

Название прецедента: отметить посещаемость

Цель: отметить посещаемость того или иного студента, на конкретном предмете

Предусловия: был выбран предмет, группа и студент

Главная последовательность:

· На экране отображен список дат, по которым проводится выбранный предмет

· При долгом нажатии на дату, открывается контекстное меню с выбором отметить присутствие или отсутствие студента

· Пользователь выбирает кнопку «Присутствовал»

· Выбранная дата помечается зеленым цветом

Альтернативная последовательность (выбранная дата отмечена зеленым цветом):

· На экране отображен список дат, по которым проводится выбранный предмет

· При долгом нажатии на дату, открывается контекстное меню с выбором отметить присутствие или отсутствие студента

· Пользователь выбирает кнопку «Отсутствовал»

· Выбранная дата помечается белым цветом

 

Название прецедента: выход

Цель: выйти из системы, для возможности зайти другому пользователю

Предусловие: был осуществлен вход в приложение

Главная последовательность:

· В меню навигации пользователь выбирает пункт «Выйти»

· Появляется окно входа в систему, предоставляется возможность войти новому пользователю

 

Структура базы данных

 

В Android для локального хранения и доступа к данным используется SQLite.

В базе данных хранятся данные о предметах(Subjects), группах(Grousp), связях предметов и групп(SubjectGroup), датах по каким дням проводится предмет(Dates), студентах(Students), посещаемости студентов(Attendance) и их успеваемости(Labs). Диаграмма базы данных представлена на рисунке 2.3.1.

Рисунок 2.3.1 – Диаграмма базы данных

 

При входе в приложение в таблицу Subjects автоматически добавляются предметы, которые ведет преподаватель, основываясь на расписании. Затем в таблицу Groups добавляются группы, которые занимаются у преподавателя, а также в SubjectGroup добавляются связи между группами и предметами, то есть какие группы занимаются на том или ином предмете. Также заполняется таблица Dates датами по каким дням проводится определенный предмет. Таблицы Students, Labs и Attendance изначально пустые и заполняются по мере внесения данных пользователем.

Для доступа к базе используется класс GradebookDBHelper (код этого класса находится в приложении А). Этот класс наследуется от класса SQLiteOpenHelper. В методе onCreate(SQLiteDatabase) добавляются таблицы в базу данных.

 

Исходные данные

 

Данные о расписании, предметах и группах преподавателя берутся c официального сайта СФУ по адресу https://edu.sfu-kras.ru/timetable#teachers. Подставляя в ссылке edu.sfu-kras.ru/timetable?teacher=Фамилия+И.+О. фамилию и инициалы преподавателя можно получить его расписание.

С помощью библиотеки jsoup происходит парсинг страницы с расписанием конкретного преподавателя, откуда берутся данные о предметах, группах, четности недели, связях предмет с группами. Все эти данные заносятся в базу данных SQLite при входе пользователя в систему.

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

 

Тестирование

При запуске приложения появляется окно авторизации, предлагающее ввести фамилию и инициалы преподавателя, пытающегося войти в систему. Были протестированы следующие варианты:

· Нажатие кнопки войти без ввода какой-либо информации

· Ввод фамилии для которой нет данных расписания на сайте sfu-kras.ru

· Вход без доступа в интернет

При первых двух вариантах на экран выводится сообщение о том, что такого преподавателя не существует. Без доступа в интернет, при нажатии на кнопку «Войти» выводится сообщение «Отсутствует интернет соединение» (рисунок 3.1).

 

Рисунок 3.1 – тестирование авторизации

 

Для тестирования приложения войдем под именем Казаков ФА. После успешного входа появляется окно с расписанием. Листая влево и вправо можно переключатся между днями недели (рисунок 3.2). Недостатком является то, что если у преподавателя по одной неделе есть предмет, а по другой нету, будет выводится пустое поле в ту неделю, когда предмета нету.

 

 

Рисунок 3.2 – Расписание преподавателя

Сделав слайд от левой стороны экрана вправо, откроется меню (рисунок 3.3) с выбором трех возможных вариантов: просмотр расписания, журналов и возможность выйти и зайти под новым именем.

 

 

Рисунок 3.3 – Боковое меню выбора

 

Выбрав пункт меню «Журнал», откроется список предметов, преподаваемых преподавателем (рисунок 3.4).

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

 

 

Рисунок 3.4 – Список предметов

 

Также в этом окне доступны функции добавления новых предметов, удаления и возможность переименовать предмет (рисунок 3.5).

 

 

Рисунок 3.5 – Функции для редактирования предметов

 

При нажатии на один из предметов, появляется окно с группами (рисунок 3.6), обучающимися на данном предмете. Группы также берутся из расписания преподавателя.

 

 

Рисунок 3.6 – Список групп, обучающихся на предмете

 

Сверив расписание и полученный список групп, убеждаемся в корректности добавления групп в приложение.

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

При нажатии на одну из групп открывается список студентов, обучающихся в данной группе. Из-за отсутствия информации в свободном доступе о студентах, обучающихся в той или иной группе, изначально список пуст. Добавление студентов необходимо производить вручную с помощью кнопки «Добавить» (рисунок 3.7).

 

 

 

Рисунок 3.7 – Добавление студента

 

Все функции доступные в данном окне, такие как добавление, удаление и возможность переименовать, выполняются корректно и без ошибок.

При нажатии на определенного студента открывается список с датами, в которые в соответствии с расписанием проводится предмет. При долгом нажатии на дату открывается контекстное меню, позволяющее отметить присутствие студента в тот или иной день. Если отметить присутствие студента в тот или иной день, этот день закрасится зеленым цветом (рисунок 3.8).

 

 

 

Рисунок 3.8 – Функция учета посещаемости

 

В данном окне находится две вкладки. В одной отмечается посещаемость, в другой - выполнение лабораторных работ (рисунок 3.9). Перейти на другую вкладку можно нажав на нее, либо пролистнув по экрану.

Список лабораторных работ изначально пуст, добавить лабораторную можно с помощью кнопки «Добавить».

 

 

Рисунок 3.9 – список лабораторных работ

 

При долгом нажатии появляется контекстное меню с выбором действий: отметить выполнение или невыполнение лабораторной работы, переименовать или удалить работу (рисунок 3.10). Когда отмечают лабораторную работу как выполненную, она загорается зеленым цветом. Все функции работают корректно и без ошибок.

 

 

Рисунок 3.10 – Функция учета успеваемости

 

В результате тестирования ошибки не были обнаружены. Все необходимые функции работают исправно.

 

ЗАКЛЮЧЕНИЕ

 

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

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

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-07-01 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: