Научная статья на тему 'О РАЗРАБОТКЕ ПРИЛОЖЕНИЯ ДЛЯ ИНТЕГРАЦИИ ДАННЫХ ИЗ ИНФОРМАЦИОННОЙ СИСТЕМЫ ВУЗА В GOOGLE CALENDAR'

О РАЗРАБОТКЕ ПРИЛОЖЕНИЯ ДЛЯ ИНТЕГРАЦИИ ДАННЫХ ИЗ ИНФОРМАЦИОННОЙ СИСТЕМЫ ВУЗА В GOOGLE CALENDAR Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
125
13
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ИНФОРМАЦИОННАЯ СИСТЕМА / API / ICAL / GOOGLE CALENDAR

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Шершнева Елена Олеговна, Веремчук Наталья Сергеевна, Тихомиров Василий Сергеевич

Представлено описание технологии интеграции данных о расписании с действующего веб-расширения информационной системы сопровождения учебного процесса вуза в Google Calendar. Создано программное обеспечение «Преобразователь расписания» с использованием высокоуровневого языка программирования C# в виде консольного и веб-приложения, в котором поддерживаются режимы выгрузки расписания на определенную неделю либо в диапазоне указываемых дат. В процессе реализации проведено исследование структуры ical-файлов, с помощью которых поддерживается импорт сведений в наиболее распространенные календари - Google Calendar и Яндекс Календарь. Созданное приложение может применяться для расширения функционала информационных систем сопровождения учебного процесса за счет возможностей выгрузки данных в удобный для пользователя формат.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ON DEVELOPING AN APPLICATION FOR INTEGRATION OF DATA FROM A UNIVERSITY INFORMATION SYSTEM INTO GOOGLE CALENDAR

The study describes a technology for integrating schedule data from a web-extension of the information system supporting the educational process into Google Calendar. Using the high-level programming language C#, the Schedule Transformer software was developed as a console and web-application that implements the function of uploading a week’s schedule or that of a certain date range. A study of the structure of ical-files, which support data import in the most popular calendars (Google Calendar and Yandex Calendar), was conducted during implementation. The application can be used to broaden the functional possibilities of information systems aimed at supporting educational process via the ability to upload data in a user-friendly format.

Текст научной работы на тему «О РАЗРАБОТКЕ ПРИЛОЖЕНИЯ ДЛЯ ИНТЕГРАЦИИ ДАННЫХ ИЗ ИНФОРМАЦИОННОЙ СИСТЕМЫ ВУЗА В GOOGLE CALENDAR»

Научная статья УДК 004.45

DOI 10.35266/1999-7604-2023 -1-43-51

О РАЗРАБОТКЕ ПРИЛОЖЕНИЯ ДЛЯ ИНТЕГРАЦИИ ДАННЫХ ИЗ ИНФОРМАЦИОННОЙ СИСТЕМЫ ВУЗА В GOOGLE CALENDAR

Елена Олеговна Шершнева Наталья Сергеевна Веремчук 2, Василий Сергеевич Тихомиров 3

12 3 Сибирский государственный автомобильно-дорожный университет (СибАДИ), Омск, Россия 1 helen_volf@mail.ru s, https://orcid.org/0000-0003-4893-3806 2n-veremchuk@rambler.ru, https://orcid.org/0000-0002-2709-9755 3 tihomirov.vasili@bk.ru

Аннотация. Представлено описание технологии интеграции данных о расписании с действующего веб-расширения информационной системы сопровождения учебного процесса вуза в Google Calendar. Создано программное обеспечение «Преобразователь расписания» с использованием высокоуровневого языка программирования C# в виде консольного и веб-приложения, в котором поддерживаются режимы выгрузки расписания на определенную неделю либо в диапазоне указываемых дат. В процессе реализации проведено исследование структуры ical-файлов, с помощью которых поддерживается импорт сведений в наиболее распространенные календари - Google Calendar и Яндекс Календарь. Созданное приложение может применяться для расширения функционала информационных систем сопровождения учебного процесса за счет возможностей выгрузки данных в удобный для пользователя формат.

Ключевые слова: информационная система, API, ICal, Google Calendar

Для цитирования: Шершнева Е. О., Веремчук Н. С., Тихомиров В. С. О разработке приложения для интеграции данных из информационной системы вуза в Google Calendar //Вестник кибернетики. 2023. Т. 22, № 1. С. 43-51. DOI 10.35266/1999-7604-2023-1-43-51.

