Статический аспект RUP представлен четырьмя основными элементами:
· роли;
· виды деятельности;
· рабочие продукты;
· дисциплины.
Понятие «роль» (role) определяет поведение и ответственность личности или группы личностей, составляющих проектную команду. Одна личность может играть в проекте много различных ролей.
Под видом деятельности конкретного исполнителя понимается единица выполняемой им работы. Вид деятельности (activity) соответствует понятию технологической операции. Он имеет четко определенную цель, обычно выражаемую в терминах получения Или модификации некоторых рабочих продуктов (artifacts), таких, как модель, элемент модели, документ, исходный код или план. Каждый вид деятельности связан с конкретной ролью. Продолжительность вида деятельности составляет от нескольких часов до нескольких дней, он обычно выполняется одним исполнителем и порождает только один или весьма небольшое количество рабочих продуктов. Любой вид деятельности должен являться элементом процесса планирования. Примерами видов деятельности могут быть планирование итерации, определение вариантов использования и действующих лиц, выполнение теста на производительность. Каждый вид деятельности сопровождается набором руководств (guidelines), представляющих собой методики выполнения технологических операций.
|
|
Дисциплина (discipline) соответствует понятию технологического процесса и представляет собой последовательность действий, приводящую к получению значимого результата.
В рамках RUP определены шесть основных дисциплин:
· построение бизнес-моделей;
· определение требований;
· анализ и проектирование;
· реализация;
· тестирование; *
· развертывание;
· и три вспомогательных:
· управление конфигурацией и изменениями;
· управление проектом;
· создание инфраструктуры.
Основное содержание дисциплин построения бизнес-моделей, определения требований, анализа и проектирования было изложено в главах 3 и 4.
RUP как продукт входит в состав комплекса Rational Suite, причем каждая из перечисленных выше дисциплин поддерживается определенным инструментальным средством комплекса. Физическая реализация RUP представляет собой Web-сайт (рис. 5.7), включающий следующие компоненты:
· описание всех элементов динамического и статического аспекта RUP;
· навигатор по всем элементам RUP, глоссарий и средство быстрого обучения технологии;
· руководства для всех участников проектной команды, охватывающие весь жизненный цикл ПО. Руководства представлены в двух видах: для осмысления процесса на верхнем уровне и в виде подробных инструкций по отдельным видам деятельности;
|
|
· руководства по использованию инструментальных средств, входящих в состав Rational Suite;
· примеры и шаблоны проектных решений для Rational Rose;
· шаблоны проектной документации для SoDa;
· шаблоны в формате Microsoft Word, предназначенные для поддержки документации по всем процессам и действиям жизненного цикла ПО;
· планы в формате Microsoft Project, отражающие итерационный характер разработки ПО.
Рис. 5.7. Электронная версия RUP
Адаптация RUP к потребностям конкретной организации или проекта обеспечивается с помощью Rational Process Workbench (RPW) - специального набора инструментов и шаблонов для настройки и публикации Web-сайтов на основе RUP. RPW поддерживает три основные функции моделирования технологических процессов:
· определение процесса;
· описание процесса;
· представление процесса.
Основой для определения процесса является модель RUP в среде CASE-средства Rational Rose, подобная модели на рис. 5.1.
Библиотека элементов процесса содержит текстовую информацию о каждом элементе в модели процесса, все текстовые страницы RUP, a RPW - необходимые шаблоны для создания новых страниц описания. RPW генерирует описание процессов, включающее текст и графику, в виде Web-сайта, соединяя модели процессов и библиотеку описаний в единое целое.
Компания Rational Software поддерживает портал Rational Developer Network (www.rational.net), содержащий:
· статьи по инструментальным средствам и RUP;
· обзоры книг;
· курсы по обучению специалистов;
· инструкции по эксплуатации инструментальных средств;
· архивы дополнений и расширений к инструментальным средствам;
· базу знаний, основанную на реальных проектах.
RUP опирается на интегрированный комплекс инструментальных средств Rational Suite. Он существует в вариантах:
· Rational Suite AnalystStudio - предназначен для определения и управления полным набором требований к разрабатываемой системе;
· Rational Suite DevelopmentStudio - предназначен для проектирования и реализации ПО;
· Rational Suite TestStudio — набор продуктов, предназначенных для автоматического тестирования приложений;
· Rational Suite Enterprise — обеспечивает поддержку полного жизненного цикла ПО и предназначен как для менеджеров проекта, так и отдельных разработчиков, выполняющих несколько функциональных ролей в команде разработчиков.
В состав Rational Suite, кроме самой технологии RUP как продукта, входят следующие компоненты:
· Rational Rose — средство визуального моделирования (анализа и проектирования), использующее язык UML;
· Rational XDE — средство анализа и проектирования, интегрируемое с платформами MS Visual Studio.NET и IBM WebSphere Studio Application Developer;
· Rational Requisite Pro — средство управления требованиями, предназначенное для организации совместной работы группы разработчиков. Оно позволяет команде разработчиков создавать, структурировать, устанавливать приоритеты, отслеживать, контролировать изменения требований, возникающих на любом этапе разработки компонентов приложения;
· Rational Rapid Developer — средство быстрой разработки приложений на платформе Java 2 Enterprise Edition;
· Rational ClearCase — средство управления конфигурацией ПО;
· Rational SoDA — средство автоматической генерации проектной документации;
· Rational ClearQuest — средство для управления изменениями и отслеживания дефектов в проекте на основе средств e-mail и Web;
· Rational Quantify — средство количественного определения узких мест, влияющих на общую эффективность работы программы;
· Rational Purify — средство для локализации трудно обнаруживаемых ошибок времени выполнения программы;
· Rational PureCoverage — средство идентификации участков кода, пропущенных при тестировании;
· Rational TestManager — средство планирования функционального и нагрузочного тестирования;
· Rational Robot — средство записи и воспроизведения тестовых сценариев;
· Rational TestFactory — средство тестирования надежности;
|
|
· Rational Quality Architect — средство генерации кода для тестирования.
Одно из основных инструментальных средств комплекса Rational Rose представляет собой семейство объектно-ориентированных CASE-средств; оно предназначено для автоматизации процессов анализа и проектирования ПО, а также для генерации кодов на различных языках и выпуска проектной документации. Rational Rose реализует процесс объектно-ориентированного анализа и проектирования ПО, описанный в RUR В основе работы Rational Rose лежит построение диаграмм и спецификаций UML, определяющих архитектуру системы, ее статические и динамические аспекты. В составе Rational Rose можно выделить шесть основных структурных компонентов: репозиторий, графический интерфейс пользователя, средства просмотра проекта (браузер), средства контроля проекта, средства сбора статистики и генератор документов. К ним добавляются генераторы кодов для каждого поддерживаемого языка, состав которых меняется от версии к версии.
Репозиторий представляет собой базу данных проекта. Браузер обеспечивает «навигацию» по проекту, в том числе перемещение по иерархиям классов и подсистем, переключение от одного вида диаграмм к другому и т. д. Средства контроля и сбора статистики дают возможность находить и устранять ошибки по мере развития проекта, а не после завершения его описания. Генератор отчетов формирует тексты выходных документов на основе содержащейся в репозиторий информации.
Средства автоматической генерации кода, используя информацию, содержащуюся в диаграммах классов и компонентов, формируют файлы описаний классов. Создаваемый таким образом скелет программы может быть уточнен путем прямого программирования на соответствующем языке (основные языки, поддерживаемые Rational Rose — C++ и Java).
В результате разработки проекта с помощью Rational Rose формируются следующие документы:
· диаграммы UML, в совокупности представляющие собой модель разрабатываемой программной системы;
· спецификации классов, объектов, атрибутов и операций;
|
|
· заготовки текстов программ.
Тексты программ являются заготовками для последующей работы программистов. Состав информации, включаемой в программные файлы, определяется либо по умолчанию, либо по усмотрению пользователя. В дальнейшем эти исходные тексты развиваются программистами в полноценные программы.
Инструментальное средство Rational XDE представляет собой развитие возможностей Rational Rose в части синхронизации модели и кода (исключающей необходимость прямой и обратной генерации кода). Rational XDE обеспечивает:
· синхронизацию между кодом и моделью;
· отображение элементов кода Java и С# в UML;
· автоматическую синхронизацию с настраиваемым разрешением конфликтов;
· одновременное отображение кода и модели;
· постоянную синхронизацию модели UML как части проекта Java или С#.
5.4.2.