Тема №1
Автоматизированное проектирование информационных систем с использованием CASE-технологии. Классификация CASE-технологий.
Практическая работа №1 RROSE. ВВЕДЕНИЕ В RATIONAL ROSE 2000
Цель и содержание работы: изучение основных этапов проведения проектирования в Rational Rose; изучение интерфейса Rational Rose и принципов работы с ним; создание нового проекта в Rational Rose. Методика и порядок выполнения работы
CASE-средство Rational Rose - современное и мощное средство анализа, моделирования и разработки программных систем. Именно в Rational Rose язык UML стал базовой технологией визуализации и разработки программ, что определило популярность и стратегическую перспективность этого инструментария.
Rational Rose позволяет строить диаграммы UML, генерировать программный код на различных языках программирования (Java, C++, VisualBasic, PowerBuilder), обратную генерацию диаграмм (реинжиниринга) на основе программного кода и выпуск проектной документации.
Этапы проведения моделирования в Rational Rose 2000 Моделирование проводится как поуровневый спуск от концептуальной модели к логической, а затем к физической модели программной системы.
Концептуальная модель выражается в виде диаграмм вариантов использования (use-case diagram). Этот тип диаграмм служит для проведения итерационного цикла общей постановки задачи вместе с заказчиком. Часто можно услышать следующее: «Заказчик и раньше не знал, и теперь не знает, и в будущем не будет точно знать, что ему нужно». Диаграммы вариантов использования как раз и служат основой для достижения взаимопонимания между программистами-профессионалами, разрабатывающими проект, и заказчиками проекта. Внутри каждого прецедента могут быть определены:
вложенная диаграмма вариантов использования;
диаграмма взаимодействия объектов (collaboration diagram);
диаграмма последовательности взаимодействий (sequence diagram);
диаграмма классов (class diagram);
диаграмма перехода состояний (state diagram).
Логическая модель позволяет определить два различных взгляда на системы: статический и динамический. Статический подход выражается диаграммами классов (class diagram). Именно диаграммы классов служат основой для генерации программного кода на целевом языке программирования. Возможна очень гибкая настройка генерации кода, позволяющая учитывать конкретные соглашения (например, по префиксам имен идентификаторов), принятые в команде разработчиков проекта.
Динамический подход описывается двумя типами диаграмм:
диаграммами взаимодействия объектов;
диаграммами последовательности взаимодействий.
В текущей версии Rational Rose 2000 эти диаграммы не влияют на генерируемый код, однако фирмы-партнеры Rational Software применяют эти диаграммы в своих приложениях. Так, диаграммы последовательности взаимодействий используются в пакете SQA Suite для автоматизированного тестирования компонентов, разработанных в Rational Rose 2000. Классы, веденные на этих диаграммах, попадают в список классов модели и могут использоваться при конструировании диаграмм классов.
Динамика конкретного класса может быть выражена с помощью диаграмм перехода состояний, определяющих модель конечного автомата, описывающего поведение класса. Каждое состояние задается своей вершиной; определены входное и выходное состояния, а также условия перехода из состояния в состояние.
Физическая модель задается компонентной диаграммой (component diagram), которая описывает распределение реализации классов по модулям, и диаграммой размещения (deployment diagram).
После построения первого/последующего слоя статической модели с использованием диаграмм классов можно провести генерацию кода на целевом языке программирования. На уровне кода можно ввести новые уточняющие классы, изменить атрибуты и методы классов модели и затем синхронизировать код и модель, выполнив обратное проектирование, т. е. по модифицированному коду Rational Rose 2000 позволяет построить новую логическую модель взаимосвязи классов между собой. Повторение такой процедуры несколько раз называется итерационным моделированием (round-trip modeling), которое составляет основу мягкого и постепенного уточнения постановки задачи и согласования требований заказчика с имеющимися ресурсами (вычислительными, временными, финансовыми и т. п.).
В CASE-средстве Rational Rose реализованы общепринятые стандарты на рабочий интерфейс программы подобно известным средам визуального программирования. После установки Rational Rose на компьютер пользователя запуск этой программы приводит к появлению на экране рабочего интерфейса.
Рабочий интерфейс Rational Rose состоит из различных элементов, основными из которых являются: главное меню программы; окно диаграммы; cтандартная панель инструментов; окно документации; окно браузера; окно журнала; специальная панель инструментов.
Работа над проектом Создание нового проекта в Rational Rose производится выбором меню File/New. При этом создается несколько пустых диаграмм верхнего уровня: диаграмма вариантов использования, диаграмма классов и др. Каждую диаграмму можно выбрать для редактирования, при этом на инструментальной панели отображаются элементы, доступные для данного вида диаграмм. Выбор типа текущей диаграммы производится в меню Browse.
Общий процесс работы над проектом заключается в добавлении на диаграммы соответствующих графических элементов, установлении отношений между этими элементами, их спецификации и документировании. После проверки правильности модели и согласованности спецификаций ее элементов можно сгенерировать текст программного кода на одном из выбранных языков программирования. Конечно, этот текст можно доработать в соответствующей среде программирования и получить исполнимые модули программ, ориентированные на работу в определенной операционной среде и вычислительной платформе.
Характерной особенностью среды является возможность работы с символами кириллицы. Однако следует заметить, что при спецификации элементов модели с последующей генерацией текста программного кода нужно сразу записывать имена и свойства элементов символами того языка, который поддерживается соответствующим языком программирования.
Процесс добавления графических элементов на диаграммы аналогичен реализованному в популярных средах визуального программирования. При этом следует предостеречь от неосторожного добавления элементов на диаграммы, поскольку каждый добавляемый элемент заносится в браузер. Последующее удаление элемента с диаграммы автоматически не удаляет его из браузера, и необходимо предпринять дополнительные меры для удаления ненужного элемента из модели проекта. Контрольные вопросы
Какие три типа моделей используются при проектировании, каково их назначение?
Назовите основной вид диаграммы в концептуальной модели.
Назовите основной вид диаграммы в логической модели.
Назовите два взгляда на моделируемую систему в логической модели.
Назовите основной вид диаграммы в физической модели.
В чем смысл процедуры итерационного моделирования?
Перечислите элементы рабочего интерфейса программы Rational Rose.
|