Original article

ON DEVELOPING AN APPLICATION FOR INTEGRATION OF DATA FROM A UNIVERSITY INFORMATION SYSTEM INTO GOOGLE CALENDAR

Elena O. ShershnevaNatalya S. Veremchuk 2, Vasily S. Tikhomirov 3

12' 3 The Siberian State Automobile and Highway University (SibADI), Omsk, Russia 1 helen_volf@mail.ru https://orcid.org/0000-0003-4893-3806 2n-veremchuk@rambler.ru, https://orcid.org/0000-0002-2709-9755 3 tihomirov.vasili@bk.ru

Abstract. The study describes a technology for integrating schedule data from a web-extension of the information system supporting the educational process into Google Calendar. Using the high-level programming language C#, the Schedule Transformer software was developed as a console and web-application that implements the function of uploading a week's schedule or that of a certain date range. A study of the structure of ical-files, which support data import in the most popular calendars (Google Calendar and Yandex Calendar), was conducted during implementation. The application can be used to broaden the functional possibilities of information systems aimed at supporting educational process via the ability to upload data in a user-friendly format.

Keywords: information system, API, ICal, Google Calendar

For citation: Shershneva E. O., Veremchuk N. S., Tikhomirov V. S. On Developing an Application for Integration of Data from a University Information System into Google Calendar. Proceedings in Cybernetics. 2023. Vol. 22, No. 1. P. 43-51. DOI 10.35266/1999-7604-2023-1-43-51.

ВВЕДЕНИЕ

За последние годы, согласно тренду на циф-ровизацию, в вузах активно разрабатываются и функционируют подсистемы поддержки образовательного процесса [1, 2]. Информационная система (ИС), как правило, охватывает все основные бизнес-процессы вуза и представляет собой совокупность программных комплексов, с помощью которых в зависимости от статуса пользователя накапливается, обрабатывается и отображается информация. ИС состоит из автоматизированных рабочих мест для сотрудников вуза и системы веб-приложений, которые доступны через интернет [3, 4].

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

С учетом разделения полномочий и специфики задач пользователи ИС делятся на Windows- и веб-клиентов. Для первых программное обеспечение устанавливается на рабочих местах, для вторых доступ к ИС осуществляется через веб-интерфейс.

Среди пользователей ИС можно выделить следующие категории:

- сотрудники вуза, использующие ИС в соответствии с должностными обязанностями (Windows-клиенты);

- сотрудники вуза, использующие ИС для введения, изменения информации, формирования различных форм отчетности (веб-клиенты);

- студенты вуза (веб-клиенты);

- внешние пользователи (веб-клиенты).

Для реализации образовательной деятельности ИС вуза должна содержать комплекс

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

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

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

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

По результатам проведенного анализа ИС, представлено описание технологии интеграции данных, содержащих информацию о расписании обучающихся, с действующего веб-расширения информационной системы вуза в Google Calendar. Создано программное обеспечение «Преобразователь расписания» с использованием высокоуровневого языка программирования C# в виде консольного и веб-приложения, в котором поддерживаются режимы выгрузки расписания на определенную неделю либо в диапазоне указываемых дат. В процессе реализации проведено исследование структуры ical-файлов, с помощью которых поддерживается импорт сведений в наиболее распространенные календари -Google Calendar и Яндекс Календарь. Созданное приложение может использоваться для расширения функционала ИС сопровождения

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

МАТЕРИАЛЫ И МЕТОДЫ

Для получения данных с сайта СибАДИ установлено, что при переходе на страницу с расписанием производится запрос к открытому API по URL: https://umu.sibadi.org/api, точнее по ссылке https://umu.sibadi.org/api/ Rasp?idGroup= 13410&sdate=2022-09-11.

i 2

3

4

5

6 1 8 S

10 11 12

13

14

15

16

17

18 IS 20 21 22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

Для интеграции данных ИС в календарь потребуются свойства: датаНачала; датаОкончания; дисциплина; преподаватель; аудитория.

Параметры idGroup и sdate выбираются из запроса с использованием метода GET к API по URL: https://umu.sibadi.org/api/rasp Grouplist?year=2022-2023, который возвращает список групп за 2022-2023 учебный год. При формировании запросов в разрабатывае-

Запрос предполагает использование метода GET, а также конечной точки API - Rasp с параметрами idGroup, который принимает Id группы (на примере группы ПИб-20Э2 Id группы имеет значение 13410) и sdate (текущая дата, начиная с которой будет получено расписание, в примере - sdate=2022-09-11). В результате запроса получен ответ в формате JSON со структурой, представленной на рис. 1.

