Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
новое пособие.doc
Скачиваний:
62
Добавлен:
25.09.2019
Размер:
20.48 Mб
Скачать

4.3. Case-инструментарий объектного моделирования и анализа

Существует несколько CASE-средств, поддерживающих язык UML. Наиболее известным является Rational Rose, которое мы рассмотрим, используя, в первую очередь, работу [82], а также [22, 86, 87].

4.3.1. Назначение и возможности «ibm Rational Software Architect»

Rational Rose – CASE-средство фирмы Rational Software Corporation (США) – предназначено для автоматизации этапов анализа и проектирования программного обеспечения (ПО), а также для генерации кодов на различных языках и выпуска проектной документации. Rational Rose использует методологию объектно-ориентированного анализа и проектирования. Конкретный вариант Rational Rose определяется языком, на котором генерируются коды программ (C++, Smalltalk, PowerBuilder, Ada, SQLWindows, ObjectPro). Кроме того, Rational Rose содержит средства реинжиниринга программ, обеспечивающие повторное использование программных компонент в новых проектах.

В составе Rational Rose можно выделить 6 основных структурных компонент: репозитарий, графический интерфейс пользователя, средства просмотра проекта (browser), средства контроля проекта, средства сбора статистики и генератор документов. К ним добавляются генератор кодов (индивидуальный для каждого языка) и анализатор для С++, обеспечивающий реинжиниринг – восстановление модели проекта по исходным текстам программ.

Репозитарий представляет собой объектно-ориентированную базу данных. Средства просмотра обеспечивают «навигацию» по проекту, в том числе, перемещение по иерархиям классов и подсистем, переключение от одного вида диаграмм к другому и т.д. Средства контроля и сбора статистики дают возможность находить и устранять ошибки по мере развития проекта, а не после завершения его описания. Генератор отчетов формирует тексты выходных документов на основе содержащейся в репозитарии информации.

Средства автоматической генерации кодов программ на языке С++, используя информацию, содержащуюся в логической и физической моделях проекта, формируют файлы заголовков и файлы описаний классов и объектов. Создаваемый таким образом скелет программы может быть уточнен путем прямого программирования на языке С++. Анализатор кодов С++ реализован в виде отдельного программного модуля. Его назначение состоит в том, чтобы создавать модули проектов в формате Rational Rose на основе информации, содержащейся в определяемых пользователем исходных текстах на С++. В процессе работы анализатор осуществляет контроль правильности исходных текстов и диагностику ошибок. Модель, полученная в результате его работы, может целиком или фрагментарно использоваться в различных проектах. Анализатор обладает широкими возможностями настройки по входу и выходу. Например, можно определить типы исходных файлов, базовый компилятор, задать, какая информация должна быть включена в формируемую модель и какие элементы выходной модели следует выводить на экран. Таким образом, Rational Rose/С++ обеспечивает возможность повторного использования программных компонент.

В основе работы Rational Rose лежит построение различного рода диаграмм и спецификаций, определяющих логическую и физическую структуры модели, ее статические и динамические аспекты.

Диаграммы классов показывают классы и их иерархии, отображая логику построения прикладной системы. Для больших систем обычно строится не одна, а несколько подобных диаграмм. Диаграмма классов определяет только статические аспекты, относящиеся к классам. Динамика их поведения представляется на диаграммах состояний. Диаграммы кооперации показывают существующие объекты и их взаимодействие в логическом проекте прикладной системы. Модульные диаграммы (диаграммы компонентов) определяют распределение классов и объектов в модулях, физически реализующих проект. Одна модульная диаграмма представляет всю или часть модульной архитектуры системы. Для решения задачи распределения аппаратных ресурсов в Rational Rose используются диаграммы размещения.

Не вся необходимая информация о проекте может быть наглядно отражена в диаграммах, поэтому Rational Rose содержит средства ввода спецификаций, которые дополняют набор диаграмм. Спецификации создаются для прецедентов, пакетов, классов, атрибутов, операций, подсистем, объектов, компонент, диаграмм и т.д.

Основные свойства Rational Rose, обеспечивающие ее высокую конкурентоспособность на мировом рынке программных средств, следующие:

  • охват всех этапов жизненного цикла работы над проектом с единой методикой и нотацией;

  • возможность повторного использования программных разработок пользователей за счет средств реинжиниринга;

  • наличие средств автоматического контроля, позволяющих вести отладку проекта по мере его разработки;

  • возможность описания проекта на разных уровнях для различных категорий пользователей;

  • удобный для пользователя графический интерфейс;

  • автоматическая генерация кодов на языках С++, Ada, Smalltalk, PowerBuilder, SQLWindows, VisualBasic;

  • наличие средств групповой разработки;

  • широкий спектр применения системы – базы данных, банковские системы, телекоммуникация, системы реального времени и т. д.

  • возможность использования различных платформ: IBM PC (в среде Windows), Sun SPARC Stations (Solaris, SunOS), Hewlett-Packard (HP UX), IBM RS/6000 (AIX).