Описание Rational Software Architect for WebSphere Software 7.5

Источник: developerworks
Стив Арнольд, старший ИТ-специалист, IBM

В данной статье речь пойдет о новых функциях моделирования и преобразования моделей в IBM Rational Software Architect for WebSphere Software Version 7.5.

Обзор Rational Software Architect for WebSphere Software V7.5

Программный пакет IBM Rational Software Architect for WebSphere версии 7.5 представляет собой синхронизированную версию платформы IBM Rational Modeling Platform, созданной на базе Eclipse V3.4. Эта версия построена на трех основных принципах:

  • абстракция: принципиальное моделирование с особым акцентом на моделирование ИТ-ресурсов и поддержку DSL;
  • автоматизация: преобразования EJB3 (технология Enterprise Java Beans) и JPA (Java Persistence API), усовершенствованные средства разработки преобразований, архитектурное управление SOA (Service-Oriented Architecture, сервис-ориентированной архитектурой) и интеграция с IBM Rational Asset Manager;
  • упрощение: разрезы и средства UML, интеграция с IBM Rational Team Concert с функцией совместной отладки и генерацией BIRT-отчетов (Business Intelligence and Reporting Tools, инструменты бизнес-аналитики и создания отчетов).

Далее в статье мы подробно рассмотрим каждый из этих принципов и расскажем о некоторых новых ключевых функциях программного продукта Rational Software Architect for WebSphere Software.

В начале рассмотрим некоторые основные преимущества, предоставляемые этой версией.

  • Более высокая динамичность и производительность моделирования и улучшенный обмен информацией со всеми заинтересованными сторонами проекта:благодаря использованию новых функций для настройки "необходимого и достаточного" числа UML-элементов для представления в наборе инструментов, быстрому и легкому созданию языков для моделирования предметных областей на базе UML, которые отражают специфические аспекты бизнеса организации, генерации всего необходимого инструментария для таких языков нажатием одной кнопки.
  • Более эффективный обмен информацией между стадиями разработки и эксплуатации: благодаря использованию новых функций моделирования ИТ-ресурсов можно обнаружить потенциальные проблемы развертывания на более ранних стадиях и организовать многократное использование передовых методов настройки во всей организации.
  • Экономия времени за счет многократного использования архитектур и моделей: благодаря возможности рассматривать UML-модели (или их подмножества), а также топологии и шаблоны ИТ-ресурсов как компоновочные архитектурные блоки посредством публикации, поиска и загрузки этих блоков в Rational Asset Manager.
  • Повышение производительности при помощи паттернов и преобразований: в новой версии стало еще легче создавать паттерны и преобразования, а следовательно, можно повысить производительность путем автоматизации генерации повторяющихся моделей, кода, xml или других файлов.
  • Управление архитектурой для SOA: в этой версии была улучшена интеграция с IBM WebSphere Business Modeler, а также усовершенствованы преобразования для генерации WSDL (Web Services Description Language, язык описания Web-сервисов), SCDL (Survivable Control Data Link) и BPEL (Business Process Execution Language, язык исполнения бизнес-процессов)-файлов для IBM WebSphere Integration Developer. Таким образом, вы можете создавать модели сервисов для своей организации и управлять ими в Rational Software Architect for WebSphere Software; это позволяет использовать итеративный, архитектурно продуманный подход к созданию SOA.

Абстракция

Мы предлагаем совершенно новый подход к моделированию ИТ-ресурсов и способы использования этих ресурсов при проектировании программного обеспечения, благодаря чему пользователи смогут моделировать развертывание системы для тестирования, технологической подготовки и рабочих сред. Кроме того, в новой версии гораздо проще создавать модели и собственные языки моделирования предметных областей, представляющие основные абстракции бизнеса.

Моделирование ИТ-ресурсов

 
Что такое топология развертывания?

Топология развертывания - это контейнер модели для модулей развертывания, модулей импорта в другие топологии, а также связей и ограничений между модулями развертывания. Модуль развертывания определяет набор функций, которые он предоставляет, и набор требований, которые должны выполняться для успешного развертывания. Кроме того, топологии могут содержать концептуальные модули, используемые для определения контракта, ограничивающего конкретные модули, которые могут развертываться для обеспечения соответствия этой логической топологии. Например, можно определить концептуальный модуль для базы данных с определенными требованиями к пропускной способности. Затем, в физической модели, можно определить экземпляр базы данных  DB2, который будет удовлетворять этим требованиям.

