- •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. «Работа с товарами»
Р ис.53. Преобразование связей-ассоциаций 1:1 и 1:n
С
вязь-ассоциация
N:N автоматически преобразуется в таблицу,
отражающую наличие ассоциации, и
идентифицирующие связи от таблиц,
соответствующих классам участвующих
в ассоциации, к таблице-связи. Пример
преобразования показан на рисунке 54.
Рис.54. Преобразование связей-ассоциаций N:N
Внешние ключи таблицы-связи автоматически индексируются для повышения быстродействия работы с данными.
В случае наличия класса-ассоциации, присутствующего на исходной диаграмме и относящегося к связи-ассоциации N:N, созданная автоматически таблица, раскрывающая связь, будет иметь имя идентичное имени класса-ассоциации, и содержать его атрибуты дополнительно к своим.
Связь-агрегация (агрегация по ссылке) автоматически преобразуется в не идентифицирующую связь. Пример преобразования приведен на рисунке 55.
Рис.55. Преобразование связи-агрегации
Так как класс принадлежности таблицы OTCustomer к связи не обязательный (степень 0..1), то для внешнего ключа таблицы OTAddress (ссылающейся на OTCustomer), автоматически будет определенно ограничение на возможность отсутствия значения у атрибута.
Связь-композиция (агрегация по значению) автоматически преобразуется в идентифицирующую связь (см. рис.56).
Р ис.56. Преобразование связи-композиции
Связь-обобщение также как и связь-композиция автоматически преобразуется в идентифицирующую связь (см. рис.57).
Рис.57. Преобразование связи-обобщения
Дополнительно, на уровне схемы БД, могут быть автоматически заданы триггеры, на каскадные изменения данных и на обеспечение заданной верхней границы степени связи (триггеры определяются при помощи редактора связей).
Создание просмотров
Просмотры создаются на уровне схемы БД. При помощи мастера редактирования просмотров из имеющихся таблиц выбираются необходимые атрибуты и определяются условия выборки, определяется область распространении изменений данных, отображаемых в просмотре (в случае если он определен как модифицируемый). Пример просмотра приведен на рисунке 58.
Рис.58. Пример отображения просмотра на диаграмме схемы БД
Связи-зависимости от просмотра к независимым таблицам создаются и отображаются на диаграммах автоматически.
Создание хранимых процедур
В целях обеспечения эффективности обработки данных в БД могут быть определены хранимые процедуры, представляющие собой подпрограмм работы с данными, исполняемые на сервере БД. Создание хранимых процедур выполняется на уровне схемы БД командой «Data Modeler–>New–>Stored Procedure». По средствам использования соответствующего мастера для процедур могут определяться входные и выходные параметры, тело процедуры.
На схемах БД хранимые процедуры отображаются в виде класса, в котором каждой операции соответствует одна из процедур. Для СУБД Oracle в качестве физической реализацией класса-контейнера хранимых процедур может быть определен «Package» (опция Generate Package), являющийся специфической для СУБД Oracle внутренней структурой, включающей в себя хранимые процедуры.
Генерация SQL скрипта
Созданная на основе диаграммы классов модель БД позволяет осуществлять генерацию SQL скрипта (кода для отображения структуры БД), адаптированного к выбранной целевой СУБД. Так как редактирование и создание объектов схемы выполняется на основе мастеров, которые контролируют правильность синтаксического описания и целостности схемной модели, сгенерированный скрипт не будет содержать синтаксических и семантических ошибок, с точки зрения диалекта SQL принятого в выбранной СУБД. Разработчику следует контролировать именование объектов: их имена не могут совпадать с зарезервированными в данной СУБД словами.
Команда «Data Modeler–>Forward Engineer» примененная к компоненте БД, приведет к созданию скрипта для всех ассоциированных с ней схем и табличных пространств (в случаи их наличия), в которых должны реализовываться объекты этих схем. Применяя команду «Data Modeler–>Forward Engineer» к пакету-схеме, SQL скрипт сгенерируется только для объектов выбранной схемы. Результат генерации можно сохранить в текстовом файле или, пользуясь возможностью подключения к серверу БД, выполнить SQL скрипт. При необходимости исполнения скрипта на сервере БД нужно прежде убедится в наличии всей необходимой для подключения информации (имя сервера, имя пользователя, пароль) и прав на создания и изменение объектов БД.
Вызываемый мастер прямой генерации позволяет указать объекты схемы, код для которых необходимо включить в SQL скрипт, а именно:
- табличные пространства;
- комментарии;
- таблицы;
- просмотры;
- триггеры;
- хранимые процедуры;
- индексы.
Кроме того, можно выбрать следующие опции:
генерация кода для первоначального удаления из БД выбранных
объектов;
формирование имён таблиц с учётом префикса,
соответствующего имени схемы БД;
- использование в качестве имен создаваемых объектов строки в двойных кавычках.
Созданный скрипт может нуждаться в дополнительном редактировании, в случае присутствия в нем незаконченных описаний хранимых процедур и триггеров.
