RUS  ENG
Полная версия
ЖУРНАЛЫ // Моделирование и анализ информационных систем // Архив

Модел. и анализ информ. систем, 2018, том 25, номер 6, страницы 623–636 (Mi mais653)

Семантика, спецификация и верификация программ

Translation from Event-B into Eiffel

[Перевод моделей Event-B в Eiffel]

S. Reznikova, V. Rivera, J. Y. Lee, M. Mazzara

Innopolis University, 1 Universitetskaya St., Innopolis 420500, Russia

Аннотация: Формальные языки моделирования играют важную роль в разработке программного обеспечения, так как позволяют пользователям, во-первых, определять функциональные требования, которые также служат документацией для проекта, а во-вторых, доказывать корректность свойств систем, что особенно важно для критических систем. Однако не существует четкого понимания того, как сопоставить формальную модель и определенный язык программирования. В качестве решения данной проблемы авторы статьи предлагают использовать возможность source-to-source соответствия между моделями, описанными на языке Event-B (языке моделирования для реактивных приложений и систем), и программами на объектно-ориентированном языке программирования Eiffel. Предложенное решение не только автоматически генерирует соответствующий модели на Event-B код на Eiffel, но также переводит свойства модели в виде контрактов. Контракты соответствуют принципу Design-by-Contract и нативно поддерживаются в Eiffel. Реализация решения доступна как плагин EB2Eiffel в Rodin (среде разработки для Event-B). Таким образом, пользователи могут разрабатывать различные системы, начиная с моделирования функциональных требований (свойств) в Event-B, затем формально доказывая корректность этих свойств в Rodin и, наконец, используя EB2Eiffel для перевода модели на язык программирования. Используя Eiffel, пользователи могут расширять и модифицировать реализацию модели и доказывать корректность измененной модели относительно ее оригинальной, изначально переведенной версии. Также в статье описан процесс тестирования EB2Eiffel разными моделями, написанными на Event-B, и представлены ограничения плагина. Статья публикуется в авторской редакции.

Ключевые слова: пошаговое улучшение систем, Design-by-Contract, формальное моделирование, реактивные приложения, Event-B, Eiffel.

УДК: 519.987

Поступила в редакцию: 10.09.2018
Исправленный вариант: 10.10.2018
Принята в печать: 01.11.2018

Язык публикации: английский

DOI: 10.18255/1818-1015-623-636



© МИАН, 2024