Паттерны вариантов использования

Содержание

Слайд 2

Цель презентации
Дать общие представления о
паттернах вариантов использования

Цель презентации Дать общие представления о паттернах вариантов использования

Слайд 3

Литература

9

Другие паттерны

8

Паттерн «Многочисленные ДЛ»

7

Паттерн «CRUD»

6

Паттерн «Выполнить транзакцию»

5

Паттерн «Пакеты ВИ»

4

Назначение паттернов

3

Классификация паттернов

Литература 9 Другие паттерны 8 Паттерн «Многочисленные ДЛ» 7 Паттерн «CRUD» 6

2

Понятие паттерна варианта использования

1

Слайд 4

Что такое паттерн варианта использования?

“Паттерн – решение повторяющейся задачи или проблемы.”
Ivar

Что такое паттерн варианта использования? “Паттерн – решение повторяющейся задачи или проблемы.”
Jacobson,
«Aspect-Oriented Software Development with Use Cases»

“Паттерн варианта использования – проверенная на практике композиция вариантов использования в модели совместно с описанием проблемы, при которой данная композиция может быть использована, и результатами влияния ее на модель.”
Gunnar Overgaard,
«Use Case Patterns and Blueprints»

Слайд 5

Литература

9

Другие паттерны

8

Паттерн «Многочисленные ДЛ»

7

Паттерн «CRUD»

6

Паттерн «Выполнить транзакцию»

5

Паттерн «Пакеты ВИ»

4

Назначение паттернов и

Литература 9 Другие паттерны 8 Паттерн «Многочисленные ДЛ» 7 Паттерн «CRUD» 6
ограничения использования

3

Классификация паттернов

2

Понятие паттерна варианта использования

1

Слайд 6

Какие виды паттернов бывают?

Какие виды паттернов бывают?

Слайд 7

Литература

Другие паттерны

9

Паттерн «Многочисленные ДЛ»

8

Паттерн «CRUD»

7

Паттерн «Выполнить транзакцию»

6

Паттерн «Пакеты ВИ»

5

4

Классификация паттернов

2

Назначение паттернов

Литература Другие паттерны 9 Паттерн «Многочисленные ДЛ» 8 Паттерн «CRUD» 7 Паттерн
и ограничения использования

3

Понятие паттерна варианта использования

1

Слайд 8

Для чего нужны паттерны?

Повышение качества модели и описаний вариантов использования
Структуризация модели и

Для чего нужны паттерны? Повышение качества модели и описаний вариантов использования Структуризация
описаний
Понимаемость модели
Организованность сценариев
Удобство в поддержке и доработке
Повторное использование
Улучшение командной работы
Общий язык общения
Упрощение проверки моделей и описаний
Решение сложной задачи
Сокращение трудозатрат на моделирование и описание вариантов использования

Слайд 9

Что нужно, чтобы правильно использовать паттерны?

Необходимо
Иметь базовые знания в моделировании вариантов использования
Точно

Что нужно, чтобы правильно использовать паттерны? Необходимо Иметь базовые знания в моделировании
и однозначно понимать используемый паттерн

Желательно
Обучить команду аналитиков работе с паттернами
Иметь опыт в моделировании и описании ВИ

Слайд 10

Паттерн «Пакеты ВИ»

Литература

Другие паттерны

9

Паттерн «Многочисленные ДЛ»

8

Паттерн «CRUD»

7

Паттерн «Выполнить транзакцию»

6

Назначение паттернов

Паттерн «Пакеты ВИ» Литература Другие паттерны 9 Паттерн «Многочисленные ДЛ» 8 Паттерн
и ограничения использования

5

4

Классификация паттернов

2

3

Понятие паттерна варианта использования

1

Слайд 11

Паттерн «Пакеты ВИ»

Ситуация применения
Большое количество вариантов использования
Большое количество действующих лиц
Результат применения
Модель

Паттерн «Пакеты ВИ» Ситуация применения Большое количество вариантов использования Большое количество действующих
структурирована
Модель разбита на области
Определены границы системы
Пакеты – «черновики» для компонентов

Слайд 12

Паттерн «Пакеты ВИ»

Советы использования
Пакеты мало зависимы
Варианты использования в пакете сильно связаны
Действующие лица

Паттерн «Пакеты ВИ» Советы использования Пакеты мало зависимы Варианты использования в пакете
в отдельном пакета
1 пакет – 1 диаграмма вариантов использования
1 пакет – 2-9 варианта использования

Слайд 13

Паттерн «Пакеты ВИ»

Пример применения паттерна

Паттерн «Пакеты ВИ» Пример применения паттерна

Слайд 14

