Введение в IBM Rational Software Architect

Источник: IBM developerWorks Россия
Кунал Миттал

Что такое Rational Software Architect?

IBM Rational Software Architect (часть IBM Software Development Platform) - это первый значительный релиз продуктов Rational от IBM, начиная с февраля 2003 года. Разработчикам, работающим с продуктами от IBM, понравятся улучшенные возможности Software Development Platform: новый уровень интеграции и удобство в использовании.

Software Development Platform состоит из нескольких продуктов от IBM Rational:

  • IBM Rational Portfolio Manager это инструмент для управления проектами, который включает в себя весь жизненный цикл проекта. Rational Portfolio Manager помогает отслеживать портфельные инвестиции в реальном времени. Это в свою очередь позволяет менеджерам принимать решения, будучи более информированными. Этот продукт можно также использовать для увеличения сотрудничества между различными группами, работающими над проектом.
  • IBM Rational Application Developer и Rational Web Developer: являются ребрендингами соответстветственно IBM WebSphere Studio Application Developer и IBM WebSphere Studio Site Developer интегрированных сред разработки (IDE). Эти продукты являются базисом, на котором построены IBM Rational Software Modeler и IBM Rational Software Architect.
  • IBM Rational Software Modeler: Rational Software Modeler - это инструмент, основанный на Unified Modeling Language (UML) 2.0, что позволяет архитекторам и аналитикам создавать различные виды системы. Этот инструмент стимулирует эффективное сообщение между архитекторами и дизайнерами с одной стороны и разработчиками - с другой.
  • IBM Rational Software Architect: Этот инструмент позволяет архитекторам создавать и сохранять архитектуру приложений. Rational Software Architect будет уделено большое внимание в этой статье.
  • IBM Rational Manual Tester: Этот инструмент позволит аналитикам и тестировщикам создавать и реализовывать тестовые примеры. Rational Manual Tester предназначен для тестирования.
  • IBM Rational Functional Tester: Этот инструмент можно использовать для автоматизации функциональных и регрессивных тестов.
  • IBM Rational Performance Tester: Этот инструмент может автоматизировать загрузку и выполнение тестов для ваших приложений.

Благодаря тому, что Rational Software Architect является совокупностью Rational Application Developer, Rational Web Developer и Rational Software Modeler, вы можете получить все эти инструменты, скачав Rational Software Architect.

Практичность Rational Software Architect

Будучи давним пользователем IBM Rational Rose, меня всегда раздражали проблемы, связанные с практичностью этого инструмента. Однако, этот релиз от IBM полностью основан на последней версии Eclipse 3.0 , что обеспечивает не только объединенный интерфейс для всех технических работников вашей команды (архитекторы, дизайнеры и разработчики), но также позволяет инструментам усиливать используемость возможностей, которую обеспечивает Eclipse. На Рисунке 1 показан основной интерфейс пользователя (UI) для Rational Software Architect.

Рисунок 1. Пользовательский интерфейс Rational Software Architect.
Пользовательский интерфейс Rational Software Architect.

Так как Rational Software Architect основан на Eclipse, вы можете использовать Rational Software Architect для технологии Java 2 Platform, Enterprise Edition (J2EE Platform). Плюс, используя возможность генерирования кода, которая является частью Rational Software Architect, вы можете конвертировать в код схемы и UML-диаграммы, созданные в виде моделей. Наконец, лежащая в основе платформа Eclipse обеспечивает богатую возможностями интегрированную среду (IDE) для разработчиков.

Rational Software Architect не ограничивается только Java-технологиями или J2EE-платформой. Вы можете конвертировать ваши UML-модели в код С++. Возможности инструментов генерировать код позволяють вам легко сгенерировать основной код, который вы сможете потом доработать. Эта особенность позволяет разработчикам улучшать возможности моделирования и конструирования шаблонов Rational Software Architect не только для J2EE-платформ.

Основы Rational Software Architect

Данная статья - практическая. Я советую вам запустить Rational Software Architect, читая эту статью. Если на вашей машине еще не стоит Rational Software Architect, вы можете скачать копию на странице "Trials and betas".

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

  1. Запустить Rational Software Architect, нажав File->New и выбрав Project.
  2. В "Новом проекте" выберите UML Project.
  3. Введите имя проекта и нажмите Next.
  4. Создайте пустую модель, выбрав Blank Model из нижнего меню, затем нажмите Finish.

Виды в Rational Software Architect

В Rational Software Architect доступны несколько видов, показанных на рисунке 2:

  • Diagram Navigator предлагает вам основные шаблоны, а также возможность самим создавать различные диаграммы.
  • Функции Model Explorer похожи на Microsoft WindowsExplorer: они позволят вам перемещаться по вашим проектам и создавать различные собственные активы.
  • Pattern Explorer позволит вам создать Шаблоны Четверки (Gang of Four) и использовать их в вашей схеме. Вы также можете создать обычные шаблоны. (В своей следующей статье я буду обсуждать создание шаблонов в IBM Rational Software Architect, там же будет информация о Шаблонах Четверки - Gang of Four.)
  • UML Editor - это ваше рабочее место: Здесь вы создаете диаграммы и работаете с ними.

Рисунок 2. Возможные виды
Возможные виды 

