Реалізація чат-ботів із поведінкою, що керується скінченним автоматом, у графічному конструкторі

dc.contributor.authorГулаєва, Наталія
dc.contributor.authorКобєлєв, Михайло
dc.date.accessioned2023-03-30T12:38:16Z
dc.date.available2023-03-30T12:38:16Z
dc.date.issued2022
dc.descriptionFinite state machine (FSM) is a powerful tool to model object behavior. Using FSM and its extensions to model program behavior followed by the automatic generation of executable code is the approach encouraged by the model-driven development (MDD) – a software development methodology based on the concepts of model and model transformation. In this paper, a brief overview of FSM-based common methods to model and develop software programs of any nature is given. These methods include David Harel’s statecharts, UML State Machines, Virtual Finite State Machine, etc. Examples of all types of software systems (transformational, interactive, reactive) implemented using FSM are cited. Chat-bots as an example of an interactive software system are considered: concept, classification methods, implementation techniques. A graphical designer of rule-based chat-bots to be integrated in the messenger Telegram is developed and implemented. In this designer, chat-bot behavior is modeled using FSM. Formal method to model a rule-based chat-bot using FSM is provided. The FSM concept is extended by disabled transitions to save history of transition changes made during the FSM design process. A brief overview of code generation methods from FSM specification is done; advantages and disadvantages of the most popular approaches are considered. Dynamic approach to generate code by FSM specification saved in DB is proposed. To implement this approach, document MongoDB and in-memory key-value Redis DB are used; FSM is kept as a JSON-document. This approach is efficient in flexibility, speed and memory needs. Architecture diagram of developed chat-bot graphical designer is given. It has the microservice architecture. The FSM model-to-code transformation is carried out by the bot-execution service written using compiled language Go. Other services include the front-end (UI for end-user, CRUD API for chat-bot) and the bot-management (synchronization of document and key-value databases) services.en_US
dc.description.abstractОкреслено основні методи використання скінченних автоматів (СА) для моделювання й програмної реалізації поведінки об’єктів різної природи. Як приклад інтерактивної програми розглянуто чат-боти: основні поняття, методи класифікації, способи реалізації. Запропоновано розширення СА для моделювання поведінки текстового чат-бота, побудованого на правилах. Дано короткий огляд методів перетворення СА на програмний код у різних парадигмах програмування. Запропоновано динамічний підхід для виконання такого перетворення, зі збереженням специфікації СА в базі даних. Розроблено графічний конструктор, який дає змогу створювати модель чат-бота, базованого на правилах, у вигляді скінченного автомата та виконує трансформацію побудованої моделі для безпосереднього використання в месенджер-платформі Telegram.uk_UA
dc.identifier.citationГулаєва Н. М. Реалізація чат-ботів із поведінкою, що керується скінченним автоматом, у графічному конструкторі / Гулаєва Н. М., Кобєлєв М. Д. // Наукові записки НаУКМА. Комп'ютерні науки. - 2022. - Т. 5. - С. 31-40. - https://doi.org/10.18523/2617-3808.2022.5.31-40uk_UA
dc.identifier.issn2617-3808
dc.identifier.issn2617-7323
dc.identifier.urihttps://doi.org/10.18523/2617-3808.2022.5.31-40
dc.identifier.urihttps://ekmair.ukma.edu.ua/handle/123456789/24871
dc.language.isouk
dc.relation.sourceНаукові записки НаУКМА. Комп'ютерні наукиuk_UA
dc.statusfirst publisheden_US
dc.subjectскінченний автоматuk_UA
dc.subjectСАuk_UA
dc.subjectmodel driven developmentuk_UA
dc.subjectгенерація кодаuk_UA
dc.subjectчат-ботuk_UA
dc.subjectTelegram месенджерuk_UA
dc.subjectмікросервісна архітектураuk_UA
dc.subjectдокументна база данихuk_UA
dc.subjectрезидентна база данихuk_UA
dc.subjectстаттяuk_UA
dc.subjectfinite state machineen_US
dc.subjectFSMen_US
dc.subjectmodel driven developmenten_US
dc.subjectcode generationen_US
dc.subjectchat-boten_US
dc.subjectTelegram-messengeren_US
dc.subjectmicroservice architectureen_US
dc.subjectdocument databaseen_US
dc.subjectin-memory databaseen_US
dc.titleРеалізація чат-ботів із поведінкою, що керується скінченним автоматом, у графічному конструкторіuk_UA
dc.title.alternativeImplementation of fsm based chat-bots in a graphical designeren_US
dc.typeArticleen_US
Files
Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Hulaieva_Kobieliev_Realizatsiia_chat-botiv_iz_povedinkoiu_shcho_keruietsia_skinchennym_avtomatom_u_hrafichnomu_konstruktori.pdf
Size:
334.19 KB
Format:
Adobe Portable Document Format
License bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
1.71 KB
Format:
Item-specific license agreed upon to submission
Description: