- •1. Унифицированный язык моделирования uml 5
- •2. Использование case-средства rational rose для проектирования информационных систем 7
- •4.1. Представление Вариантов Использования 110
- •1. Унифицированный язык моделирования uml
- •2. Использование case-средства rational rose для проектирования информационных систем
- •2.1. Описание case-средства Rational Rose
- •2.2. Общие принципы работы в среде Rational Rose
- •2.3. Представления Rational Rose
- •2.3.1. Представление Вариантов использования
- •2.3.2. Логическое представление
- •2.3.3. Представление Компонентов
- •2.3.4. Представление Размещения
- •2.4. Диаграммы представления вариантов использования
- •2.4.1. Диаграммы Вариантов Использования
- •2.4.1.1. Работа с вариантами использования
- •2.4.1.2. Документирование потока событий
- •2.4.1.3. Работа с действующими лицами
- •2.4.1.4. Работа со связями
- •Р ис.4. Связь использования
- •Р ис.5. Связь расширения
- •2.4.1.5. Работа с пакетами
- •2.4.1.6. Работа с примечаниями
- •2.4.2. Диаграммы Взаимодействия
- •2.4.2.1. Идентификация объектов
- •2.4.2.2. Использование диаграмм Взаимодействия
- •2.4.2.3. Диаграммы Последовательности
- •2.4.2.4. Кооперативные диаграммы
- •2.4.2.5. Работа с действующими лицами на диаграмме Взаимодействия
- •2.4.2.6. Работа с объектами
- •2.4.2.6.1. Спецификации объекта
- •2.4.2.6.2. Именование объекта
- •2.4.2.6.3. Соотнесение объекта с классом
- •2.4.2.6.4. Определение устойчивости объекта
- •2.4.2.7. Работа с сообщениями
- •2.4.2.7.1. Работа с сообщениями на диаграмме Последовательности
- •2.4.2.7.2. Работа с сообщениями на Кооперативной диаграмме
- •2.4.2.7.2.1. Добавление потоков данных к Кооперативной диаграмме
- •2.4.2.7.3. Спецификации сообщений
- •2.4.2.7.3.1. Соотнесение сообщения с операцией
- •2.4.2.8. Работа с примечаниями и скриптами
- •2.4.3. Диаграммы деятельности.
- •Р ис. 9. Пример применения условия
- •2.4.3.1. Состояние действия
- •2.4.3.2. Переходы
- •2.4.3.3. Дорожки
- •2.4.3.4. Рекомендации по построению диаграмм деятельности
- •2.5. Диаграммы Логического представления
- •2.5.1. Диаграммы Классов
- •2.5.1.1. Выявление классов
- •2.5.1.2. Создание диаграмм Классов
- •2.5.1.3. Работа с классами
- •2.5.1.3.1. Спецификации классов
- •2.5.1.3.2. Именование классов
- •2.5.1.3.3. Назначение стереотипа для класса
- •Р ис.15. Место нахождения пограничного класса “Форма ввода поручения”
- •2.5.1.3.4. Задание видимости класса
- •2.5.1.3.5. Задание множественности класса
- •2.5.1.3.6. Задание устойчивости класса
- •2.5.1.3.7. Создание абстрактного класса
- •2.5.1.4. Работа с пакетами
- •2.5.1.5. Работа с атрибутами
- •2.5.1.5.1. Добавление и удаление атрибутов
- •2.5.1.6. Спецификации атрибута
- •2.5.1.6.1. Задание типа данных атрибута
- •2.5.1.6.2. Назначение стереотипа для атрибута
- •2.5.1.6.3. Задание видимости атрибута
- •2.5.1.6.4. Задание метода локализации атрибута
- •2.5.1.6.5. Определение статичного атрибута
- •2.5.1.6.6. Определение производного атрибута
- •2.5.1.7. Работа с операциями
- •2.5.1.7.1. Выявление операций
- •2) Операции управления (manager operations) управляют созданием и разрушением объектов. В эту категорию попадают конструкторы и деструкторы классов.
- •2.5.1.7.2. Добавление операций
- •2.5.1.8. Спецификации операции
- •2.5.1.8.1. Задание возвращаемого класса операции
- •2.5.1.8.2. Назначение стереотипа для операции
- •2.5.1.8.3. Задание видимости операций
- •2.5.1.8.4. Добавление аргументов к операции
- •2.5.1.9. Соотнесение операций с сообщениями
- •2.5.1.10. Связи
- •2.5.1.10.1. Ассоциации
- •2.5.1.10.2. Зависимости
- •2.5.1.10.2.1. Зависимости между пакетами
- •2.5.1.10.3. Агрегации
- •2.5.1.10.4. Обобщения
- •Р ис. 25. Связь обобщения
- •2.5.1.10.4.1. Создание обобщений
- •2.5.1.10.5. Выявление связей
- •2.5.1.10.6. Задание множественности
- •2.5.1.10.7. Использование имен связей
- •2.5.1.10.7.1. Использование ролей
- •2.5.1.10.8. Использование статичных связей
- •2.5.1.10.9. Использование дружественных связей
- •2.5.1.10.10. Задание метода включения
- •2.5.1.10.11. Элемент связи
- •2.5.2. Диаграммы Состояний
- •2.5.2.1. Создание диаграмм Состояний
- •2.5.2.1.1. Добавление состояний
- •2.5.2.1.2. Добавление переходов
- •2.5.2.2. Задание специальных состояний
- •2.5.2.2.1. Использование вложенных состояний
- •2.6. Диаграммы Представления Компонентов
- •2.6.1. Представление Компонентов
- •2.6.2.Типы компонентов
- •2.6.3. Диаграмма Компонентов
- •2.6.3.1. Добавление компонентов
- •2.6.3.2. Определение деталей компонентов
- •2.6.3.3. Добавление зависимостей между компонентами
- •2.7. Диаграммы Представления Размещений
- •2.7.1. Узел
- •Информацией в форме помеченного значения
- •С размещёнными на них компонентами
- •2.7.2. Соединения
- •2.7.3. Рекомендации по построению диаграммы Размещения
- •2.8. Дополнительные возможности Rational Rose
- •2.8.1. Генерация программного кода
- •2.8.1.1. Подготовка к генерации программного кода
- •6) Генерация программного кода.
- •2.8.1.2. Этап первый: проверка модели
- •2.8.1.2.1. Нарушения правил доступа
- •2.8.1.3. Этап второй: создание компонентов
- •2.8.1.4. Этап третий: отображение классов на компоненты
- •2.8.1.5. Этап четвертый: установка свойств генерации программного кода
- •2.8.1.6. Этап пятый: выбор класса, компонента или пакета
- •2.8.1.7. Этап шестой: генерация программного кода
- •2.8.1.8. Результаты генерации
- •2.8.1.8.1. Компоненты
- •2.8.2. Обратное проектирование
- •2.8.3. Проектирование бд с использованием Rational Rose
- •2.8.3.1. Использование стереотипов для представления схем бд
- •Р ис.39. Вид схемы в браузере Rational Rose (Data Modeler) р ис.40. Пакет со стереотипом «Schema» (Data Modeler)
- •Р ис.43. Отображение доменов в браузере Rational Rose
- •2.8.3.2. Прямая и обратная генерация схем бд
- •2.8.3.2.1. Формирование схем на основе диаграмм классов
- •Р ис.53. Преобразование связей-ассоциаций 1:1 и 1:n
- •Р ис.56. Преобразование связи-композиции
- •2.8.3.2.2. Отображение существующих бд в диаграммы Rational Rose
- •В окне браузера (слева) и на диаграмме компонентов (справа)
- •Р ис.62. Объектный просмотр, зависящий от объектного типа и реляционных таблиц
- •Пример проектирования информационной системы «стол заказов»
- •4.1. Представление Вариантов Использования
- •4.1.1. Диаграмма Вариантов Использования
- •4.1.2. Диаграммы Взаимодействия
- •4.1.2.1. Диаграммы Последовательности
- •4.1.2.2. Кооперативные диаграммы
- •4.2. Логическое представление
- •4.2.1. Диаграммы Классов
- •4.2.1.1. Выявление классов
- •4.2.1.2. Определение атрибутов и операций классов
- •4.2.1.3. Объединение классов в пакеты
- •Р ис.71. Диаграмма классов
- •Р ис.72. Пакет «Аутентификация»
- •4.2.2. Диаграммы Состояний
- •4.2.3. Диаграммы Деятельности
- •4.3. Представление Компонентов
- •4.4. Представление Размещения
- •Р ис.77 Диаграмма Размещения список литературы
- •Приложение а. «базовые сценарии вариантов использования»
- •Приложение б. «диаграммы последовательности»
- •2. «Изменить ассортимент»
- •3. «Изменить состояние заказа»
- •4. «Аутентификация»
- •5. «Просмотреть ассортимент»
- •6. «Управление заказом»
- •7. «Найти заказ»
- •8. «Копировать заказ»
- •9. «Учёт товаров на складе»
- •Приложение в. «пакеты»
- •1. «Работа с пользователями»
- •2. «Работа с заказами»
- •3. «Работа с товарами»
2. Использование case-средства rational rose для проектирования информационных систем
2.1. Описание case-средства Rational Rose
Rational Rose – мощный инструмент анализа и проектирования объектно-ориентированных программных систем. Он позволяет проектировать системы до написания кода, так что вы можете с самого начала быть уверены в адекватности их архитектуры. С помощью готовой модели недостатки проекта легко обнаружить на стадии, когда их исправление не требует ещё значительных затрат.
Среда Rational Rose позволяет проектировать варианты использования и их диаграммы для визуализации функциональных возможностей системы. Диаграммы взаимодействия показывают, как объекты работают совместно, обеспечивая требуемые функциональные возможности. Для отображения объектов системы и их отношений используются диаграммы Классов. Диаграммы Компонентов иллюстрируют, как классы соотносятся с готовыми физическими компонентами системы. Наконец диаграммы Размещения применяются для визуализации проекта распределённых систем.
Модель Rose – это картина системы. Она содержит все диаграммы UML, действующих лиц, варианты использования, объекты, классы, компоненты и узлы системы. Она детально описывает, что система содержит и как функционирует, поэтому разработчики могут использовать её в качестве эскиза или чертежа создаваемой системы.
Такой чертёж помогает решить старую проблему. Допустим, команда разработчиков обсудила с пользователями и документировала требования к приложению. Программисты готовы написать код. Один из них берёт часть требований, принимает определённые решения и пишет некоторый фрагмент кода. Другой тоже берёт часть требований, принимает свои, совершенно отличающиеся от первого, решения и пишет другой код.
Естественно ожидать различие в стилях программирования; получив одинаковый набор требований, 20 разработчиков создадут 20 различных систем. Таким образом, без подробного обсуждения работы с каждым участником проекта будет трудно понять, какие решения по проекту приняты, из каких элементов состоит система и что представляет собой её общая структура. Не имея документированного проекта, трудно даже быть уверенным, что созданное приложение – это именно то, чего хотели пользователи.
Традиционно процесс, которому мы следуем, выглядит следующим образом:
Х отя требования и были документированы, весь проект находится в голове программиста, и никто, кроме него, не понимает достаточно хорошо архитектуру системы. Когда этот программист оставляет команду, информация уходит вместе с ним.
Модель Rose предлагает совершенно другой подход:
В этом случае проект уже документирован. Разработчики могут собраться вместе и обсудить принимаемые по проекту решения до фактического написания кода. Не нужно больше беспокоиться, что каждый из них пойдёт своим путём в проектировании частей одного и того же приложения.
Однако модели UML используют не только разработчики:
- С помощью диаграмм Вариантов Использования потребители и менеджеры проекта получат общее представление о системе и смогут принять решение о сфере её применения.
- С помощью диаграмм Вариантов Использования и документации менеджеры проекта смогут разделить проект на отдельные управляемые задачи.
- Из документации по вариантам использования аналитики и потребители смогут понять, что будет делать готовая система.
- Изучив ту же документацию, технические писатели смогут приступить к написанию руководства для пользователей и к подготовке планов по их обучению.
- Из диаграмм Последовательности и Кооперативных диаграмм аналитики и разработчики уяснят, насколько логично работает система, поймут её объекты и сообщения между ними.
- С помощью документации по вариантам использования, а также диаграмм Последовательности и Кооперативных диаграмм специалисты по контролю качества смогут получить информацию, требуемую им для написания тестовых сценариев.
- С помощью диаграмм Классов и Состояний разработчики получат представление о фрагментах системы и их взаимодействии друг с другом.
- Из диаграмм Компонентов и Размещения эксплуатационный персонал сможет узнать, какие .EXE и .DLL файлы и другие компоненты будут созданы, а также где в сети они должны быть размещены.
- С помощью модели в целом команда участников проекта сможет отслеживать реализацию исходных требований до кода, а также из любого фрагмента кода выводить исходные требования, которые он реализует.
Итак, Rose - это средство, которое может быть использовано всеми участниками проекта. Это фактически, хранилище информации о контексте и проекте системы, из которого каждый участник проекта извлекает то, что ему нужно.
Помимо всего вышесказанного, Rational Rose позволяет генерировать «скелетный код» на большом количестве различных языков, включая C++, Java, Visual Basic и PowerBuilder. Более того, можно выполнять обратное проектирование кода и создавать таким образом модели уже существующих систем. Весьма выгодно иметь модели Rose для уже существующих приложений. Если сделано изменение в модели, Rose позволяет модифицировать код для его реализации. Если же был изменён код, можно автоматически обновить соответствующим образом и модель. Благодаря этому удаётся поддерживать соответствие между моделью и кодом, уменьшая риск «устаревания» первой.
Среду Rose можно расширить с помощью RoseScript, языка программирования, поставляемого вместе с ней. На RoseScript можно написать код для автоматического внесения изменений в модель, для создания отчётов и выполнения других задач.