Объектно-ориентированные CASE-средства (Rational Rose)
5.5. Объектно-ориентированные
CASE-средства (Rational Rose)
Rational Rose - CASE-средство фирмы Rational
Software Corporation (США) - предназначено для
автоматизации этапов анализа и
проектирования ПО, а также для
генерации кодов на различных
языках и выпуска проектной
документации [21]. Rational Rose использует
синтез-методологию
объектно-ориентированного анализа
и проектирования, основанную на
подходах трех ведущих специалистов
в данной области: Буча, Рамбо и
Джекобсона. Разработанная ими
универсальная нотация для
моделирования объектов (UML - Unified
Modeling Language) претендует на роль
стандарта в области
объектно-ориентированного анализа
и проектирования. Конкретный
вариант Rational Rose определяется
языком, на котором генерируются
коды программ (C++, Smalltalk, PowerBuilder, Ada,
SQLWindows и ObjectPro). Основной вариант -
Rational Rose/C++ - позволяет разрабатывать
проектную документацию в виде
диаграмм и спецификаций, а также
генерировать программные коды на
С++. Кроме того, Rational Rose содержит
средства реинжиниринга программ,
обеспечивающие повторное
использование программных
компонент в новых проектах.
Структура и функции
В основе работы Rational Rose лежит
построение различного рода
диаграмм и спецификаций,
определяющих логическую и
физическую структуры модели, ее
статические и динамические
аспекты. В их число входят
диаграммы классов, состояний,
сценариев, модулей, процессов [21].
В составе Rational Rose можно выделить 6
основных структурных компонент:
репозиторий, графический интерфейс
пользователя, средства просмотра
проекта (browser), средства контроля
проекта, средства сбора статистики
и генератор документов. К ним
добавляются генератор кодов
(индивидуальный для каждого языка)
и анализатор для С++, обеспечивающий
реинжиниринг - восстановление
модели проекта по исходным текстам
программ.
Репозиторий представляет собой
объектно-ориентированную базу
данных. Средства просмотра
обеспечивают "навигацию" по
проекту, в том числе, перемещение по
иерархиям классов и подсистем,
переключение от одного вида
диаграмм к другому и т. д. Средства
контроля и сбора статистики дают
возможность находить и устранять
ошибки по мере развития проекта, а
не после завершения его описания.
Генератор отчетов формирует тексты
выходных документов на основе
содержащейся в репозитории
информации.
Средства автоматической
генерации кодов программ на языке
С++, используя информацию,
содержащуюся в логической и
физической моделях проекта,
формируют файлы заголовков и файлы
описаний классов и объектов.
Создаваемый таким образом скелет
программы может быть уточнен путем
прямого программирования на языке
С++. Анализатор кодов С++ реализован
в виде отдельного программного
модуля. Его назначение состоит в
том, чтобы создавать модули
проектов в форме Rational Rose на основе
информации, содержащейся в
определяемых пользователем
исходных текстах на С++. В процессе
работы анализатор осуществляет
контроль правильности исходных
текстов и диагностику ошибок.
Модель, полученная в результате его
работы, может целиком или
фрагментарно использоваться в
различных проектах. Анализатор
обладает широкими возможностями
настройки по входу и выходу.
Например, можно определить типы
исходных файлов, базовый
компилятор, задать, какая
информация должна быть включена в
формируемую модель и какие
элементы выходной модели следует
выводить на экран. Таким образом,
Rational Rose/С++ обеспечивает
возможность повторного
использования программных
компонент.
В результате разработки проекта с
помощью CASE-средства Rational Rose
формируются следующие документы:
- диаграммы классов;
- диаграммы состояний;
- диаграммы сценариев;
- диаграммы модулей;
- диаграммы процессов;
- спецификации классов,
объектов, атрибутов и операций
- заготовки текстов программ;
- модель разрабатываемой
программной системы.
Последний из перечисленных
документов является текстовым
файлом, содержащим всю необходимую
информацию о проекте (в том числе
необходимую для получения всех
диаграмм и спецификаций).
Тексты программ являются
заготовками для последующей работы
программистов. Они формируются в
рабочем каталоге в виде файлов
типов .h (заголовки, содержащие
описания классов) и .cpp (заготовки
программ для методов). Система
включает в программные файлы
собственные комментарии, которые
начинаются с последовательности
символов //##. Состав информации,
включаемой в программные файлы,
определяется либо по умолчанию,
либо по усмотрению пользователя. В
дальнейшем эти исходные тексты
развиваются программистами в
полноценные программы.
Взаимодействие с другими
средствами и организация групповой
работы
Rational Rose интегрируется со
средством PVCS для организации
групповой работы и управления
проектом и со средством SoDA - для
документирования проектов.
Интеграция Rational Rose и SoDA
обеспечивается средствами SoDA.
Для организации групповой работы
в Rational Rose возможно разбиение модели
на управляемые подмодели. Каждая из
них независимо сохраняется на
диске или загружается в модель. В
качестве подмодели может выступать
категория классов или подсистема.
Для управляемой подмодели
предусмотрены операции:
- загрузка подмодели в память;
- выгрузка подмодели из памяти;
- сохранение подмодели на диске
в виде отдельного файла;
- установка защиты от
модификации;
- замена подмодели в памяти на
новую.
Наиболее эффективно групповая
работа организуется при интеграции
Rational Rose со специальными средствами
управления конфигурацией и
контроля версий (PVCS). В этом случае
защита от модификации
устанавливается на все управляемые
подмодели, кроме тех, которые
выделены конкретному разработчику.
В этом случае признак защиты от
записи устанавливается для файлов,
которые содержат подмодели,
поэтому при считывании "чужих"
подмоделей защита их от
модификации сохраняется и
случайные воздействия окажутся
невозможными.
Среда функционирования
Rational Rose функционирует на
различных платформах: IBM PC (в среде
Windows), Sun SPARC stations (UNIX, Solaris, SunOS),
Hewlett-Packard (HP UX), IBM RS/6000 (AIX).
Для работы системы необходимо
выполнение следующих требований:
- Платформа Windows - процессор 80386SX
или выше (рекомендуется 80486),
память8Mб (рекомендуется 12Mб),
пространство на диске 8Mб + 1-3Mб
для одной модели.
- Платформа UNIX - память 32+(16*число
пользователей)Mб, пространство
на диске 30Mб + 20 при инсталляции
+ 1-3Mб для одной модели.
Совместимость по версиям
обеспечивается на уровне моделей.
Назад | Содержание | Вперед
|