Давайте сначала поговорим о новой поддержке новых принципов моделирования ИТ-ресурсов и развертывания программного обеспечения.

Одна из основных проблем, с которой сталкивается каждый успешный проект, - это обеспечение успешного развертывания приложения в рабочей среде. Поэтому в Rational Software Architect for WebSphere Software были добавлены функции для решения следующих проблем:

  • недостаточность обмена информацией между стадиями разработки и эксплуатации;
  • в новом процессе разработки приложение не тестируется в рабочей среде до поздних этапов цикла разработки;
  • трудности в применении стандартов и передовых методов развертывания.

В версии 7.5 программного продукта Rational Software Architect for WebSphere Software была добавлена поддержка описания топологии развертывания (ИТ-ресурс) с развитой семантикой; такие описания легко могут использовать в совместной работе разработчики архитектуры на этапах разработки и эксплуатации.

Платформа архитектуры развертывания поддерживает логические, физические и конкретные топологии с возможностью определения ограничений между различными топологиями. Кроме того, мы предоставляем правила проверки корректности, позволяющие убедиться в том, что требования развертываемых модулей соответствуют возможностям целевой инфраструктуры. Эти инструменты фактически дают возможность пользователю убедиться в удовлетворении всех требований перед выполнением физического развертывания. Это гарантирует отсутствие проблем при развертывании приложений, что сбережет вам много часов или даже дней, которые в противном случае были бы потрачены на переделки. Если вы осуществляете развертывание для серии различных сред (для тестирования модулей, тестирования интеграции, тестирования производительности, технологической подготовки, рабочей среды), то такая экономия времени может оказаться весьма существенной.

Кроме того, была добавлена и поддержка создания так называемых "шаблонов топологий" - обычно это паттерны, представляющие стандартные структуры развертывания в вашей организации. Такие шаблоны можно добавить на палитру инструментов рисования программного пакета, а затем многократно использовать в топологиях развертывания. Это позволит определить стандартные конфигурации развертывания и убедиться, что новые приложения будут спроектированы и написаны для работы именно с этими конфигурациями. Благодаря такой политике можно уменьшить риск неработоспособности приложения в целевых средах.

Архитектурная платформа развертывания обладает всеми обычными функциями интеграции, которые можно ожидать от модели в программе Rational Software Architect for WebSphere Software. Можно выполнять интеграцию с требованиями в IBM Rational equisitePro, совместно использовать модели через Rational Team Concert, IBM Rational ClearCase, CVS (Concurrent Versions System, система параллельных версий) и другие Eclipse-совместимые продукты для управления конфигурациями. Кроме того, можно создать паттерны или работать с созданными моделями топологий как с активами многократного использования в Rational Asset Manager.

Поддержка языков предметных областей (domain-specific language, DSL) на базе UML

 
Что такое язык предметной области?

Термин язык предметной области (domain-specific language, DSL) в последние годы часто используют для обозначения языка программирования или языка разработки спецификаций, который специально предназначен для определенной предметной области, определенного метода представления проблемы или определенной технологии решения. DSL-языки на базе UML представляют собой профили, которые можно использовать для пользовательской адаптации инструмента моделирования с учетом специфики конкретной предметной области. Языки предметных областей часто используются на входе преобразования, для генерации кода и других файлов в определенных паттернах.

Предыдущие версии Rational Software Architect поддерживали возможность создания UML-профилей и применения их к модели. Однако если вам нужно было бы добавить инструменты рисования в палитру, пункты контекстного меню, таблицы свойств и другие инструменты, специфичные для создания профилей, то вам потребовалась бы помощь специалиста по разработке подключаемых модулей Eclipse.

Данная версия автоматизирует создание подключаемых модулей Eclipse, которые предоставляют все описанные инструменты, и, тем самым, упрощает настройку Rational Software Architect for WebSphere Software для работы с новыми языками предметных областей на базе UML.

