- Во-первых, кратко описывается только то, что необходимо для нормального потока сценария использования (то есть, какую функциональность предоставляет сценарий использования).
- По мере продвижения анализа эти шаги детализируются с большим количеством подробностей.
- Наконец, к сценарию использования добавляются альтернативные и исключительные потоки.
- Каждый проект может использовать стандартный шаблон сценария использования для создания спецификаций сценариев использования.
Сценарий использования vs. Спецификация сценария использования
Сценарий использования описывает задачу, выполняемую актером, которая обеспечивает бизнес-ценность. Сценарий использования может быть визуализирован в виде диаграммы сценария использования и/или в виде структурированного текстового формата спецификации:

- Взаимодействие — Сценарии использования системы описывают, как актер взаимодействует с системой для достижения определенной бизнес-цели.
- Ручной — Последовательность действий, выполняемых актером.
- Автоматизированный — Последовательность шагов, выполняемых программой или скриптом.
Характеристики сценария использования
Сценарий использования имеет:
- Только одна цель
- Одна начальная точка
- Одна конечная точка
- Множество путей от начала до конца
- То есть, он определяет поведение для различных возможных условий
- Каждое условие может требовать определенных действий

Например — Клиент оплачивает счет:

Существует несколько путей длядостижения цели:
- По телефону
- По почте
- Лично
- Чеком
- Наличными и т.д.
Пути, которыене приводят к цели:
- Кредитная карта отклонена
Агильный подход к использованию случаев
Модель использования и отдельные случаи использования постепенно развиваются во времени. Не все случаи использования в модели должны быть описаны на одном и том же уровне детализации.
Вовремя и в достаточном объеме
Случаи использования могут быть написаны на разных уровнях детализации и охвата, каждый из которых выполняет свою цель:
- Обзор: Общее описание и обзор высокого уровня функции системы или бизнес-процесса.
- Уровень целей пользователя: Описания, связанные с задачамицелей пользователяи как они взаимодействуют с системой; описания конкретных бизнес-процессов. Случаи использования, ориентированные на цели пользователя, обычно считаются на уровне основных рабочих задач пользователя.
Пример: Снятие наличных с банкомата — полезная задача, и это будет основной случай использования, но ввод вашего ПИН-кода не будет находиться на этом уровне, поскольку он поддерживает основную задачу.
- Подфункция: Описания низкоуровневых действий, которые завершают части основного случая использования.

Примечание: Некоторые случаи использования могут быть полностью описаны на уровне II. Вы останавливаетесь, когда имеете достаточный уровень детализации, полученный вовремя и в достаточном объеме.
Детальное описание случая использования
Детальный случай использования — это текстовое представление, описывающее последовательность событий вместе с другой соответствующей информацией о случае использования в определённом формате. Люди обычно используют стандартный шаблон случая использования для документирования подробной информации о случае использования.

Шаблон случая использования — пример снятия наличных с банкомата
Как уже упоминалось ранее, случаи использования имеют различные стили обозначения (например, диаграммные, UML, текстовый формат). Независимо от используемого стиля обозначения, он должен быть понятным. Вы можете использовать шаблон, такой как шаблон отАлистера Кокберна, или выбрать шаблон, который лучше всего подходит вашей команде.
| Описание случая использования | ||
|---|---|---|
| Имя варианта использования: | Снять наличные | |
| Актеры: | Клиент (основной), Банковская система (второстепенный) | |
| Краткое описание: | Позволяет любому клиенту банка снять наличные со своего банковского счета. | |
| Приоритет: | Обязательно | |
| Статус: | Средняя детализация | |
| Предусловия: | Клиент банка имеет карту, которую нужно вставить в банкомат Банкомат подключен к сети и функционирует нормально |
|
| Постусловия: |
|
|
| Основной поток: |
|
|
| Альтернативные потоки: | 2a. Недействительная карта 2b. Карта вставлена вверх ногами 5a. Похищенная карта 5b. Неверный PIN 10a. Недостаточно наличных в устройстве 10b. Неверное номинал наличных в устройстве 11a. Сумма снятия превышает лимит снятия 12a. Недостаточно средств на банковском счете клиента 14a. Банковская карта застряла в устройстве 15a. Клиент не забирает банковскую карту 16a. Наличные застряли в устройстве 17a. Клиент не забирает наличные
|
|
| Бизнес-правила: | B1: Формат PIN B2: Количество попыток ввода PIN B3: Варианты услуг B4: Варианты сумм B5: Лимиты снятия B6: Карта должна быть извлечена до выдачи наличных |
|
| Нefункциональные требования: | NF1: Время завершения транзакции NF2: Безопасность ввода PIN NF3: Время, отведенное на получение карты и наличных NF4: Поддержка языков NF5: Поддержка слепых и слабовидящих пользователей |
|