Сегодня лидирующей в мире CASE-системой считается Rational Rose корпорации Rational Software, подъем продаж которой пришелся на период с 1996-го по текущий год. Система Rational Rose нацелена на создание моделей с использованием языка Unified Modeling Language (UML). Кстати, UML стал стандартным языком объектно-ориентированной разработки не без подачи Rational Software, которая не только выпускает программные продукты, где используется UML, но и активно принимает участие в организации Object Management Group (OMG), занятой созданием и обновлением спецификаций языка UML, технологии распределенных вычислений CORBA и т. д. В компании Rational работают три создателя и евангелиста объектно-ориентированной разработки и языка UML. Это Гради Буч (Grady Booch), Айвар Джекобсон (Ivar Jacobson) и Джим Рамбаух (Jim Rumbaugh).
Своеобразным признанием заслуг Rational Software стало включение усеченного варианта продукта Rational Rose в знаменитый пакет разработчика Microsoft Visual Studio. Правда, название поменялось с Rational Rose на Visual Modeler. Многие, используя Visual Modeler, так и не знают, с чем же на самом деле они работают.
Последняя версия CASE-системы компании Rational Software — Rational
Rose 98 уже вовсю применяется для создания коммерческого ПО и поддерживает
популярные языки программирования Java, Cu++, Смолток, Aдa, Visual Basic,
PowerBuilder и Forte. Кроме того, пакет Rose 98 способен генерировать описания
на языках Interface Definition Language (IDL) для приложений CORBA и Data
Definition Language (DDL) для приложений доступа к базам данных, в том
числе и Oracle 8. Разумеется, поддержка того или иного языка программирования
зависит от того, о какой редакции пакета Rational Rose 98 идет речь. К
примеру, нельзя требовать многого от самого простого варианта пакета —
Rose 98 Modeler Edition. Зато Rose 98 Enterprise Edition оснащен от души.
По умолчанию программа выводит окна браузера, документации и Рабочего стола. Между этими окнами уютно расположилась палитра с элементами, из которых строятся различные диаграммы.
Окно браузера отображает дерево элементов текущей открытой в Rational Rose модели. Это могут быть сценарии поведения (use cases), действующие лица (actors), пакеты (packages) и прочие диаграммы. Пользуясь перетаскиванием, можно перемещать отображаемые в браузере элементы в различные места “дерева” модели, изменяя структуру модели по своему усмотрению.
Чуть ниже, под окошком браузера, представлена документация к текущему
выделенному элементу. Разработчик может добавить свое описание любого объекта
модели, и оно тут же появится в окне документации.
Рис. 1. По-спартански, но все что нужно |
Контекстное меню, вызываемое нажатием правой кнопки мыши, играет в окне браузера важную роль. Оно дублирует множество пунктов главного меню Rose, в то же время отслеживая контекст вызова и организуя пункты меню наилучшим для этого контекста образом. Умело оперируя контекстным меню, можно и вовсе обойтись без главного меню пакета, по крайней мере для вызовов всех основных операций.
Стартуя, Rational Rose 98 показывает на экране диалоговую панель с заготовками
типичных проектов (рис. 2).
Рис. 2. Рутинного моделирования можно избежать,
если воспользоваться заготовками Rose |
Сценарий проекта таков. Сначала каждый профессор университета заполняет специальную форму, в которой указывает, какие учебные курсы он намерен вести в следующем семестре. Данные из формы помещаются в университетский компьютер работником регистратуры. После этого из полученных данных формируется каталог курсов, который раздается студентам. Студенты выбирают из каталога те курсы, на которых они собираются учиться, и подают заявки на обучение в регистратуру. Все эти данные также попадают в компьютер, где происходит их обработка и формирование списков курсов и студентов. В задачи создаваемой системы входит, в частности, такое комплектование учебных курсов, чтобы каждый курс посещало бы от трех до десяти студентов. Если на какой-то курс не набирается трех студентов, он отменяется. После формирования курсов профессора получают списки студентов, которых им предстоит обучать, а каждый студент получает подтверждение о зачислении на курс и счет на оплату.
Первое, что требуется при построении модели, — определить действующие лица системы и сценарии поведения. Действующих лиц в создаваемой системе четыре: профессор, студент, регистратура и биллинговая программа. Первые три выбраны действующими лицами, поскольку они активно взаимодействуют с создаваемой системой. Биллинговая же программа чаще всего является отдельным программным продуктом, а в нашем случае она получает информацию для своей работы от создаваемой курсовой системы, поэтому может считаться самостоятельным действующим лицом.
Теперь выделим сценарии использования для нашего примера. Каждый из них описывает некоторое требование к функциям системы:
Рис. 3. Создаем новое действующее лицо модели |
Рис. 4. Диаграмма сценариев поведения |
Примечательно, что теперь все компоненты можно перемещать по диаграмме, не прерывая связей,— Rational Rose позаботится об их корректной отрисовке.
Теперь вы можете задать дополнительные параметры для компонентов диаграммы.
Нужно лишь дважды щелкнуть на выбранном объекте, после чего вы увидите
диалоговую панель, которая позволяет задать текст документации для выделенного
объекта и различные опции (рис. 5).
Рис. 5. Документация к объекту |
Преимущества от применения Rational Rose 98 значительны:
Число пользователей Rational Rose превысило 50 тыс., причем в самых различных областях. Возможно, это и не так много для программного пакета, но для CASE-систем эта цифра очень внушительная. Тем более что среди клиентов Rational такие всемирно известные компании, как NASA, Boeing, Lockheed Martin, Honeywell, NBC, Reuters, AT&T и др., имена которых, выстроенные в столбик, заняли бы целую колонку журнальной страницы. Может быть, в этой колонке найдется место и для вашей компании.
Автор выражает признательность компании Interface за возможность ознакомиться с продуктом и всестороннюю помощь. На сервере http://www.interface.ru можно найти дополнительную информацию Rational Rose 98 на русском языке.
Где купить: Interface Client Server Company, тел./факс в Москве: (095) 135-25-19, 135-55-00.