Если объединить эти функции с разрезами и функциями UML-средств, которые позволяют удалить из интерфейса стандартные UML-инструменты (см. далее раздел "Упрощение"), то можно очень просто настроить пользовательский интерфейс Rational Software Architect for WebSphere Software таким образом, чтобы в нем отображался только ваш язык предметной области. Это способствует росту производительности труда ваших аналитиков и проектировщиков и обеспечивает гораздо более эффективный обмен информацией с не имеющими технической квалификации заинтересованными сторонами, которые могут не разбираться в UML, но с готовностью воспримут визуальное представление концептов предметных областей проблемы и предложат решения, которые, возможно, уже хорошо известны в бизнесе. На следующем рисунке изображен UML-профиль и сгенерированный с его помощью значок вызова палитры.

Автоматизация

Эта версия предоставляет также дополнительные функции, которые помогут вам автоматизировать генерацию кода и моделей при помощи преобразований. Есть также новые преобразования для Java™ Persistence API (JPA) и EJB3. Кроме того, функциональные возможности версии 7.5 позволяют с большей легкостью настраивать существующие преобразования, а также создавать новые пользовательские преобразования и паттерны. В новой версии проще настроить многократное использование фрагментов моделей при помощи новой функции интеграции с Rational Asset Manager.

Новые преобразования

Rational Software Architect for WebSphere Software V7.5 теперь включает четыре новых преобразования для поддержки технологий JEE5 и EJB3.

  • UML - JPA;
  • UML - EJB 3.0;
  • JPA - UML;
  • EJB 3.0 - UML;

Все они не только расширяют стандартные преобразования Java, но и поставляются со своими профилями, позволяющими настроить механизм преобразования модели в код, как показано на рисунках 3 и 4.

В версии 7.5 в диалоговое окно настройки согласования также внесены изменения, благодаря которым параметры предыдущего сеанса согласования запоминаются для следующего сеанса обратного преобразования. Достаточно просто установить флажки напротив новых элементов, которые необходимо перенести обратно в модель, и время на выполнение преобразования сокращается.

Усовершенствованные возможности разработки преобразований

 
Преобразования в Rational Software Architect

Rational Software Architect for WebSphere Software предоставляет два метода преобразований. Первый из них - это преобразование из модели в текст, которое использует технологию JET2 (Java Emitter Templates), описанную на Web-сайте eclipse.org. Этот метод принимает серию образцов текстовых файлов, а затем преобразует их в набор шаблонов, управляемых через XML-файл. Это означает, что подобные файлы можно легко сгенерировать; для этого достаточно создать новый управляющий XML-файл и выполнить преобразование.

Второй метод - это преобразование из модели в модель, которое можно использовать для создания любого типа UML или XML файлов из других файлов. Описанная технология поддерживается графическим редактором отображений, который можно использовать для создания преобразования, принимающего модель UML2, а затем вызывающего преобразование JET2. Это позволит быстро создавать файлы на основе UML-моделей. Оба подхода поддерживают принципы управляемой моделями архитектуры (model-driven architecture) и проектирования на основе паттернов (pattern-based engineering). В этой книге серии Redbook вы найдете дополнительную информацию по данной теме.

В версии 7.5 были сделаны некоторые существенные усовершенствования в области разработки преобразований. Во-первых, в этой версии имеется превосходный редактор JET2 с такими функциями как интеллектуальное завершение ввода блоков кода и выделение синтаксиса, как показано на рисунке 5. Во-вторых, добавлен ряд новых мастеров, которые автоматизируют некоторые шаги при выполнении UML-преобразования перед преобразованием JET2. Раньше на это требовалось 20 минут, если вы уже знали, что нужно делать (или более, если выполняли эту операцию впервые), а сейчас достаточно нажать одну кнопку. Поэтому в сочетании с усовершенствованиями в редакторе отображений модель-модель стало гораздо проще создать цепочку из преобразований UML и JET2 (рисунок 6).

 

В-третьих, были также существенно улучшены средства разработки преобразований модель-модель за счет добавления множества новых функций, доступных непосредственно из инструмента для работы с отображениями; это означает, что вам придется гораздо реже обращаться к коду. В общем, усовершенствования средств разработки преобразований ускоряет их создание, благодаря чему можно обеспечить рентабельность широкого спектра сценариев разработки, включая небольшие проекты и проекты, в которых генерация кода применяется часто и начиная с ранних стадий проектирования. Обратите внимание на то, что мы сами использовали эти новые методы авторинга для разработки некоторых встроенных преобразований, например, преобразования XML.

