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

Статья опубликована в рамках: CXXIV Международной научно-практической конференции «Научное сообщество студентов XXI столетия. ТЕХНИЧЕСКИЕ НАУКИ» (Россия, г. Новосибирск, 10 апреля 2023 г.)

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

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

Библиографическое описание:
Дащенко А.А. РАЗРАБОТКА ПРОГРАММНОГО ЛАБОРАТОРНОГО КОМПЛЕКСА «ФОРМАЛЬНЫЕ ГРАММАТИКИ» // Научное сообщество студентов XXI столетия. ТЕХНИЧЕСКИЕ НАУКИ: сб. ст. по мат. CXXIV междунар. студ. науч.-практ. конф. № 4(122). URL: https://sibac.info/archive/technic/4(122).pdf (дата обращения: 08.05.2024)
Проголосовать за статью
Конференция завершена
Эта статья набрала 78 голосов
Дипломы участников
Диплом Интернет-голосования

РАЗРАБОТКА ПРОГРАММНОГО ЛАБОРАТОРНОГО КОМПЛЕКСА «ФОРМАЛЬНЫЕ ГРАММАТИКИ»

Дащенко Артем Александрович

студент, кафедра электронных вычислительных машин, Вятский государственный университет,

РФ, г. Киров

Крутиков Александр Константинович

научный руководитель,

преподаватель, Вятский государственный университет,

РФ, г. Киров

DEVELOPMENT OF A SOFTWARE LABORATORY COMPLEX "FORMAL GRAMMARS"

 

Artem Dashchenko

student, Department of Electronic Computing Machines, Vyatka State University,

Russia, Kirov

Alexander Krutikov

scientific supervisor, lecturer, Vyatka State University,

Russia, Kirov

 

АННОТАЦИЯ

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

ABSTRACT

The article discusses the need to develop a software package for students to study topics related to formal grammars. Various aspects of the use of formal grammars, the architecture and structure of the software package being developed are considered, the modular structure, the description of the work of the complex, as well as the main tasks of modifying the existing version are given. The issues of using the complex in the educational process are considered.

 

Ключевые слова: формальные грамматики; учебный процесс; программная установка; программный комплекс, лабораторный комплекс.

Keywords: formal grammars; educational process; software installation; software package, laboratory complex.

 

Формальные грамматики являются способом описания некоторого формального языка. Фактически это выделение подмножеств из множества всех слов конечного алфавита. Двумя типами формальных грамматик являются распознающие и порождающие грамматики. Распознающие грамматики определяют является ли слово частью языка. Порождающие грамматики – задают набор правил, с помощью которых строятся слова некоторого языка [1, 2].

Аппарат формальных грамматик используется в языках высокого уровня, компиляторах, и является частью учебной программы студентов ИТ-направлений.

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

- клиент-серверная архитектура приложения;

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

- регистрация студентов в системе;

- авторизация пользователей;

- разделение прав доступа между студентами и преподавателем;

- создание и хранение конфигураций грамматик;

- валидация заданных строк при помощи хранимых грамматик;

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

Права доступа преподавателя:

- редактирование имён и паролей всех пользователей;

- создание/редактирование хранимых грамматик;

- назначение студентам заданий.

Права доступа студента:

- отправка решений к заданиям;

- редактирование своих имени и пароля.

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

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

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

Структура комплекса приведена на рисунке 1

 

Рисунок 1. Структура программного лабораторного комплекса

 

Структура базы данных представлена на рисунке 2.

 

Рисунок 2. Структура базы данных

 

Веб-приложение спроектировано и разработано с использованием следующих инструментов:

- серверная часть реализована на языке программирования PHP версии 8.2, с использованием фреймворка Laravel версии 10.

- тонкий клиент реализован на языке программирования JavaScript, с использованием фреймворка Vue.JS версии 3. Также, для верстки экранных форм использовались язык разметки HTML и каскадные таблицы стилей на языке SCSS с использованием фреймворка Tailwind.

- в качестве системы управления базой данных было использовано встраиваемое решение SQLite, которое значительно упростило локальную развёртку приложения [4].

Экранная форма работы программного комплекса представлена на рисунке 3.

 

Рисунок 3. Экранная форма работы программного комплекса

 

Разработка и модернизация комплекса на текущий момент продолжается. Добавляются отдельные модули для разработки преподавателем усложненных заданий для контекстно-свободных грамматик. Планируется использование лабораторного программного комплекса в учебном процессе студентов ИТ-специальностей.

 

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

  1. Лаздин А. В. Формальные языки, грамматики, автоматы – СПб: Университет ИТМО, 2019. – 99 с.
  2. Формальные грамматики и языки. Элементы теории трансляции: Учебное пособие для студентов II курса (издание третье, переработанное и дополненное). — М.: Издательский отдел факультета ВМиК МГУ им. М.В.Ломоносова (лицензия ИД № 05899 от 24.09.2001), 2009 — 115 с.
  3. Трехзвенная архитектура URL: https://portal.tpu.ru/SHARED/f/FAS/study/avis/lectures/cli-se.pdf (Дата обращения 01.04.2023)
  4. SQLLite URL: https://www.altlinux.org/SQLite (Дата обращения 01.04.2023)
Проголосовать за статью
Конференция завершена
Эта статья набрала 78 голосов
Дипломы участников
Диплом Интернет-голосования

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

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