Электронный научный журнал "Математическое моделирование, компьютерный и натурный эксперимент в естественных науках" http://mathmod.esrae.ru/ URL статьи: mathmod.esrae.ru/46-190 Ссылка для цитирования этой статьи:
Грязнова А.В., Панкратов И.А. Автоматизация учёта публикационной активности сотрудников кафедры // Математическое моделирование, компьютерный и натурный эксперимент в естественных науках. 2024 № 2_
АВТОМАТИЗАЦИЯ УЧЁТА ПУБЛИКАЦИОННОЙ АКТИВНОСТИ
СОТРУДНИКОВ КАФЕДРЫ
Грязнова А.В.1, Панкратов И.А.2 1 Саратовский национальный исследовательский государственный университет
им. Н.Г. Чернышевского, Россия, Саратов, [email protected] 2Саратовский национальный исследовательский государственный университет им. Н.Г. Чернышевского, Россия, Саратов, [email protected]
AUTOMATED ACCOUNTING OF THE UNIVERSITY DEPARTMENT
STAFF PUBLICATION ACTIVITY
Gryaznova A.V.1, Pankratov I.A2 1Saratov State University, Russia, Saratov, [email protected] 2Saratov State University, Russia, Saratov, [email protected]
Аннотация. В работе построена информационная система для учёта публикаций сотрудников вузовской кафедры. Для хранения данных использована реляционная СУБД PostgreSQL. Разработанное веб-приложение позволяет частично автоматизировать работу вузовской кафедры.
Ключевые слова: научная публикация, учёт, база данных, автоматизация.
Abstract. The information system for accounting of the university department staff publication activity is built in the paper. Relational DBMS PostgreSQL was used for data storage. The web application developed in the paper allows partially automate the work of the university department.
Keywords: scientific publication, accounting, database, automation.
В настоящей работе была спроектирована и реализована реляционная база данных (БД) для хранения научных публикаций сотрудников вузовской кафедры, а также создана информационная система (ИС) [1], которая позволяет рассчитывать некоторые наукометрические показатели [2] для анализа публикационной активности сотрудников кафедры.
Для оценки публикационной активности сотрудников СГУ имени Н.Г. Чернышевского выбран формат реализации ИС в виде веб-сайта в сети
УДК 004.65:004.91
DOI: 10.24412/2541 -9269-2024-2-22-32
Интернет. Начальной точкой проектирования ИС является построение диаграммы прецедентов [3, 4]. В качестве актёров выбраны 2 участника системы: пользователи (сотрудники учебного заведения), администратор веб-сайта.
Диаграмма прецедентов, показанная на рис. 1, построена на основе изучения пожеланий сотрудников данного учебного заведения, потому что они являются основной целевой аудиторией веб-сайта [5]. Функциями ИС являются:
- загрузка и удаление научной работы;
- авторизация в системе;
- просмотр загруженных научных работ сотрудников кафедры;
- просмотр наукометрических показателей публикационной активности (в виде графиков и таблиц).
Рис. 1. Диаграмма прецедентов
С помощью диаграммы прецедентов (вариантов использования) выявлены основные пользователи системы и задачи, которые данная система должна решать. С помощью диаграммы деятельности была описана последовательность действий для каждого прецедента, необходимая для достижения поставленной цели.
На рис. 2 показан процесс авторизации. При этом создается программный токен, который выдаётся пользователю после успешной авторизации и является ключом для доступа к службам.
Ж Ж Ж Ж
Рис. 2. Диаграмма последовательности (авторизация)
Поток событий для авторизации выглядит так:
1. Пользователь пытается войти в систему.
2. Проверка актуальности сессии пользователя.
3. Если время сессии истекло, то сервер авторизации переадресовывает на страницу авторизации пользователя.
4. Пользователь вводит пару логин/пароль.
5. Введенная пара значений проходит в системе аутентификацию.
6. В результате успешной проверки логина/пароля система создает программный токен.
7. Личный кабинет сверяет токен.
8. В случае успешной проверки токена открывается главная страница вебсайта.
Еще одним потоком событий в системе является процесс добавления научных работ (НР) в базу данных спроектированной ИС, показанный на рис. 3. Для сбора наукометрических данных о публикациях используется система Google Scholar (Google Академия) посредством API (Application Programming Interface) [6]. Процесс обновления БД запускается автоматически раз в день.
X XX
Рис. 3. Диаграмма последовательности (добавление научных работ)
Поток событий для добавления научных работ выглядит так:
1. Система раз в сутки запускает процесс обновления БД научных работ.
2. Сервер добавления научных работ с помощью API отправляет запрос в Google Scholar.
3. Google Scholar в случае успешного взаимодействия отправляет список научных работ.
4. После преобразования полученных данных, формируется запрос на обновление БД с научными работами.
5. После обновления БД отправляется список публикаций на страницу вебсайта с научными работами.
XX X
Рис. 4 Диаграмма последовательности (сбор наукометрических показателей)
Поток событий для сбора наукометрических (НМ) показателей, показанный на рис. 4, выглядит так:
1. Пользователь выбирает необходимый список научных работ, по которым хочет посмотреть наукометрические показатели.
2. Сервер получает запрос с идентификаторами публикаций.
3. Сервер отправляет запрос на получение наукометрических показателей в Google Scholar.
4. Google Scholar возвращает запрашиваемые показатели.
5. После преобразования ответа, сервер отправляет наукометрические показатели на веб-сайт.
На рис. 5 показана диаграмма классов разработанной ИС, в её состав входят пять классов: публикации (publication), научные работники/авторы (author), статистические данные (statistics), факультет (faculcy) и кафедра (departament).
Рис. 5. Диаграмма классов
На диаграмме классов отображена связь наследования классов данных.
Интеграция с Google Scholar была успешно реализована с использованием API, что позволяет обеспечить взаимодействие между различными программами и системами. API предоставляет набор способов и правил для обмена данными между программами, что позволяет эффективно интегрировать различные информационные ресурсы в разрабатываемую систему.
Как показано на рис. 6, наша система выступает в роли потребителя данных, а API Google Scholar в роли интеграционной системы. Запросы и обмен
данными между этими системами осуществляются с помощью функций, классов, методов, структур и иногда констант, предоставляемых API Google Scholar.
Таким образом, благодаря интеграции с API Google Scholar наша информационная система получает доступ к данным из Google Scholar, таким как информация о научных публикациях, цитированиях и других наукометрических показателях. Это позволяет заполнить систему данными из внешнего источника, значительно расширяя ее функциональные возможности в области отслеживания и анализа научной активности сотрудников университета.
Такая интеграция позволяет автоматизировать процесс сбора и обработки данных, делая информацию из Google Scholar доступной и удобно интегрируемой в разрабатываемую систему. Это повышает эффективность и точность работы системы, обеспечивая быстрый и надежный доступ к актуальным данным о научной продуктивности сотрудников университета. Кроме того, благодаря использованию API, возможна дальнейшая расширяемость и доработка системы в будущем.
Рис. 6. Взаимодействие с API Google Scholar
Поток событий при взаимодействии с Google Scholar имеет вид:
1. Потребитель отправляет запрос в интеграционную систему для получения данных по автору и его научным работам.
2. Интеграционная система отправляет ответ потребителю в формате JSON.
3. Полученные данные потребитель записывает в БД, используя технологию Hibernate [7], в таблицу author.
4. Потребитель отправляет запрос в интеграционную систему для получения данных о работах автора. Количество запросов равно количеству работ.
5. Интеграционная система отправляет ответ потребителю в формате JSON.
6. Полученные данные потребитель записывает в БД, используя технологию Hibernate, в таблицу БД.
Для работы с базой данных была выбрана СУБД PostgreSQL [8], которая предоставляет надежное и эффективное хранение и управление данными. Заметим, что ранее один из авторов настоящей статьи использовал нереляционный подход [9] к хранению данных о научных публикациях в работах [10-12].
Разработанная база данных имеет структуру, показанную на рис. 7. Она включает в себя 5 таблиц, содержащих информацию об авторах, научных работах и статистике за определенный год. Таблицы связаны между собой через поле author_username, что обеспечивает эффективное хранение и связь данных.
Для обеспечения работы с преобразованием данных и их записью в базу использовалась технология Hibernate. Это популярный фреймворк для языка Java, который обеспечивает прозрачное сохранение объектов Java в базе данных. Hibernate позволяет устанавливать эффективную связь между классами Java и структурой таблиц в базе данных, что упрощает и ускоряет разработку приложений.
statistic
departmentjd:id ■ •■■ departments bigint
year smallint
. citation integer
, annuaLgrowth
publication
¿7 name Уеаг
. author username . citation
• -1? И
author_username:user_name
(»-I
Рис. 7. Схема базы данных
Веб-приложение реализовано на языке программирования Java [13], оно состоит из следующих частей:
- config - файл, где хранятся конфигурационные классы для создания spring-объектов [14];
- controller - файл, который содержит класс с эндпоинтом;
- converters - файл, содержащий классы для конвертирования JSON-объектов в строки и наоборот и сохранения этих строк в БД;
- DTO - файл, содержащий классы для передачи данных по сети;
- entity - файл с объектами, хранящимися в БД;
- repository - файл с объектами для работы с БД;
- service - служебный файл;
- utils - файл, который содержит утилитарные классы.
В корневом файле build.gradle.kts содержатся настройки для запуска проекта и необходимые зависимости. Этот файл представляет собой Kotlin DSL (Domain Specific Language) для описания сборки проекта с использованием инструмента Gradle. Здесь можно указать различные параметры конфигурации проекта, включая зависимости, плагины, репозитории и другие настройки, необходимые для сборки, тестирования и запуска приложения.
С использованием технологии Docker была развернута база данных в Docker-контейнере. Для этого был использован файл docker-compose.yml. Такой подход позволяет исключить необходимость загружать и устанавливать базы данных непосредственно на своем компьютере, а вместо этого создать контейнер, который содержит нужную технологию базы данных. Это облегчает процесс управления и запуска базы данных, обеспечивая изоляцию и переносимость в различные окружения.
Для того чтобы уменьшить время обработки данных в запросе в Google Scholar для получения данных по всем статьям автора используется многопоточность. Для этого в файле ..congif/AppConfiguration.java был создан сервис ExecutorService, который управляет потоками.
С использованием данных технологий было осуществлено заполнение базы данных информацией из системы Google Scholar. Это позволяет интегрировать актуальные и достоверные данные о цитировании научных публикаций преподавателей, что в свою очередь обеспечивает более точный и информативный анализ их научной активности.
С использованием технологии Apache Superset [15] были созданы интерактивные дашборды и отчеты на основе данных. Apache Superset осуществляет подключение к реализуемой базе данных для сбора информации, предоставляя возможность создания разнообразных дашбордов через интуитивно понятный веб-интерфейс.
В данной работе были построены сводные таблицы и различные виды диаграмм для визуализации данных и проведения их анализа. Эти инструменты позволяют более детально изучить и оценить различные аспекты активности преподавателей и научные результаты.
Для анализа количества цитирований были разработаны соответствующие дашборды:
- Среднее цитирование на одну публикацию по факультетам и кафедрам.
- Общий показатель цитирования всех преподавателей по факультетам.
- Прирост цитирования преподавателей по факультетам за год и т.д.
Общая таблица Индекс Хирша Цитирование Сотрудники О Иванов Иван
Среднее цитирование в год
ГиМ ИиП ДУиМЭ МатА МиКМ ТФиСА МТУиБА ЛиП МетО
Рис. 8. Среднее цитирование публикаций На рис. 8 представлена пузырьковая диаграмма, которая отображает среднее число цитирований на одну публикацию по факультетам и кафедрам. (Заметим, что речь идёт только о тех публикациях, которые были извлечены из Google Scholar.) Визуальное представление данных в таком виде позволяет наглядно увидеть соотношение среднего числа цитирований и сравнить его между различными факультетами и кафедрами. Заметно, что чем больше показатель цитирования, тем больше диаметр пузырька, что делает сравнение данных интуитивно понятным. Такой подход позволяет легче выявить различия в активности и видеть, насколько востребованы и ценны научные публикации сотрудников СГУ в разных областях знания.
Рис. 9. Цитирование сотрудников
На рис. 9 представлена сводная таблица, отображающая показатель цитирования некоторых сотрудников СГУ по факультетам и кафедрам. Эта таблица позволяет увидеть общие показатели цитирования (выделены жирным шрифтом), за последний год и за весь исследуемый период.
Представление данных в таком формате облегчает сравнение результатов и позволяет выявить тенденции в научной активности преподавателей. Дальнейшее развитие данной страницы предполагает наложение фильтров для данных, что упростит и улучшит анализ цитирования в зависимости от различных параметров, таких как факультет, кафедра, период и другие.
Таким образом, созданная в работе информационная система для учёта публикационной активности сотрудников содержит актуальные данные за последние несколько лет и может быть использована в работе кафедры математического и компьютерного моделирования СГУ, как и разработанная ранее система для автоматического построения отчётов о работе кафедры [16].
Литература
1. Мацяшек Л.А., Лионг Б.Л. Практическая программная инженерия на основе учебного примера. М.: Лаборатория знаний, 2020. 958 с.
2. Акоев М.А., Маркусова В.А., Москалева О.В., Писляков В.В. Руководство по наукометрии: индикаторы развития науки и технологии. Екатеринбург: Изд-во Урал. ун-та, 2014. 250 с.
3. Буч Г., Якобсон И., Рамбо Д. Введение в UML от создателей языка. М.: ДМК Пресс, 2015. 496 с.
4. Голенищев Э.П., Клименко И.В. Информационное обеспечение систем управления. Ростов н/д: Феникс, 2010. 320 с.
5. Маглинец Ю.А. Анализ требований к автоматизированным информационным системам. М.: ИНТУИТ, 2016. 191 с.
6. Google Scholar API URL: https://serpapi.com/google-scholar-api (дата обращения 04.11.2023).
7. Hibernate - ORM, JPA, JPQL. URL: http ://ïava-online. ru/hibernate-jpa. xhtml (дата обращения: 22.04.2024).
8. PostgreSQL - объектно-реляционная система управления базами данных. URL: https://web-creator.ru/articles/postgresql (дата обращения: 11.05.2024).
9. Фаулер М., Садаладж П. NoSQL. Новая методология разработки нереляционных баз данных. М.: ДМК-Пресс, 2013. 158 c
10. Блинков Ю.А., Панкратов И.А. Хранение и обработка библиографической информации с помощью NoSQL // Актуальные направления научных исследований XXI века: теория и практика. 2017. Т. 5. № 7, ч. 1 (33-1). С. 247249.
11. Блинков Ю.А., Панкратов И.А. Документоориентированное хранение и обработка библиографической информации // Актуальные направления научных исследований XXI века: теория и практика. 2017. Т. 5. № 8, ч. 1 (341). С. 63-66.
12. Блинков Ю.А., Панкратов И.А. Документо-ориентированное хранение и обработка научных публикаций // Математическое моделирование, компьютерный и натурный эксперимент в естественных науках. 2018. № 4. URL: mathmod.esrae.ru/20-81 (дата обращения: 25.06.2024).
13. Пьюривал С. Основы разработки веб-приложений. СПб.: Питер, 2015. 272 с.
14. Фреймворк Apache Maven. URL: http : //j ava-online. ru/maven-pom. xhtml (дата обращения: 29.04.2024).
15. Spring Framework Reference Documentation. URL: http s : //docs. spring. io/spring-framework/docs/3.2.x/spring-framework-reference/html/index.html (дата обращения: 14.04.2024).
16. Курдаков Е.В., Панкратов И.А. Автоматизация построения отчётов о работе кафедры // Математическое моделирование, компьютерный и натурный эксперимент в естественных науках, 2021. № 1. URL: mathmod.esrae.ru/33-124 (дата обращения: 26.06.2024).