Архитектурное управление SOA

Обеспечение архитектурного управления SOA имеет несколько аспектов. Один из них - обеспечение корректного согласования спроектированных и созданных сервисов с бизнес-процессом (который, например, может быть определен в IBM WebSphere Business Modeler). Следующий аспект - обеспечение возможности итеративного экспорта привязанной к бизнес-контракту спецификации сервиса в инструмент "оркестровки" приложений SOA, например, WebSphere Integration Developer. Еще один аспект - это принцип "волшебного содержимого", при котором предпринимаются шаги по обеспечению того, чтобы потенциальные сервисы (в соответствии с задачами в определении бизнес-процесса) были правильно структурированы в смысле детализации, существующие программные активы при необходимости были переориентированы на работу в форме сервисов, а архитектура поставщиков сервисов являлась непротиворечивой, масштабируемой, безопасной, допускающей многократное использование и т.д.

Чтобы обеспечить первый аспект интеграции IBM WebSphere Business Modeler и IBM Rational Software Architect for WebSphere Software, мы добавили поддержку задач, выполняемых человеком и бизнес-правилами, а также внесли усовершенствования в механизм слияния в процессе повторного применения преобразования и, тем самым, облегчили поддержку итеративной разработки.

Для поддержки второго аспекта мы внесли в программу ряд изменений. За счет усиления инструментов для разработки преобразований и паттернов разработка автоматизированных активов, генерирующих уточнения для моделей и/или код, который добавляет упомянутые выше полезные архитектурные характеристики, стала намного проще. Путем введения новых преобразований из XML, Java (POJO) и EJB Session Beans в UML мы предоставляем дополнительную поддержку сбора и переназначения существующих активов в виде сервисов, из которых впоследствии можно сгенерировать такие артефакты, как файлы SCDL, BPEL и WSDL, используемые программой IBM WebSphere Integration Developer. Это означает, что вы можете быстро создать модель сервиса из имеющихся активов, а затем быстро и без лишних сложностей сгенерировать артефакты, которые необходимы для поддержки SOA.

Интеграция с Rational Asset Manager

 
Rational Asset Manager

Инструмент Rational Asset Manager помогает создавать, изменять, управлять, искать и многократно использовать любые виды активов разработки, в том числе SOA и активов разработки систем. Он способствует снижению стоимости разработки и повышению качества программ, облегчая многократное использование всех типов активов, связанных с разработкой программного обеспечения. На этой странице можно найти дополнительную информацию о Rational Asset Manager.

В версии 7.5 была добавлена новая возможность интеграции Rational Software Architect и Rational Asset Manager. Благодаря этому стало возможным публиковать модели или их фрагменты в Rational Asset Manager, а также импортировать артефакты моделей из Rational Asset manager в текущую рабочую область моделирования. Таким образом, можно работать с фрагментами моделей как со спецификациями многократного использования или "архитектурными компоновочными блоками" и совместно использовать их в любом числе проектов при помощи управляющего рабочего потока, определенного и поддерживаемого инструментом Rational Asset Manager. Аналогичная интерпретация применима к топологиям и шаблонам развертывания. И, наконец, в процессе публикации мы также генерируем Web-представление контента модели, которое позволяет специалистам находить нужные активы и определять, соответствуют ли данные активы их потребностям.

Упрощение

Rational Software Architect for WebSphere Software V7.5 упрощает процесс поставки программного обеспечения благодаря поддержке инструмента Rational Team Concert.

Поддержка Rational Team Concert

 
Инструмент Rational Team Concert

Инструмент IBM Rational Team Concert - это среда коллективной поставки программного обеспечения, которая позволяет рабочим группам проекта упрощать, автоматизировать и управлять поставкой ПО. Автоматизированный сбор данных и генерация отчетов сокращает административную нагрузку и в режиме реального времени предоставляет информацию, необходимую для эффективного управления программными проектами. Динамичная подготовка проекта позволяет добиться высокой производительности с первого дня работы, а совместная работа в режиме реального времени помогает существенно сократить количество споров и переделок. Инструмент Rational Team Concert расширяет возможности коллектива при помощи интегрированных элементов заданий, сборок, системы управления конфигурациями ПО (software configuration management, SCM) и инфраструктуры коллективной работы Jazz Team Server. На этой странице можно найти дополнительную информацию о Rational Team Concert.