I

мом приложении для группы применяются свойства name и id.

Описание структуры файла ICal (.ics/.ical).

В наиболее распространенные сервисы Google Calendar и Яндекс Календарь возможен импорт файлов с расширениями .ics/.ical. Для реализации намеченных целей реализован экспорт данных расписания из ИС в эти форматы.

Р

"data": {

"isCyclicalSchedule": false.,

"rasp": [ {

"код": 13407940,

"дата": "2022-09-12Т00:QQ:90",

"начало": "08-20",

"датаНачала": "2022-09-12Т08:20:00", "датаОкончания": "2022-09-12Т09:50:00", "конец": "09-50", "деньНедели": 1, "де н ь_недел и": "Пон едел ь н и к", "почта": "",

"день": "1 Понедельник", "код_С еме стр а": 1, "типНедели": 3, "номерПодгруппы": 0,

"дисциплина": "лаб Разработка и интеграция мобильных приложений, п/г 2",

"преподаватель": "Шершнева Е.О.",

"аудитория": "2.456",

"учебныйГод": "2022-2023",

"группа": "ПИ6-20Э2",

"customl": "Шершнева Е.0.\п2.4Б6",

"часы": "08-20\п09-50",

"неделяНачала": -100,

"неделяОкончания": -100,

"замена": false,

"кодПр еподавателя": 1179,

"кодГру п пы": 13410,

"фиоГТреподавателя": "Шершнева Е.О.",

"элементЦиклРасписания": false,

"тема": "

"номерЗанятия": 1

ь {

"код": 13407941j

Рис. 1. Структура ответа на запрос расписания от API

Примечание: скриншот авторов.

При экспорте для двух событий Event 1 и Event 2 файл .ics должен иметь соответствующую структуру, при этом указывают

название события, время и дату его начала и окончания (рис. 2).

Рис. 2. Структура файла .ics из Google Calendar

Примечание: скриншот авторов.

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

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

1) Характеристика календаря:

- BEGIN:VCALENDAR - начало сущности в виде календаря;

- PRODID :-//GoogleInc// GoogleCalendar70. 9054//EN/ - указание идентификатора продукта/ программы, создавшей этот файл;

- VERSION:2.0 - значение версии календаря (должно быть 2.0);

- CALSCALE:GREGORIAN - тип календаря;

- METHOD:PUBLISH - PUBLISH используется для добавления календаря в один или несколько приложений календарей;

- X-WR-CALNAME: C al endar for export -название календаря;

- X-WR-TIMEZONE :Asia/Omsk - определение часового пояса.

2) Характеристика событий в календаре:

- BEGIN:VEVENT - начало сущности в виде события в календаре;

- DTSTART:20220917T050000Z - дата и время начала события;

- DTEND:20220917T060000Z - дата и время конца события;

- DTSTAMP:20220913T155052Z - дата и время, когда экземпляр события был создан;

- UID: - уникальный идентификатор для события;

- CREATED:20220913T154856Z - дата и время, когда информация в календаре была создана;

- DESCRIPTION: - описание события;

- LAST-M0DIFIED:20220913T154901Z -дата и время последнего изменения;

- LOCATION: - месторасположение события;

- SEQUENCE:0 - свойство, которое увеличивается при изменениях (по умолчанию 0);

- STATUS:CONFIRMED - свойство, означающее, что событие определено;

- SUMMARY:new event - информация, которая выводится непосредственно в название события в календаре;

- TRANSP:OPAQUE - свойство отражает занят/свободен человек в момент этого события, по умолчанию OPAQUE - значит занят;

- END:VEVENT - окончание события.

При создании файла ICal с расписанием

следует выбрать и заполнить соответствующие поля. Для календаря это:

- BEGIN:VCALENDAR;

- PRODID: :-//Sibadi_S cheduleCreator;

- VERSION:2.0;

- CALSCALE:GREGORIAN;

- METHOD:PUBLISH;

- X-WR-TIMEZONE :Asia/Omsk.

Для событий это:

- BEGIN:VEVENT;

- DTSTART: Дата и время начала занятия;

- DTEND: Дата и время конца занятия;

- DTSTAMP: Дата и время когда было создано событие в приложении;

- SUMMARY: (название аудитории) Название пары;

- TRANSP :OPAQUE;

- END:VEVENT.

Проектирование приложения.

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

Рис. 3. Информационная модель «Преобразователя расписания»

Примечание: скриншот авторов.

Входные данные:

- название группы, например, ПИ6-20Э2 или СУЗ-19С1.

- опции расписания (в приложении предоставляется возможность выбора расписания на текущую неделю/следующую/из диапазона дат).

Выходные данные:

- файл 1Са1 (лсу/лса1) для импорта в календарь.

Механизмы:

- студент.

Управление:

- ФЗ 273 «Об образовании в Российской Федерации»;

- Локальные нормативные акты.

Диаграмма активности, описывающая логику взаимодействия между студентом и приложением «Преобразователь расписания», представлена на рис. 4.

Рис. 4. Диаграмма активности

Примечание: скриншот авторов.

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

С учетом описания открытого API сайта с расписанием, структуры файлов для импорта в календари (.ics/.ical), информационной модели и диаграммы активности для разработки приложения принято решение об использовании высокоуровневого языка программирования C# [9, 10].

Созданное приложение содержит три части:

1. Библиотеку классов для работы и создания текста для формата файла ICal (ICalDotNet).

2. Библиотеку классов (сервисов) для преобразования ответа от API университета и ис-

пользования логики библиотеки ICalDotNet (S cheduleApplicati on).

3. Внешнюю оболочку (консольное приложение - ConsoleApp, а также веб-сайт WebApp).

РЕЗУЛЬТАТЫ И ИХ ОБСУЖДЕНИЕ

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

Введите название вашей группы: ПИ6-2ЭЭ2

Выберите опцию выгрузки расписания: Для текущей недели впишите 1 Для следующей недели впишите 2 Для выбора из диапазона дат впишите 3 1

Ваш файл создан!

Рис. 5. Окно консольного приложения

Примечание: скриншот авторов.

В результате формируется файл на рабочем столе в формате ICal, который может быть импортирован в календарь. Часть содержания файла для группы ПИб-20Э2 на неделю с 19.09.2022 по 24.09.2022 представлена на рис. 6.

В Google Calendar после импорта расписание имеет вид, как показано на рис. 7.

Тестирование разработанного приложения осуществлялось с использованием сервисов Google Calendar и Яндекс Календарь.

BEGIN:VCALENDAR

PRQDID: :-//Sibadi_ScheduleCreator

VERSION:2.0

BEGIN:VEVENT

DTSTAMP:20220922T213722Z

DTSTART:20220919T032000

DTEND:20220919T095000

SUMMARY:(2.456) лаб Проектирование информационных систем, п/г 1 END:VEVENT BEGIN:VEVENT

DTSTAMP:20220922T213722Z DTSTART:20220919T100000 DTEND:20220919T113000

SUMMARY:(2.451) лек Имитационное моделирование END:VEVENT

Рис. 6. Содержание файла из приложения

Примечание: скриншот авторов.

ПН ВТ ЙР ЧТ

19 20 21 ф

Рис. 7. Расписание в Google Calendar

Примечание: скриншот авторов.

ЗАКЛЮЧЕНИЕ обучающихся, с действующего веб-расши-

Разработана технология интеграции дан- рения информационной системы СибАДИ ных, содержащих информацию о расписании в Google Calendar. Выполнено проектирова-

ние приложения. Создано программное обеспечение «Преобразователь расписания», в котором поддерживаются режимы выгрузки расписания на определенную неделю либо в диапазоне указываемых дат. При разработке программного обеспечения использовался высокоуровневый язык программирования C#. Программная реализация осуществлена в виде консольного и веб-приложения. В процессе реализации проведено исследование

Список источников

1. Буданцев Д. В. Цифровизация в сфере образования: обзор российских научных публикаций // Молодой ученый. 2020. № 27. С. 120-127.

2. Зенков А. Р. Цифровизация образования: направления, возможности, риски // Вестник Воронежского государственного университета. Серия: Проблемы высшего образования. 2020. № 1. С. 52-55.

3. Шакирьянов Э. Д., Чудинов В. В. Информационная система поддержки процесса разработки основных образовательных программ // Вестник УГНТУ. Наука, образование, экономика. Серия: Экономика. 2019. № 4. С. 181-188.

4. Суходолова Е. М. Информационная система как основа эффективного управления вузом // Мир науки, культуры, образования. 2021. № 2. С. 353-356.

5. Mironova L. I., Alekhin V. N., Al-Mahfadi M. A. A. et. al. Improving the University's Information and Educational Environment in the Context of the Country's Economy Digitalization. Russian Journal of Construction Science and Technology. 2021. Vol. 7, No. 1. P. 5-15.

6. Шефер О. Р., Лебедева Т. Н., Носова Л. С. Автоматизированная информационная система образования в вузе: состояние и перспективы // Научно-техническая информация. Серия 1: Организация и методика информационной работы. 2020. № 6. С. 27-32.

7. Барышева Е. Н., Дунаев В. В. Разработка функции экспорта расписания занятий вуза в международный формат данных icalendar // Вестник Самарского государственного университета. Экономика и управление. 2016. № 3. С. 102-107.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

8. Донецков А. М. Вывод информации о расписании учебных занятий вуза в программе «Расписание» // Современные информационные технологии и ИТ-образование. 2010. Т. 6, № 1. С. 296-305.

9. Шилдт Г. С# 4.0: полное руководство / пер. с англ. М. : И. Д. Вильямс, 2020. 1056 с.

10. Каргин Н. С., Гурин Н. И. Извлечение основного содержимого из веб-страниц на основе анализа

структуры ical-файлов, с помощью которых поддерживается импорт сведений в наиболее распространенные календари. Экспериментально проверена интеграция данных с сервисами Google Calendar и Яндекс Календарь. Созданное приложение может использоваться для расширения функционала информационных систем сопровождения учебного процесса за счет возможностей выгрузки данных в удобный для пользователя формат.

References

1. Budantsev D. V. Digitalization in Education: A Review of Russian Scientific Publications. Molodoi uchenyi. 2020. No. 27. P. 120-127. (In Russian).

2. Zenkov A. R. Tsifrovizatsiia obrazovaniia: naprav-leniia, vozmozhnosti, riski. Proceedings of Voronezh State University. Series: Problems of Higher Education. 2020. No. i. P. 52-55. (In Russian).

3. Shakiryanov E. D., Chudinov V. V. Information System to Support the Development of the Main Professional Educational Programs. Vestnik UGNTU. Nauka, obrazovanie, ekonomika. Seriia: Ekonomika. 2019. No. 4. P. 1S1-1SS. (In Russian).

4. Sukhodolova E. M. Information System as the Basis for Effective University Management. Mir nauki, kultury, obrazovaniia. 2021. No. 2. P. 353-35б. (In Russian).

5. Mironova L. I., Alekhin V. N., Al-Mahfadi M. A. A. et. al. Improving the University's Information and Educational Environment in the Context of the Country's Economy Digitalization. Russian Journal of Construction Science and Technology. 202i. Vol. 7, No. i. P. 5-15.

6. Shefer O. R., Lebedeva T. N., Nosova L. S. Automated Information System of Higher Education: Status and Prospects. Scientific and Technical Information Processing. 2020. No. б. P. 27-32. (In Russian).

7. Barysheva E. N., Dunaev V. V. Development Export Function of a University Timetable According to the International Data Format Icalendar. Vestnik of Samara University. Economics and Management. 20i6. No. 3. P. 102-107. (In Russian).

S. Donetskov A. M. Vyvod informatsii o raspisanii uchebnykh zaniatii vuza v programme "Raspisanie". Modern Information Technologies and IT-Education. 2010. Vol. б, No. 1. P. 29б-305. (In Russian).

9. Schildt G. C# 4.0: The Complete Reference. Trans. from English. Moscow : I. D. Williams, 2020. i056 p. (In Russian).

10. Kargin N. S., Gurin N. I. Extracting the Main Content from Web Pages by Analysing the Visual Characteristics of the Elements and Converting to the JSON Format. Trudy BGTU. Seriia 3: Fiziko-matemati-

визуальных характеристик элементов и преобра- cheskie nauki i informatika. 2021. No. 1. P. 54-60.

зования в JSON формат // Труды БГТУ. Серия 3: (In Russian).

Физико-математические науки и информатика. 2021. № 1. С. 54-60.

Информация об авторах

Е. О. Шершнева - кандидат технических наук, доцент.

Н. С. Веремчук - кандидат физико -математических наук, доцент.

В. С. Тихомиров - студент.

Information about the authors

E. O. Shershneva - Candidate of Sciences (Engineering), Associate Professor.

N. S. Veremchuk - Candidate of Sciences (Physics and Mathematics), Associate Professor. V. S. Tikhomirov - Student.

i Надоели баннеры? Вы всегда можете отключить рекламу.