Аннотация:
В статье рассмотрены особенности применения технологий разработки программных систем на основе модельно-ориентированного подхода: Model Driven Software Development (MDSD), Model Driven Architecture (MDA) и Model Driven Development (MDD). Описаны преимущества использования подходов в промышленности. Основной акцент сделан на проектирование систем, автоматическую генерацию кода больших систем, верификацию, доказательство свойств систем и уменьшение плотности ошибок. Приведены недостатки использования данного подхода, одним из которых является различная степень детальности модели и реальной реализованной системы на языке программирования. В работе предлагается подход, характерный для систем, имеющих многоуровневое представление, связанное с детализацией функциональности приложения до уровня, на котором осуществляется прямая генерация корректного кода. Подход позволяет детализировать модель до уровня реального кода системы, при этом сохранить проверенную семантику модели и обеспечить проверку всей детальной модели. Детализация проводится как по потоку управления, так и по потоку данных. Представлены шаги по преобразованию абстрактных структур данных (в том числе транзакций, сигналов и их параметров) в структуры данных, используемых в реализации систем. Приведена грамматика языка задания правил преобразования структур данных абстрактной модели в детальные структуры данных реальной системы и общая схема преобразования. Приведены результаты применения предложенного метода в промышленной технологии.
Статья представляет собой расширенную версию доклада на VI Международном семинаре “Program Semantics, Specification and Verification: Theory and Applications”, Казань, 2015.
Статья публикуется в авторской редакции.
Ключевые слова:модельно-ориентированный подход; многоуровневые модели приложения; спецификация моделей по управлению и структурам данных; верификация моделей; подстановки, сохраняющие корректность доказанных свойств.