Поддержка Rational Team Concert в Rational Software Architect for WebSphere Software состоит из нескольких аспектов. Во-первых, в пакет версии 7.5 входит полнофункциональный клиент Rational Team Concert с Rational Software Architect, позволяющий подключаться к проектам Rational Team Concert и участвовать в них сразу же после завершения установки.

Во-вторых, в версии 7.5 используются преимущества сервера Jazz, позволяющие наладить коллективную отладку при работе с Rational Team Concert (см. рисунок 8). Это дает возможность нескольким членам рабочей группы принимать участие в объединенном сеансе отладки и передавать управление друг другу, чтобы совместно решить проблему. Эта функция может оказаться очень полезной в тех случаях, когда дефекты могут быть вызваны несколькими компонентами, написанными разными членами коллектива, которые территориально находятся в разных местах.

В-третьих, рабочие потоки управления конфигурациями на базе Jazz, поддерживаемые Rational Team Concert, могут работать не только с кодом, но и с моделями, включая вызовы уникальных инструментов наглядного сравнения и слияния моделей Rational Software Architect for WebSphere Software. Кроме того, можно создавать элементы заданий Jazz из напоминаний модели и привязывать их к элементам моделей, как показано на рисунке 9.

 

Разрезы и функции

С того момента, как в Rational Software Architect появилась поддержка UML2, его функциональность учитывала важность упрощения пользовательского интерфейса и предлагала специалистам только те аспекты UML, которые они действительно используют. В этой версии средства UML были разбиты на серии функций, как показано на рисунке 10. Теперь у вас появилась возможность отключить некоторые функции, чтобы скрыть соответствующие компоненты UML в пользовательском интерфейсе. Можно отключить их на уровне модели: если, например, нужно создать модель прецедента (Use Case), то можно включить только элементы для деятелей (Actors), прецедентов (Use Case) и диаграмм прецедентов (Use Case diagrams), чтобы упростить пользовательский интерфейс этой модели.

Мы также ввели концепцию разрезов (viewpoint), каждый из которых представляет собой стандартный набор средств для различных деятельностей с возможностью переключения "на лету", независимо от того, над какой конкретной моделью вы работаете. Например, мы предлагаем разрез "Анализ и проектирование", в котором представлены только те опции пользовательского интерфейса, которые предназначены для создания диаграмм классов (Class), прецедентов (Use Case), деятельностей (Activity) и последовательностей (Sequence) с соответствующими UML-элементами. Кроме того, в программе определены разрезы для задач моделирования развертывания и ИТ-ресурсов. Все разрезы полностью настраиваемы, включая возможность определять пользовательские разрезы.

Система создания BIRT-отчетов

 
Что такое BIRT?

BIRT - это система создания отчетов на базе Eclipse, которая вместе с продуктами разработки Java и JEE используется для создания превосходных отчетов. BIRT предоставляет основные функции генерации отчетов: создание макетов отчета, отображения графической информации, обеспечение доступа к данным и работа со скриптами.

Последняя из основных новых функций Rational Software Architect for WebSphere Software V7.5 - это генерация BIRT-отчетов по UML-моделям. Эта функция представляет UML-модели как предметные области BIRT; это позволяет использовать инструменты разработки BIRT для проектирования пользовательских отчетов, включая диаграммы, из UML-модели, как показано на рисунке 11.

Обзор новых возможностей

В этом, заключительном, разделе о новых возможностях пакета мы отметим некоторые особенно интересные функции, доступные в этой версии.

Сначала стоит упомянуть о том, что мы много работали над решением проблем юзабилити, стараясь удовлетворить запросы более 200 пользователей, которые касались производительности, управления моделями и создания диаграмм. В частности, был значительно улучшен инструмент создания прямолинейных соединений, который теперь может присоединять линии к узлам, расположенным по краям фигур, и более легко манипулировать точками перегибов. Кроме того, в числе прочих усовершенствований была значительно улучшена функция автоматического макетирования, добавлена поддержка группирования, элементы управления шириной линий и возможность перемещения элементов по области схемы при помощи клавиш со стрелками. В новой версии доступен предварительный просмотр перед выводом на печать по принципу WYSIWYG с функциями масштабирования и точного отображения разбиения на страницы.

