Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемТатьяна Селина
1 Интерпретатор модели, не зависящей от платформы Парамонов В.В. Институт динамики систем и теории управления СО РАН, Иркутск Екатеринбург, 2006
2 Постановка задачи Рассматривается задача по созданию программных систем (ПС). Целью является создание программного инструментария для быстрой разработки достаточно сложных ПС. Значимыми факторами являются время и качество разработки. Создаваемая ПС также должна являться гибкой (в смысле модифицируемости), иметь возможность переноса на другую платформу функционирования с минимизацией временных и трудовых затрат. Основу документации разработчика должна формировать модель ПС, из которой она была реально получена.
3 Подход к созданию Подход к разработке ПС базируется на отделении спецификации функций от их реализации на конкретных программных платформах. За основу взята методика на основе архитектуры MDA - Model Driven Architecture
4 Описание подхода В основе подхода лежат понятия: модели, на зависящей от платформы – Platform Independent Model (PIM); модели, зависящей от платформы – Platform Specific Model (PSM). Преобразование PIM в PSM осуществляется посредством формального представления программной платформы и методов реализации.
5 Генерация ядра ПС PSM Преобразование PIM Модель платформы реализации Построение UML диаграммы проектируемой ПС. Преобразование в платформо-зависимую модель.
6 PIM-модель ПС
7 Схема работы интерпретатора XMI Набор правил Шаблон кода или Программная библиотека Формализованные знания о платформе функционирования
8 Пример правил распознавания hie_class(Owner, Class, ClassName):- pim_class(_, Owner, _, Class), pim_name(Class, ClassName). hie_class_attr(Owner, Class, Attr, ClassName, AttrName):- hie_class(Owner, Class, ClassName), pim_attr(_,Class,_,_,_,Attr), pim_name(Attr, AttrName). Распознавание класса Распознавание атрибута класса XMI UML
9 Дополнение ограничениями В качестве языка для задания ограничений модели используется OCL (Object Constrain Language). OCL является частью спецификации UML. OCL - формальный язык ограничений содержит необходимую строгость высказывания и может быть достаточно легко проинтерпретирован как человеком, так и вычислительной системой.
10 Возможности интерпретации ограничений в ПС context Person inv: self.dep_time>=self.check_in_time ALTER TABLE PERSON ADD CONSTRAINT DEP_TIME >= CHECK_IN_TIME if (!(this.dep_time>=this.check_in_time)){ alert(...Сообщение об ошибке...) } Класс в UML OCL-ограничение Ограничение на базу данных Программный код для пользовательского интерфейса
11 Выводы Разрабатывается программная технология интерпретации PIM- моделей ПС; Создаются методики анализа и обработки формализованных ограничений в контексте интерпретации модели; Практическая апробация технологии.
12 Апробация программной технологии Информационная система «Канц-регистр» Диаграмма, состоящая из 101 класса привела к –91 таблице; –8000 строк программного кода методов классов. Цикл генерации – 1 минута. Время настройки пользовательского интерфейса 6 чел/мес. Общее время разработки 12 чел/мес.
13 Схема реализации генератора
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.