Поздравляем с 1 мая!
   
Телефон: 8-800-350-22-65
WhatsApp: 8-800-350-22-65
Telegram: sibac
Прием заявок круглосуточно
График работы офиса: с 9.00 до 18.00 Нск (5.00 - 14.00 Мск)

Статья опубликована в рамках: XLIV Международной научно-практической конференции «Естественные и математические науки в современном мире» (Россия, г. Новосибирск, 06 июля 2016 г.)

Наука: Информационные технологии

Секция: Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

Скачать книгу(-и): Сборник статей конференции

Библиографическое описание:
Заславский М.М., Козлов П.В. ВЕБ-ПРИЛОЖЕНИЕ ДЛЯ КАФЕДРЫ ФИЗВОСПИТАНИЯ // Естественные и математические науки в современном мире: сб. ст. по матер. XLIV междунар. науч.-практ. конф. № 7(42). – Новосибирск: СибАК, 2016. – С. 50-56.
Проголосовать за статью
Дипломы участников
У данной статьи нет
дипломов

ВЕБ-ПРИЛОЖЕНИЕ ДЛЯ КАФЕДРЫ ФИЗВОСПИТАНИЯ

Заславский Марк Маркович

студент, Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В.И. Ульянова (Ленина),

РФ, г. Санкт-Петербург

Козлов Петр Вячеславович

студент, Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В.И. Ульянова (Ленина),

РФ, г. Санкт-Петербург

WEB APPLICATION FOR THE DEPARTMENT OF PHYSICAL EDUCATION

Mark Zaslavsky

phD student 2 grade of the department of informatics and applied mathematics,

ITMO University,

Russia, Saint-Petersburg

Petr Kozlov

student, Saint Petersburg Electrotechnical University “LETI”,

Russia, Saint-Petersburg

 

АННОТАЦИЯ

Целью работы является создание автоматизированной информационной системы преподавателя кафедры физвоспитания. Для достижения этой цели была разработана база данных при помощи СУБД MySQL и разработано веб-приложение с использованием Nodejs для серверной части и Angularjs для клиентской части. Данная АИС будет введена в эксплуатацию с начала нового учебного года.

ABSTRACT

The aim of this work is creation of the automated information system of lecturer in physical education. To achieve this goal, a database was developed using MySQL and developed a web application using Nodejs for backend and Angularjs for client side. This AIS will be put into operation from the beginning of the new academic year.

 

Ключевые слова: автоматизированная информационная система, Nodejs, Angularjs, веб-приложение.

Keywords: automated information system, Nodejs, Angularjs, web-application.

 

Обозначение проблемы.

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

Цель работы.

Целью данной работы является создание веб-приложения для кафедры физвоспитания со следующими возможностями:

  • Хранение списки преподавателей кафедры, студентов, дисциплин и нормативов.
  • Ведение посещаемости студентов.
  • Контроль сдачи нормативов.

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

Разработка базы данных.

На рисунке 1 представлена ER модель спроектированной базы данных [3]. Помимо хранения списков, расписания и нормативов, была добавлена таблица “group” для хранения информации о номере группы, факультете и курсе студента. Эта таблица необходима для формирования расписания, так как студенты одного потока (например, факультет КТИ 1 курс) занимаются различными дисциплинами в один день.

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

 

Рисунок 1. ER диаграмма

 

Спроектированная база данных была реализована с использованием СУБД MySQL [1–2].

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

Спроектированная система (веб-приложение и база данных) представлена на рисунке 2. Архитектура системы построена с использованием MVC (model-view controller), который позволяет расширять и улучшать систему без изменения её архитектуры. В model перечислены созданные модули.

 

Рисунок 2. Архитектура системы

 

Так как веб-приложение будет размещаться не на специальном мощном сервере, а на обычном компьютере, то для реализации серверной части веб-приложения необходимо выбрать технологию, которая обеспечивает его стабильную работу на малых вычислительных мощностях. Поэтому для разработки серверной части использовалась платформа Nodejs, основанная на JavaScript движке V8 [4–5]. Данная платформа поддерживает асинхронные запросы, передачу данных в формате JSON. Также для это платформы существует множество модулей, которые упрощают разработку.

При создании данной системы были использованы следующие модули:

  • Express – фреймворк, построенный на концепции middleware. Middleware – это функции промежуточной обработки, имеющие доступ к объекту запроса, объекту ответа и к следующей функции промежуточной обработки в цикле «запрос-ответ». Архитектура middleware представлена рисунке 3. Замыкающий middleware обычно используется для обработки и вывода ошибок.
  • Morgan – модуль для логирования клиент-сервер запросов.
  • Sequelize – ORM (Object-Relational Mapping, объектно-реляционное отображение) для работы с СУБД MySQL. Данный модуль позволяет подключиться к базе данных и интерпретировать таблицы в виде моделей в Nodejs. Для этих моделей были написаны функции получения, изменения, добавления и удаления отдельных записей из таблиц, а также функции логики приложения. Например, функция получения дисциплины студента по его преподавателю и т. д.

 

Рисунок 3. Архитектура middleware

 

Для разработки клиента использовался AngularJS, в котором реализована двухсторонняя связь между View и Model (рисунок 2). Любые изменения в модели автоматически отражаются на странице, а изменения на странице записываются в соответствующую модель. Контроллер осуществляет взаимодействие между View, Model и сервером. Например, при отправке формы добавления студента нового студента в соответствующий список, контроллер берёт соответствующие данные из модели, формирует запрос и отправляет его на сервер, а затем обрабатывает полученный ответ и сохраняет данные в своей модели.

Описание приложения.

Авторизация и регистрация в системе.

Для приложения реализованы авторизация и регистрация, формы которых вы видите на слайде. Зарегистрироваться может только преподаватель, который уже есть в списке работников кафедры. Для этого существует проверка по ФИО. После успешной авторизации или регистрации пользователь перенаправляется к списку студентов. Форма авторизации и регистрации представлена на рисунке 4.

 

Рисунок 4. Форма авторизации и регистрации

 

Списки.

Работа со списками показана на примере списка студентов, который представлен на рисунке 5.

 

Рисунок 5. Список студентов

 

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

Журнал посещаемости.

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

 

Рисунок 6. Журнал посещаемости

 

Результаты.

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

 

Список литературы:

  1. Грабер М. SQL для простых смертных / М. Грабер. – М: Лори, 2014. – 378 с.
  2. Дюбуа П. MySQL / П. Дюбуа. – СПб: Вильямс, 2007. – 1168 с.
  3. Кириллов В. Введение в реляционные базы данных / В. Кириллов, Г. Громов. – СПб: БХВ-Петербург, 2012. – 464 с.
  4. Пауэрс Ш. Изучаем Node.js / Ш. Пауэрс. – СПб: Питер, 2013. – 400 с.
  5. Флэнаган Д. JavaScript. Полное руководство / Д. Флэнаган. – СПб: Символ-Плюс, 2008. – 992 с.
Проголосовать за статью
Дипломы участников
У данной статьи нет
дипломов

Оставить комментарий

Форма обратной связи о взаимодействии с сайтом
CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.