Аннотация:
Несмотря на широкое использование микросервисной архитектуры в разработке программных систем, в настоящее время не существует формализованного подхода, обеспечивающего согласованное и гарантированное взаимодействие микросервисов на уровне передаваемых данных, что приводит к возникновению интеграционных ошибок и усложняет сопровождение распределенных систем. В работе предложен подход к организации взаимодействия микросервисов на основе онтологического моделирования, обеспечивающего формализацию структур данных и автоматизированную валидацию сообщений. Предложен метод преобразования в онтологических моделей формальных описаний схем данных основанный на спецификации схем GraphQL. Он позволяет автоматизировать процесс валидации данных и снизить количество интеграционных ошибок. Разработана также онтологическая модель, обеспечивающая анализ зависимостей между микросервисами и механизм валидации контрактов сообщений.
Практическая значимость работы заключается в достижении согласованного описания микросервисов, операций и форматов сообщений в результате использования онтологического подхода. Представление онтологии в виде графа позволяет анализировать зависимости между микросервисами и упрощает сопровождение крупных распределенных систем.