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

Повышенная практичность делает разработку программного обеспечения проще

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

Кунал Миттал, специалист по Java- и web-сервисам, консультант, Sony Pictures Entertainment

Кунал МитталКунал Миттал (Kunal Mittal) является консультантом, специализирующемся на Java-технологиях, J2EE-платформе и технологиях Web-сервисов. Он также является соавтором нескольких книг на эти темы. Кунал сейчас работает над проектом Portal для Sony Pictures Entertainment.



19.04.2007

Что такое 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. За дополнительной информацией о них посетите сайт IBM's Rational (см. Ресурсы).

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

Будучи давним пользователем IBM Rational Rose, меня всегда раздражали проблемы, связанные с практичностью этого инструмента. Однако, этот релиз от IBM полностью основан на последней версии Eclipse 3.0 , что обеспечивает не только объединенный интерфейс для всех технических работников вашей команды (архитекторы, дизайнеры и разработчики), но также позволяет инструментам усиливать используемость возможностей, которую обеспечивает Eclipse. (За более подробной информацией о 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® Windows® Explorer: они позволят вам перемещаться по вашим проектам и создавать различные собственные активы.
  • 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-диаграмм. Посмотрим несколько примеров тех типов диаграмм, которые вы можете создать. (За дополнительной информацией и ссылками на официальный сайт Modeling Structure Guidelines см. Ресурсы.)

Создание класса диаграмм в 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-проекта. В этом случае диаграммы являются просто визуализацией кода.

За дополнительной информацией на эту тему посмотрите статью How to migrate from code-centric to model-centric development using Rational Software Architect (Как, используя Rational Software Architect, перейти от код-ориентированной к модельно-ориентированной разработки) см. Ресурсы.

Создание диаграммы сценария в 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, обдумайте эти основные возможности вашего проекта.

Ресурсы

Научиться

Получить продукты и технологии

  • За техническими подробностями о продуктах Rational, посетите раздел Rational developerWorks Россия. Здесь вы найдете техническую документацию, статьи с техническими советами, учебники, информацию о продукте, сможете скачать программы и приложения, а также многое другое.Подробная информация о Rational Software Architect на странице RSA.
  • Узнайте больше информации о продукте, посетив страницу Rational Software Architect.
  • О платформе Eclipse 3.0 на домашей странице.
  • Купите книги о Rational со скидкой в разделе Rational в Книжном магазине разработчика.

Обсудить

Комментарии

developerWorks: Войти

Обязательные поля отмечены звездочкой (*).


Нужен IBM ID?
Забыли Ваш IBM ID?


Забыли Ваш пароль?
Изменить пароль

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

 


Профиль создается, когда вы первый раз заходите в developerWorks. Информация в вашем профиле (имя, страна / регион, название компании) отображается для всех пользователей и будет сопровождать любой опубликованный вами контент пока вы специально не укажите скрыть название вашей компании. Вы можете обновить ваш IBM аккаунт в любое время.

Вся введенная информация защищена.

Выберите имя, которое будет отображаться на экране



При первом входе в developerWorks для Вас будет создан профиль и Вам нужно будет выбрать Отображаемое имя. Оно будет выводиться рядом с контентом, опубликованным Вами в developerWorks.

Отображаемое имя должно иметь длину от 3 символов до 31 символа. Ваше Имя в системе должно быть уникальным. В качестве имени по соображениям приватности нельзя использовать контактный e-mail.

Обязательные поля отмечены звездочкой (*).

(Отображаемое имя должно иметь длину от 3 символов до 31 символа.)

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

 


Вся введенная информация защищена.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=40
Zone=Rational
ArticleID=211099
ArticleTitle=Введение в IBM Rational Software Architect
publish-date=04192007