Паттерн «Выполнить транзакцию»

Литература

Другие паттерны

9

Паттерн «Многочисленные ДЛ»

8

Паттерн «CRUD»

7

Паттерн «Пакеты ВИ»

6

Назначение паттернов

Паттерн «Выполнить транзакцию» Литература Другие паттерны 9 Паттерн «Многочисленные ДЛ» 8 Паттерн
и ограничения использования

5

4

Классификация паттернов

2

3

Понятие паттерна варианта использования

1

Слайд 15

Паттерн «Выполнить транзакцию»

Ситуация применения
Инфраструктурный ВИ
Характеризует шаг в сценарии
Проверки и действия

Паттерн «Выполнить транзакцию» Ситуация применения Инфраструктурный ВИ Характеризует шаг в сценарии Проверки
на каждом шаге любого ВИ
Результат применения
Описаны в одном месте действия, характерные для шагов любого ВИ
Учтены нефункциональные требования
Отношение «bind» устанавливает связь паттерна с шагом конкретного ВИ

Слайд 16

Паттерн «Выполнить транзакцию»

Советы использования
Выбирайте способ описания действий:
Альтернативные сценарии в описании ВИ «Выполнить

Паттерн «Выполнить транзакцию» Советы использования Выбирайте способ описания действий: Альтернативные сценарии в
транзакцию»
Расширяющие варианты использования для каждого действия

Слайд 17

Паттерн «Выполнить транзакцию»

Нефункциональные требования
Все транзакции в системе должны записываться в журнал событий

Паттерн «Выполнить транзакцию» Нефункциональные требования Все транзакции в системе должны записываться в
(лог)
Только авторизованные пользователи могут иметь доступ к функциональности
Система должна хранить настройки пользователя
Варианты использования
Вести журнал событий
Проверить права
Управлять настройками пользователя

Пример

Слайд 18

Паттерн «Выполнить транзакцию»

Пример описания ВИ

ВИ «Выполнить транзакцию»
Сценарий:
Система приглашает ДЛ идентифицировать необходимую сущность.
ДЛ

Паттерн «Выполнить транзакцию» Пример описания ВИ ВИ «Выполнить транзакцию» Сценарий: Система приглашает
вводит значения и подтверждает запрос
Система находит сущность в БД и представляет ее значения.
ВИ завершается
Альтернативный сценарий 1:
[шаг 3] Проверка прав доступа
Система проверяет права ДЛ.
Если права имеются ВИ продолжается. Если права отсутствуют ВИ завершается.
Альтернативный сценарий 2:
[шаг 2] Журналирование
Система записывает данные запроса в журнал событий (лог)
ВИ продолжается.
……

Слайд 19

Паттерн «CRUD»

Литература

Другие паттерны

9

Паттерн «Многочисленные ДЛ»

8

Паттерн «Выполнить транзакцию»

7

Паттерн «Пакеты ВИ»

6

Назначение паттернов

Паттерн «CRUD» Литература Другие паттерны 9 Паттерн «Многочисленные ДЛ» 8 Паттерн «Выполнить
и ограничения использования

5

4

Классификация паттернов

2

3

Понятие паттерна варианта использования

1

Слайд 20

Паттерн «CRUD»

Ситуация применения
Простые действия, выполняемые с единицей информации: создание, редактирование, чтение и

Паттерн «CRUD» Ситуация применения Простые действия, выполняемые с единицей информации: создание, редактирование,
удаление
Короткие сценарии
Сценарии связаны одной целью
Цель отдельной операции мало значима для заинтересованного лица
Результат применения
Один ВИ вместо четырех
Уменьшение модели ВИ

Слайд 21

Паттерн «CRUD»

Советы использования
Не стоит использовать, когда действия сложные и включают в себя

Паттерн «CRUD» Советы использования Не стоит использовать, когда действия сложные и включают
множество проверок или ограничений

Слайд 22

Паттерн «CRUD»

ВИ «Управление учетными записями пользователей»
Описание: Данный ВИ описывает создание, редактирование, просмотр

Паттерн «CRUD» ВИ «Управление учетными записями пользователей» Описание: Данный ВИ описывает создание,
и удаление учетной записи пользователя клиентского приложения пункта приема платежей.
ДЛ: Администратор дилера (далее Администратор)
Сценарий 1: Создать учетную запись
Администратор инициирует создание….
...
Сценарий 2: Удаление учетной записи
….
ВИ «Сменить пароль»
Описание: Данный ВИ описывает смену пароля оператором пункта приема платежей.
ДЛ: Оператор пункта приема платежей (далее Оператор)
Сценарий :
Оператор инициирует смену пароля
Система запрашивает старый и новый пароли
Оператор вводит старый пароль, дважды вводит новый пароль и подтверждает смену пароля
Системе проверяет корректность старого пароля. Пароль правильный
Система сохраняет новый пароль в учетной записи пользователя
Альтернативный сценарий 1:
[шаг 3] Неверный старый пароль
….

