Статья:

МОБИЛЬНОЕ ПРИЛОЖЕНИЕ ДЛЯ ПРОСМОТРА РАСПИСАНИЯ СТУДЕНТОВ

Конференция: XXXI Студенческая международная заочная научно-практическая конференция «Молодежный научный форум: технические и математические науки»

Секция: 3. Информационные технологии

Выходные данные
Митлошук А.В. МОБИЛЬНОЕ ПРИЛОЖЕНИЕ ДЛЯ ПРОСМОТРА РАСПИСАНИЯ СТУДЕНТОВ // Молодежный научный форум: Технические и математические науки: электр. сб. ст. по мат. XXXI междунар. студ. науч.-практ. конф. № 2(31). URL: https://nauchforum.ru/archive/MNF_tech/2(31).pdf (дата обращения: 23.08.2019)
Лауреаты определены. Конференция завершена
Эта статья набрала 59 голосов
Мне нравится
Дипломы
лауреатов
Сертификаты
участников
Дипломы
лауреатов
Сертификаты
участников
на печатьскачать .pdfподелиться

МОБИЛЬНОЕ ПРИЛОЖЕНИЕ ДЛЯ ПРОСМОТРА РАСПИСАНИЯ СТУДЕНТОВ

Митлошук Артем Валерьевич
студент группы ПИ-11, ФГБОУ ВО «Вятский государственный университет», РФ, г. Киров
Князькова Тамара Викторовна
научный руководитель, канд. техн. наук, доц., кафедра бизнес-информатики, ФГБОУ ВО «Вятский государственный университет», РФ, г. Киров

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

Для студентов Вятского Государственного Университета существует сервис, позволяющий ознакамливаться с расписанием занятий студентов через Интернет. К сожалению, его использование удобно лишь на большом экране, потому что он построен в виде таблицы, которая не умещается на экранах смартфонов и некоторых планшетов, что затрудняет использование официального расписания занятий.

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

Для экономии ресурсов сервера, ускорения работы сервиса, а также обеспечения доступности расписания, синхронизация имеет свои особенности:

  1. Если официальная страница расписания недоступна, либо загружается дольше 10 секунд, тогда пользователю отображается сохраненная копия данных — обеспечивается отказоустойчивость расписания, необходимость в которой возникает при недоступности веб-сайта ВятГУ из-за большой нагрузки на сервер, либо сбоях в работе серверов.
  2. Обновление данных о расписании занятий учебной группы происходит при каждом посещении страницы данной учебной группы, но не чаще одного раза в 30 минут — данная особенность позволяет экономить более 3 секунд при загрузке страницы с расписанием.

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

 

Рисунок 1. Пример страницы сайта

 

  1. Демонстрация текущей и следующей пары для быстрого получения информации.
  2. Вывод расписания для текущего и завтрашнего дня.
  3. Представление информации о звонках — начало и конец каждой пары.
  4. Таймер отсчета времени до конца текущей пары.
  5. Публикация адреса для каждого корпуса.

Страница учебной группы в модуле «Расписание» состоит из одной страницы, которая поделена на 3 блока:

  1. Блок «Общая информация», состоящий из 4 ключевых элементов: текущая, следующая, сегодняшние и завтрашние пары, адреса корпусов.
  2. Блок «Расписание» - вывод текущей недели, демонстрация занятий каждого дня недели, расписание звонков.
  3. Блок «Мероприятия» - вывод информации из раздела официального веб-сайта с расписанием грядущих мероприятий.

Веб-сайт базируется на объектно-ориентированном языке PHP.

При разработке первой версии веб-сайта не было использовано каких-либо фреймворков, была лишь задействована PHP библиотека Simple HTML DOM Parser для парсинга (чтения и преобразования) HTML-кода официальной страницы расписания. Все преобразованные данные хранилась в реляционной системе управления базами данных MySQL.

В ходе тестирования системы на одной учебной группе студентов, все найденные недочеты были устранены. Проведение опроса в группе социальной сети ВКонтакте «Подслушано ВятГУ» дало следующие результаты: 200 «лайков» и 40 комментариев за то, чтобы подобный вариант расписания был доступен всем учебным группам.

Решение дать возможность пользоваться таким видом расписания каждому студенту потребовало изменения структуры веб-сайта, поэтому вся система была перенесена на фреймворк Yii2, где в дальнейшем проявилась ошибка, связанной с библиотекой для чтения HTML-кода, поэтому данный «парсер» был заменен на другую библиотеку — phpQuery, являющуюся аналогом библиотеки jQuery в языке JavaScript. Вся информация из реляционной системы управления базами данных MySQL была перенесена в документо-ориентированную систему управления базами данных MongoDB.

Изначально расписание находилось на поддомене личного веб-сайта, но было решено зарегистрировать домен, который был бы удобен в использовании и запоминании для студентов университета — vgu43.ru.

Масштабирование сервиса потребовало переработки функции чтения и преобразования кода официальной страницы с расписанием учебной группы, а также создания главной страницы для сервиса, позволяющей выбрать курс и учебную группу пользователя (Рис.2).

 

Рисунок 2. Начальная страница сайта

 

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

Подобным решением для студентов заинтересовались и преподаватели Вятского Государственного Университета, поэтому внесли свои предложения.

Модуль «Английский язык» на данный момент имеет функционал, который помогает в интерактивном режиме изучать неправильные глаголы. Для удобства, ускорения и упрощения заучивания 144 неправильных глагола разделены на группы 50-50-44. Алгоритм работы заключается в демонстрации слов в случайном порядке, для каждого глагола пользователь должен ввести три формы, либо самостоятельно проверить перевод, который появляется после нажатия кнопки «Проверка». Изначально вся работа раздела обеспечивалась сервером, а для появления нового слова требовалось обновить страницу, поэтому было решено переписать весь функционал модуля на JavaScript. Миграция на JavaScript позволила избавиться от большей части нагрузки на сервер, поскольку весь алгоритм выполняется браузером пользователя.

Еще одной функцией, которой воспользовались лишь несколько групп — это поздравление с Днем Рождения. В базу данных заносятся даты рождения студентов группы, и в нужный день на главной странице расписания группы появляется красочное уведомление с поздравлением именинника.

Для попадания в поисковую выдачу Google и Яндекса потребовалось провести внутреннюю оптимизацию и дополнить сайт:

  1. Выполнена перелинковка страниц, которая способствует повышению релевантности страниц, а также ускорению индексации сайта поисковыми системами.
  2. Заголовок каждой страницы переведен в соответствие содержанию.
  3. Добавлены ключевые слова.
  4. Нарисован и добавлен favicon.ico
  5. Запрограммирована карта сайта, которая автоматически формируется из списка учебных групп, которые находится в Базе Данных.

На данный момент веб-сайт посетило около 5 000 человек, а ежедневное количество пользователей — более 300 человек.

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