usepoint
menu

Use case

Use case (вариант использования/сценарий использования) – это способ описания функциональных требований, который показывает взаимодействие пользователя с системой.

Автор:

Алистер Коберн.

Для чего это:

Определение функциональных требований (помогает определить, какие функции должна иметь система, чтобы удовлетворить потребности пользователей), улучшение юзабилити (помогает разработчикам сделать систему более удобной и понятной для пользователей), тестирование системы (можно использовать для тестирования системы и определения, соответствует ли она функциональным требованиям).

Как использовать:

  1. Определите основных пользователей системы.
  2. Определите цели пользователей.
  3. Опишите сценарии взаимодействия пользователей с системой.
  4. Проверьте все сценарии (можно воспользоваться чек-листом).
  5. Разработайте систему на основании сценариев.

Шаблон:

1. Название

Краткая фраза в виде глагола в неопределенной форме совершенного вида, отражающая цель.

2. Контекст использования

Уточнение цели, при необходимости - условия ее нормального завершения.

3. Область действия

Указание проекта или его части.

4. Уровень

Один из трех уровней: обобщенный (бизнес-требования), цели пользователя (требования пользователей), подфункции (функциональные требования).

5. Основное действующее лицо

Роль основного действующего лица или его описание.

6. Участники и интересы

Список других действующих лиц сценария с указанием их интересов.

7. Предусловие

То, что ожидается, уже имеет место.

8. Минимальные гарантии

То, что гарантируется действующим лицам.

9. Гарантии успеха

То, что получат действующие лица в случае успешного достижения цели.

10. Триггер

То, что "запускает" вариант использования, обычно - событие во времени.

11. Основной сценарий

Здесь перечисляются шаги основного сценария, начиная от триггера и вплоть до достижения гарантии успеха.

Формат описания: <Номер шага> <Описание действия>.

12. Расширения

Здесь последовательно описываются все альтернативные сценарии. Каждая из альтернатив привязана к шагу основного сценария.
Формат описания: <Номер шага.Номер расширения> <Условие>:<Действие или ссылка на подчиненный вариант использования>.

13. Список изменений в технологии и данных

Изменения в данных, которые гарантируются действующим лицам при завершении сценария.

14. Вспомогательная информация

Дополнительная информация, полезная при описании варианта использования.

Пример:

1. Название

Забронировать столик в ресторане

2. Контекст использования

  • Клиент хочет забронировать столик в ресторане на определенное время и количество человек.

  • Бронирование должно быть успешно создано, и клиент должен получить подтверждение.

3. Область действия

Система бронирования столиков ресторана

4. Уровень

Требования пользователей

5. Основное действующее лицо

Клиент

6. Участники и интересы

  • Ресторан: Получить бронирование и оптимизировать рассадку

  • Клиент: Забронировать столик на удобное время

7. Предусловие

  • Клиент знает дату и время, когда хочет посетить ресторан.

  • Клиент знает количество человек, с которым хочет посетить ресторан.

  • Клиент находится на странице бронирования столиков на сайте или в приложении ресторана.

8. Минимальные гарантии

  • Клиент может отменить бронирование на любом этапе.

  • Персональные данные клиента не будут переданы третьим лицам.

9. Гарантии успеха

  • Клиент получит подтверждение бронирования на e-mail или телефон.

  • В ресторане будет зарезервирован столик на нужное время и количество человек.

10. Триггер

  • Нажатие кнопки "Забронировать".

11. Основной сценарий

  1. Клиент выбирает дату и время бронирования.

  2. Клиент выбирает количество человек.

  3. Клиент выбирает желаемую зону в зале (если это предусмотрено).

  4. Клиент вводит свои контактные данные (имя, телефон, email).

  5. Клиент соглашается с правилами бронирования.

  6. Клиент нажимает кнопку "Забронировать".

  7. Система бронирования проверяет доступность столика.

  8. Система бронирования создает бронирование.

  9. Система бронирования отправляет подтверждение бронирования на e-mail или телефон клиента.

12. Расширения

     3.1 Если клиент хочет забронировать столик в vip-зоне, ему необходимо будет предварительно позвонить в ресторан.
     7.1 Если на выбранное время нет свободных столиков, система предложит клиенту другое время или дату.

13. Список изменений в технологии и данных

  • В базе данных создается новое бронирование.