Пример

Слайд 23

Паттерн «Многочисленные ДЛ»

Литература

Другие паттерны

9

Паттерн «CRUD»

8

Паттерн «Выполнить транзакцию»

7

Паттерн «Пакеты ВИ»

6

Назначение паттернов

Паттерн «Многочисленные ДЛ» Литература Другие паттерны 9 Паттерн «CRUD» 8 Паттерн «Выполнить
и ограничения использования

5

4

Классификация паттернов

2

3

Понятие паттерна варианта использования

1

Слайд 24

Паттерн «Многочисленные ДЛ»

Ситуация применения
Два или более ДЛ играют разные роли в ВИ

Паттерн «Многочисленные ДЛ» Ситуация применения Два или более ДЛ играют разные роли
(одно ДЛ «вызывает» другое ДЛ)
ДЛ выполняют одинаковые действия (в сценарии ВИ участвует одно ДЛ)
Результат применения
ДЛ с разными ролями взаимодействуют с системой через различные граничные классы
2а. Нет необходимости переписывать одинаковые сценарии несколько раз, в зависимости от роли.
2б. Один граничный класс вместо двух

Слайд 25

Паттерн «Многочисленные ДЛ»

Советы использования
Разделите ДЛ по их типам или ролям в пакеты

Паттерн «Многочисленные ДЛ» Советы использования Разделите ДЛ по их типам или ролям
(Пользователи/Внешние системы/Другие)
Создайте диаграмму ДЛ, на которой определите их иерархию
Используйте отношения обобщения между Общей ролью и ДЛ
Действия каждого ДЛ записывайте отдельным шагом

Слайд 26

Паттерн «Многочисленные ДЛ»
ВИ «Получить доступ к мониторингу»
ДЛ:
Участник мониторинга платежей (далее Пользователь)
Сценарий

Паттерн «Многочисленные ДЛ» ВИ «Получить доступ к мониторингу» ДЛ: Участник мониторинга платежей
:
Пользователь запускает приложение.
Система запрашивает данные для аутентификации
Пользователь вводит логин и пароль
Система проверяет данные……
……..
ВИ «Оплатить услугу»
ДЛ: Клиент, Провайдер услуг, Банковская система
Сценарий :
…..
Клиент вводит номер абонента и продолжает оплату.
Система передает номер абонента Провайдеру услуг для проверки
Провайдер услуг подтверждает существование номера.
Клиент вносит наличные и подтверждает оплату услуги
Система передает данные платежа Провайдеру услуг
Система передает данные платежа в Банковскую систему

Пример

Слайд 27

Другие паттерны

Литература

Паттерн «Многочисленные ДЛ»

9

Паттерн «CRUD»

8

Паттерн «Выполнить транзакцию»

7

Паттерн «Пакеты ВИ»

6

Назначение паттернов

Другие паттерны Литература Паттерн «Многочисленные ДЛ» 9 Паттерн «CRUD» 8 Паттерн «Выполнить
и ограничения использования

5

4

Классификация паттернов

2

3

Понятие паттерна варианта использования

1

Слайд 28

Разнообразие паттернов

Разнообразие паттернов

Слайд 29

Литература

Другие паттерны

Паттерн «Многочисленные ДЛ»

9

Паттерн «CRUD»

8

Паттерн «Выполнить транзакцию»

7

Паттерн «Пакеты ВИ»

6

Назначение паттернов

Литература Другие паттерны Паттерн «Многочисленные ДЛ» 9 Паттерн «CRUD» 8 Паттерн «Выполнить
и ограничения использования

5

4

Классификация паттернов

2

3

Понятие паттерна варианта использования

1

Слайд 30

Где более подробно почитать про паттерны ВИ?

Литература
G. Övergaard, K. Palmkvist «Use Cases Patterns and

Где более подробно почитать про паттерны ВИ? Литература G. Övergaard, K. Palmkvist
Blueprints»
A. Cockburn «Patterns of Effective Use Cases»
A. Cockburn «Writing Effective Use Cases»
I. Jacobson, Pan-Wei Ng. «Aspect-Oriented Software Development with Use Cases»

Слайд 31

Спасибо за внимание

Спасибо за внимание
Имя файла: Паттерны-вариантов-использования.pptx
Количество просмотров: 180
Количество скачиваний: 0