Моделирование в UML с использованием Rational Software Architect

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

Создание класса диаграмм в UML

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

  1. В обозревателе модели щелкните правой кнопкой мышки по Blank Model и добавьте новую диаграмму классов.
  2. Введите имя новой диаграммы классов. (Например, Main.) Появится новая страница с именем BlankModel::Main (как показано на рисунке 3).
  3. На странице BlankModel::Main щелкните правой кнопкой и добавьте новый интерфейс.
  4. Повторите шаг 4, чтобы создать второй класс.

Рисунок 3. Страница BlankModel::Main
Страница BlankModel::Main

Определите отношение, которое показывает, что два новых класса реализуют интерфейс. Щелкнув по имени класса, вы увидите, что на правой стороне диалогового окна появились стрелки вверх и вниз. Щелкните сначала по стрелке и затем по Create Implementation (создание реализатора). Итак, вы создали свои первые классы в Rational Software Architect. Чтобы посмотреть все доступные опции для ваших классов, щелкните по любому классу и выберите Properties (свойства), как показано на рисунке 4.

Рисунок 4. Свойства класса
Свойства класса

UML в код

Теперь сгенерируем код из той UML-диаграммы классов, которую вы только что создали. Для этого выполните следующие шаги:

  1. Выберите все классы на диаграмме, показанные на рисунке 3.
  2. Щелкните правой кнопкой на выбранной части и выберите Transform (преобразование).
  3. Выберите опцию UML to Java.
  4. Мастер преобразования создаст новый контейнер.

Изначально проект, который вы создавали, был UML-проектом, теперь вам надо создать Java-проект, где вы будете генерировать код. На других закладках оставьте значения по умолчанию и щелкните Run (запуск) в мастере преобразования. Вы увидите весь код, который сгенерируется и отобразится в окне обозревателя слева. Щелкните по коду, чтобы посмотреть как он выглядит. На листинге 1 показан код, который сгенерировался из одного из классов, определенных в UML.

Листинг 1. Сгенерированный код класса, определенного в UML.

                				
/*
 * Created on Nov 20, 2004
 *
 * TODO To change the template for this generated file go to
 * Window - Preferences - Java - Code Style - Code Templates
 */

/*
 * @author Kunal Mittal
 *
 * TODO To change the template for this generated type comment go to
 * Window - Preferences - Java - Code Style - Code Templates
 * @uml.annotations
 * derived_abstraction="platform:/resource/DevWorksProject/Blank Model.emx
 * #_PnydkDsQEdmyqsBhJhf6RA%2cuml2.Interface%2cBlank+Model%3a%3amyClassInRSA"
 * @generated "UML to Java 
 * (com.ibm.xtools.transform.uml2.java.internal.UML2JavaTransform)"
 */
public interface myClassInRSA {
}

Код в UML

А теперь давайте наоборот: создадим UML-модель из этого кода. Этот процесс намного легче. Просто создайте пустую диаграмму классов. Перетащите ваш код из Java-проекта на чистую диаграмму. Диаграммы UML-классов генерируются автоматически. Выполняя это задание, обратите внимание, что существуют несколько тонких отличий между этим процессом и предыдущими версиями Rational Rose или XDE:

  • Если ваша диаграмма в UML-модели, то вы просто ссылаетесь на исходный код в Java-проекте.
  • Вы также можете создать и посмотреть диаграммы класса из своего Java-проекта. В этом случае диаграммы являются просто визуализацией кода.

Создание диаграммы сценария в UML

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

Диаграммы сценариев просто создавать. Чтобы создать такую диаграмму, сделайте следующее:

  1. Создайте диаграмму с названием Diagram1 .
  2. Используя палитру (palette), создайте пользователя с названием Actor 1 .
  3. Создайте два сценария с названиями Use Case 1 и Use Case 2 .
  4. Щелкните по каждому из сценариев и перетащите их к пользователям, чтобы соединить пользователя и сценарий. Рисунок 5 показывает готовую диаграмму сценария.

Рисунок 5. Готовая диаграмма сценария
Готовая диаграмма сценария 

Исследование архитектуры

В Rational Software Architect входят функции, которые помогут показать архитектурное построение вашей модели или кода, что поможет вам понять вашу модель с точки зрения архитектора. Рисунок 6 показывает простую UML-модель, которую я создал. Поместите наверх окно навигатора диаграмм (Diagram Navigator) и разверните некоторые свойства. Проследите как выполняется анализ, и вы увидите больше информации о простой диаграмме класса, которую вы создали. Левая панель показывает архитектурное построение.Посмотрите на секции под Object-oriented Patterns (объектно-ориентированные шаблоны): вы увидите абстрактные классы и деревья наследования в классе UML-диаграммы.

Рисунок 6. Исследование архитектуры на примере UML-модели
Архитектурное развитие на примере UML-модели

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

Заключение

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

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

Если вы являетесь разработчиком, я вам советую изучать возможности архитектурного исследования в Rational Software Architect более подробно. Это очень ценные возможности, они помогут вам улучшить понимание и отлаживаемость вашего кода. Чтобы по-настоящему понять и изучить все, что предлагает Rational Software Architect, обдумайте эти основные возможности вашего проекта.


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