На диаграмме последовательности статического Java-метода теперь можно еще более детализировать метод, создавая дополнительные диаграммы (рисунок 12). Кроме того, можно снова скопировать визуализации методов в модель, чтобы продолжить работу над ними, или обновить модель, чтобы она отражала нынешнее состояние кода, благодаря чему время, которое требуется для поддержания актуальности и полезности модели, значительно сокращается.

Рисунок 12. Визуализация статической диаграммы последовательности

К диаграммам последовательности были также добавлены некоторые новые опции (рисунок 13), в том числе:

  • поддержка шлюзов;
  • поддержка копирования между диаграммами и прецедентами взаимодействий;
  • возможность извлечения элементов диаграммы последовательности в отдельный прецедент взаимодействия;
  • общие улучшения макета сигнатур и спецификации защиты.

В Rational Software Architect for WebSphere Software расширены функциональные возможности трассировки модели (появившиеся в IBM Rational Software Modeler версии 7.0.5) , которые теперь позволяют изучать все трассировки RequisitePro, как показано на рисунке 14. Итак, теперь можно создавать диаграммы, отображающие визуализированный код, с трассировкой от элементов моделей до прецедентов и далее, от прецедентов через структуру требований до высокоуровневых бизнес-требований или процессов

Кроме того, в этой версии было реализовано довольно много усовершенствований, связанных с функцией слияния моделей, в частности возможность выполнить фрагментарное полноконтекстное слияние. Такое слияние фактически показывает только те изменения, которые подлежат слиянию. Следовательно, в больших моделях, в которых не предполагается большого числа конфликтов, при помощи этой функции можно выполнить слияние гораздо быстрее и проще.

Кроме того, этот метод позволяет осуществлять слияние более крупных моделей. Например, у некоего клиента IBM есть модель, содержащая более 5 000 фрагментов и занимающая более 100 МБ дискового пространства. Выполнить слияние для этой модели при помощи Rational Software Architect V7.0 было невозможно, но теперь, благодаря Rational Software Architect for WebSphere Software V7.5, это вполне осуществимо.

И, наконец, появилось несколько функций, позволяющих пользователям IBM Rational Rose выполнить миграцию. Одна из основных таких функций - это возможность сгенерировать древовидное Web-представление модели, позволяющее с большей легкостью перемещаться по модели, опубликованной в сети Интернет, как показано на рисунке 15. Такое представление было доступно в Rational Rose, но отсутствовало в предыдущих версиях Rational Software Architect.

Поддерживаемые платформы

В завершение этой статьи перечислим требования к аппаратному и программному обеспечению.

Поддерживаемые операционные системы 
Microsoft Windows XP Professional SP1+
Windows XP Professional 64 Bit Edition
Windows 2000 Professional SP4+
Windows 2000 Server SP4+
Windows 2003 Advanced Server SP4+
Windows 2003 Enterprise SP1+
Windows 2003 Standard SP1+
Red Hat Enterprise Linux Workstation 4.0
Red Hat Desktop Version 4.0 (32-разрядный режим)
SuSE Linux Enterprise (SLES) Version 9 (Все SP; 32-разрядный режим)
Novell Linux Desktop Version 10 (32-разрядный режим)
 
Рекомендуемое аппаратное обеспечение 
Процессор: Intel Pentium 4, 1,4 ГГц или выше
Память:1,5 Гбайт+ RAM
Видео: XGA 1280 x 1024
Мышь Microsoft mouse или совместимый манипулятор
Необходимое дисковое пространство: 3 ГБ
Необходимо дополнительно 6 ГБ, если вы загружаете пакет программного продукта для установки.
При распаковке пакета программ на компьютере необходимо дополнительно 5-6 ГБ на диске.
 

Полный список операционных систем и системных требований можно найти в Руководстве по установке, которое поставляется вместе с продуктом.


Страница сайта http://www.interface.ru
Оригинал находится по адресу http://www.interface.ru/home.asp?artId=22027