Разработка, управляемая моделями
Парадигма «разработка, управляемая моделями» (Model-Driven development MDD) — это новая парадигма разработки программного обеспечения, управляемая и поддерживаемая методами архитектуры Model Driven Architecture (MDA). Разработка на основе моделей это наиболее современный подход к проектированию программных средств, включая и информационные системы.
Одна из главных особенностей MDD/MDA — использование моделей в качестве ключевых артефактов. Модель — это описание системы с определенной точки зрения, с опущением несущественных деталей, с тем чтобы более четко выделить характеристики, представляющие интерес. В MDD/MDA модели используются не просто как представления, а как исходные артефакты, из которых путем трансформаций генерируются эффективные реализации.
Хорошо известное CASE — средство Rational Rose и его последователь Rational Rose XDE(расширенная среда разработки) нашли широкое применение при проектировании информационных систем и разработки их программного обеспечения.
Интегрированная среда разработки Rational Rose поддерживает четыре представления (view) проектируемой системы: представление вариантов использования, логическое представление, представление компонентов, представление размещения.
Однако со временем оказалось, что четырех этих представлений, используемых в Rational Rose, стало не достаточно для полной поддержки разработки программного обеспечения управляемой моделями — MDD/MDA.
В основе парадигмы «Разработка на основе моделей» Model Driven Architecture лежит способ организации и управления архитектурой проектируемой системы, поддерживаемый автоматизированными инструментальными средствами для создания(определения) моделей, а также для облегчения преобразований между различными типами моделей. Для построения моделей в рамках MDA широко используется унифицированный язык моделирования (UML)
Основными видами(уровнями) моделей концепции MDD/MDA являются:
- Независимая от вычислений модель (Computation-Independent Model — CIM) — рассматривает среду и требования к системе, не рассматривая ее структуру или внутренние процессы;
- Независимая от платформы модель (Platform-Independent Model — PIM) — рассматривает операции в системе без подробностей, связанных со специфической платформой;
- Определяемая платформой модель (Platform-Specific Model — PSM) — включает в PIM детали, связанные со специфической платформой;
- Модель платформы (Platform Model — PM — определяет, для использования с PIM, технические концепциями, элементы и сервисы, которые составляют определенную платформу;
- Модель преобразования (Transformation Model — ТМ) — определяет и специфицирует преобразования, необходимые для перехода от определенной PIM к определенной PSM.
Наиболее полную поддержку разработку на основе моделей MDD/MDA обеспечивает более современная интегрированная среда разработки (IDE) Rational Software Architect(RSA) – результат эволюции Rational Rose и Rational Rose XDE.
RSA это современная интегрированная среда разработки информационных систем и их программного обеспечения. В данной статье приводятся рекомендации по применению Rational Software Architect(RSA) в процессе проектирования информационных систем.
Семейство продуктов Rational Software Architect предоставляет средства работы с архитектурой и эскизами, охватывающие все этапы жизненного цикла приложения: начальный замысел, определение и анализ функциональных требований, разработка архитектуры, проектирование деталей компонентов системы более низкого слоя абстрагирования, планирование и автоматизация развертывания.
Современная версия программы IBM Rational Software Architect Designer 9.7 обеспечивает функции управления требованиями, построение UML моделей и диаграмм, усовершенствованную поддержку модели и нотации бизнес-процессов (BPMN), автоматический или ручной экспорт моделей и многое другое.
При разработке моделей информационной системы можно использовать различные языки моделирования и проектирования, поддерживаемые Rational Software Architect Designer, например: работа с эскизами, нотация и модель бизнес-процессов (BPMN 2.0), язык моделирования UML 2.*, а также специализированные расширения UML, такие как SoaML и UPIA.
Кроме того, интегрированная среда разработки Rational Software Architect позволяет широко использовать шаблоны проектирования, преобразование моделей, обеспечивая новый подход к реализации стиля разработки MDA, а также генерации объектного кода на выбранном языке программирования.
В ходе работы над проектом можно проверять готовность решений к развертыванию. Для этого предусмотрены функции встроенной платформы технического обслуживания и архитектуры развертывания. Методологической основой использования IBM Rational Software Architect, по-прежнему, является IBM Rational Unified Process (RUP).
Существует несколько разных подходов, которые можно использовать для проектирования систем и приложений с помощью моделей. Выбор подхода и моделей зависит от конкретной проблемной области и природы решаемой задачи.
Наиболее часто на практике используются:
- модели вариантов использования;
- аналитическая модель;
- конструктивная модель.
Модели вариантов использования содержат подробную информацию о поведении разрабатываемой программной системы или приложения, описывают требования к системе в терминах функциональности, которая должна быть обеспечена для достижения поставленных пользователем целей или решения задачи пользователя. Варианты использования описывают основные функции, которые можно выделить из требований, и ценность результатов для пользователей.
Аналитическая модель описывает структуру моделируемой системы или приложения. Она состоит из диаграмм классов и диаграмм последовательностей, которые описывают логическую реализацию функциональных требований, определенных в модели варианта использования.
Конструктивная модель строится на основе аналитической модели путем более детального описания структуры системы и способов ее реализации. Классы, определенные в аналитической модели, уточняются элементами реализации.
Кроме моделей в процессе разработки информационных систем создаются и диаграммы UML. Разница между UML-моделями и UML — диаграммами заключается в следующем. Модели — это абстрактные представления системы. Диаграммы UML иллюстрируют количественные аспекты системы, которые можно описать визуально, такие как отношения, поведение, структура и функциональность. Модели часто содержат одну или несколько диаграмм, которые графически отображают аспект модели или подмножество элементов модели.
Построение UML- моделей в RSA
В первой статье этого цикла мы описывали интегрированную среду разработки Rational Software Architect, обеспечивающую возможность визуального моделирования проектируемой информационной системы на языке UML, а также реализацию функций трансформации моделей и генерации кода на выбранном языке программирования, составляющих основу парадигмы «Разработка на основе моделей».
Rational Software Architect (RSA) это интегрированное средство проектирования и разработки, которое использует преимущества UML-разработки на основе моделей, позволяет создавать приложения и сервисы с практичной архитектурой. Данный инструмент поддерживает стандарт UML 2.0 и более.
Проектирование информационных систем с помощью RSA осуществляется путем построения UML моделей. Технология построения моделей и диаграмм на языке UML в RSA во многом схожа с методикой построения диаграмм в Rational Rose. Отличием является то, что RSA имеет несколько другой интерфейс и отличные от Rational Rose представления.
Итак, разработка на основе моделей при проектировании информационных систем с помощью RSA осуществляется по следующей методике(технологии).
Запустите Rational Software Architect. Для этого в меню Пуск выберите пункт > Программы > IBM Rational > IBM Rational Software Architect > Rational Software Architect;
В открывшемся диалоговом окне нажмите OK для выбора настроек по умолчанию.
Создайте UML-проект, для чего:
- в меню модуля выберите File > New > Project > Other(« Файл» > « Создать» > « Проект»);
- далее выберите тип проекта, например, UML Project и нажмите Next;
- введите имя проекта, например, myModelProject и нажмите кнопку Next.
Вслед за созданием проекта проектирование информационных систем с RSA в соответствие с MDD осуществляется на основе UML моделей. Для создания модели выполните — « Файл» > « Создать» > « Модель» . Появляется окно мастера создания моделей, показанное на рисунке.

Из данного окна можно:
- создать новую модель по стандартному шаблону, нажмите Create a new model from stsndart template (Создать новую модель по стандартному шаблону) и щелкните Next(Далее);
- создать модель из существующей модели, выбрав эту модель в поле «Выбрать файл модели», задав ей имя в поле File name и местоположение в поле Destination folder(или кнопка Browse) и нажав кнопку Next можно следующей странице «Возможности модели» выбрать тип отображаемых возможностей модели, по завершении щелкните кнопку Finish( «Готово») ;
- создать модель из шаблона, для чего в разделе «Категории» выберите категорию шаблона, в разделе Templates «Шаблоны» выберите шаблон для использования, задайте новой модели имя, местоположение и щелкните кнопку Next(Далее), в зависимости от выбранного шаблона заполните информацию на следующих страницах мастера.
По завершению действий нажмите кнопку Finish(Готово). Вновь созданная модель добавляется в проект и отображается в представлении Project Explorer(Model Explorer). Один из возможных вариантов созданной модели типа Use Case Model показан на следующем рисунке.

Другой вариант модели тапа Use Case Model, созданный в процессе проектирования информационных систем с RSA,показан на следующем рисунке. Отличие состоит в наборе открытых окон интерфейса среды разработки.

Далее можно добавить элементы модели в UML — модель, чтобы они стали частью модели, но не были частью диаграммы, или можно добавить элементы в диаграмму, и в этом случае они будут добавлены в модель, а также в диаграмму.
Для этого щелкните правой кнопкой мыши на имени выбранной модели в представлении Project Explorer или диаграмму или элемент в редакторе диаграмм; затем нажмите «Добавить UML» и выберите тип элемента. Если в редакторе открыта диаграмма, вы можете перетаскивать элементы из палитры на диаграмму. Введите имя нового элемента и нажмите кнопку Enter. Для того, чтобы исследовать модель из диаграммы, можно использовать вкладку палитры Узнать.
Таким образом, разработка на основе моделей с помощью Rational Software Architect позволяет создать любое число представлений о проектируемой информационной систенмы, что отличае ее от известного Rational Rose.
Созданные в процессе проектирования информационных систем UML — модели в Rational Software Architect необходимо дополнить диаграммами, детализируемыми построенные модели. Как это можно сделать смотрите в стате «Построение UML- диаграмм в IBM Rational Software Architect«.
Обучение применению Rational Software Architect
Первоначальное самостоятельное обучение применения можно осуществить на основе оригинальных материалов обучающего центра фирмы IBM Knowledge Center в подразделе «Обзор» раздела «IBM Rational Software Architect документация».
Разработка на основе моделей с помощью Rational Software Architect достаточно подробно рассматривается в курсе «Использование IBM Rational Software Architect и концепций управляемой моделью архитектуры (MDA) для проектирования информационных систем» в Учебном центре «Интерфейс«. Курс ориентирован на архитекторов, системных аналитиков и проектировщиков, которые отвечают за определение и поддержку модели и проекта системы (или программы).
Применение IBM Rational Software Architect для визуального моделирования и архитектурного проектирования можно освоить на одноименном курсе(тренинге) «Визуальное моделирование с использованием UML v2 Применение IBM Rational Software Architect для визуального моделирования и архитектурного проектирования«
В ходе данного тренинга слушатели познакомятся с инструментальным средством IBM Rational Software Architect (одной из последних версий) в области моделирования информационных систем, обработки моделей, проектирования с использованием паттернов и трансформаций, статического и динамического исследования существующего кода.
Курс «Разработка объектно-ориентированных информационных систем на основе UML 2.0 c использованием инструментария IBM Rational Software Architect». Цена: 27 675 руб. Курс ориентирован на руководителей IT — служб, CIO и MIS, менеджеров проектов разработки программных и информационных систем, корпоративных программистов, разработчиков баз данных и интерфейсов к базам данных, системных аналитиков и бизнес-аналитиков, ставящих перед собою цели получения информации в области современных технологий разработки программных проектов и моделей бизнес-систем.
Программа курса Центра IT Обучения «Institutio» FIM02 «Моделирование на UML 2 с помощью IBM Rational Software Architect» позволяет научиться выполнять построение моделей и диаграмм непосредственно в RSA.
Все услуги в области обучения и соответствующие программы курсов подробно представлены в рамках нашего глобального проекта, развернутого на ресурсах Центра IT Обучения «Institutio».
Заключение
В процессе проектирования информационных систем широкое применение нашла новая парадигма – “разработка управляемая моделями” MDD, в основе которой лежит способ организации и управления архитектурой проектируемой системы MDA.
Наиболее полную поддержку MDD обеспечивает современная интегрированная среда разработки Rational Software Architect – результат эволюцииRational Rose и Rational Rose XDE.
Разработка на основе моделей с помощью Rational Software Architect при полном использовании ресурсов этого продукта позволяет создавать информационные системы любой сложности на профессиональном уровне. Простое описание технологии из нашей статьи показывает как можно использовать Rational Software Architect в MDD.
Главной особенностью Rational Software Architect является то, что этот продукт обеспечивает полную поддержку современной парадигмы управляемой моделями разработки (MDD). Интерфейс и инфраструктура разработки на основе ресурсов в Rational Software Architect дополняет MDD, позволяя повторное использование моделей, а также их трансформацию.
Связанные материалы
Смотрите также…
- Методологии проектирования информационных систем
- Методы проектирования информационных систем
- Инструментальные средства проектирования информационных систем
- Статистический индекс производительности информационной системы
- Построение UML- диаграмм в IBM Rational Software Architect
- Построение диаграммы классов в StarUML
Вот пока и все. Удачи в совершенствовании знаний и умений в использовании MDD при проектировании информационных систем с помощью RSA.