Use Case (вариант использования) — описание взаимодействия актора с системой для достижения конкретной цели.
Сценарий фиксирует последовательность шагов: что делает пользователь и как система реагирует в каждом случае — включая ошибки.
Use Case используют системные аналитики, разработчики и тестировщики, особенно при работе над новыми функциями продукта.
Use Case (сценарий использования) — это инструкция-история о том, как человек пользуется системой, чтобы добиться своей цели. Ивар Якобсон — шведский учёный, предложил метод Use Case в 1990-х как инструмент описания функциональных требований. Простыми словами: это сценарий или инструкция, которая отвечает на вопрос: «Что должно произойти, когда пользователь делает то или иное действие?».
Представьте, что вы хотите заказать пиццу через приложение. Use Case опишет весь путь: открыл приложение, выбрал пиццу, добавил в корзину, ввёл адрес, оплатил — и что система делает на каждом шаге (например, показывает цену, проверяет наличие, присылает уведомление).
В Use Case прописывают не только «идеальный» путь, но и варианты, когда что-то идёт не так — например, карта не прошла или товара нет в наличии. Так команда заранее понимает, какие ситуации нужно предусмотреть в программе.
Use Case — это универсальный язык, который связывает бизнес и IT. Сценарии использования решают конкретные задачи для каждой роли в проекте, обеспечивая единое понимание того, что система должна делать.
Для каких задач нужен Use Case:
Роли и их задачи при работе с Use Case
|
Кто |
Зачем им Use Case |
Какие задачи они решают с его помощью |
|
Бизнес-аналитик (БА) |
Мост между бизнесом и IT |
Собирает и структурирует требования от заказчика Переводит бизнес-процессы на язык системных требований Согласовывает с заказчиком, что именно и как будет работать |
|
Системный аналитик |
Проектирование архитектуры и логики |
Декомпозирует сложную систему на отдельные сценарии Определяет, какие данные и запросы нужны для каждого шага Прописывает интеграции со смежными системами (например, с платёжным шлюзом) |
|
UX/UI-дизайнер |
Проектирование пользовательского интерфейса |
Понимает, какие экраны и кнопки нужны пользователю Знает порядок действий пользователя, чтобы спроектировать удобный интерфейс Видит альтернативные пути и может предупредить пользователя о возможных ошибках |
|
Разработчик (Dev) |
Кодирование и реализация |
Получает четкую спецификацию: что писать в коде Знает ожидаемые ответы системы и ошибки Может оценить сложность и сроки разработки каждого сценария |
|
Тестировщик (QA) |
Создание чек-листов и тест-кейсов |
Превращает каждый сценарий в тестовый набор Проверяет не только «счастливый путь», но и все альтернативы и исключения Сравнивает реальное поведение системы с описанным сценарием |
|
Заказчик / Владелец продукта |
Контроль соответствия |
Проверяет, соответствует ли разработанная система его ожиданиям Понимает функциональность без изучения технической документации Может принять решение о приоритетах, глядя на описанные сценарии |
Классическое описание Use Case (варианта использования) в аналитике обычно оформляется в виде структурированного текстового шаблона. Это позволяет единообразно документировать описание функциональных требований, чтобы и заказчик, и разработчик понимали сценарий одинаково.
Обязательные элементы Use Case:
В описании Use Case потоки событий — это сердце документа. Они описывают, как именно пользователь и система взаимодействуют шаг за шагом. Разделение на основной и альтернативные сценарии помогает структурировать логику, не смешивая идеальный сценарий с исключениями.
Что это: основной, или «happy path», поток описывает успешный сценарий, при котором все шаги выполняются без ошибок, сбоев и отклонений. Пользователь достигает своей цели, а система работает штатно.
Особенности:
Что это: альтернативные потоки описывают вариации основного сценария, которые не являются ошибками, но меняют последовательность шагов. Это полноценные пути, по которым пользователь всё равно может достичь своей цели.
Когда возникают:
Как обозначаются: обычно нумеруются буквами или цифрами с указанием шага основного потока, с которого они начинают ветвиться. Например: «Альтернативный поток А-1 (на шаге 3 основного потока)».
|
Характеристика |
Альтернативный поток |
Исключительный поток |
|
Цель пользователя |
Достигается |
Не достигается (сценарий прерывается) |
|
Причина |
Пользователь выбрал другой допустимый путь |
Ошибка, сбой, нарушение условий |
|
Результат |
Use Case завершается успехом |
Use Case завершается неудачей или требует ручного вмешательства |
|
Пример |
«Оплата сертификатом вместо карты» |
«Банк отклонил транзакцию, оплата не прошла» |
Диаграмма вариантов использования — это графический способ описания функциональных требований к системе. Она показывает, кто взаимодействует с системой и что именно эти внешние сущности могут в ней сделать, но не описывает внутреннее устройство системы. Это инструмент для согласования требований с заказчиком и пользователями, помогающий определить, какие функции система должна предоставлять.
Основные элементы диаграммы
|
Элемент |
Обозначение |
Что означает |
|
Актор |
Фигурка человека или прямоугольник |
Внешняя сущность: пользователь, система, устройство |
|
Use Case |
Эллипс с названием |
Конкретная задача, выполняемая системой (глагол + существительное) |
|
Граница системы |
Прямоугольник |
Отделяет внутренние Use Case от внешних акторов |
|
Ассоциация |
Сплошная линия |
Актор участвует в Use Case |
Как строить диаграмму Use Case:
Написание Use Case — это процесс перевода потребностей пользователя в структурированный документ. Вы можете воспользоваться сервисом Draw.io (Diagrams.net) — бесплатный инструмент для построения Use Case Diagram. Ниже алгоритм, который поможет вам ничего не упустить.
Чётко опишите, что входит в вашу систему, а что остаётся за её пределами. Это помогает не смешивать функции системы с действиями пользователя или других систем.
Вопросы для ответа:
Определите все внешние сущности, которые будут взаимодействовать с системой. Актор — это не обязательно человек (им может быть другая система, устройство или даже время/таймер).
Вопросы для ответа:
Пример: для интернет-магазина акторы: «Покупатель», «Менеджер», «Платёжная система», «Служба доставки».
Для каждого актора определите, какие цели он хочет достичь с помощью системы. Каждая цель становится отдельным Use Case.
Правило: название Use Case должно отвечать на вопрос «Что хочет сделать актор?» и начинаться с глагола.
Вопросы для ответа:
Пример (для актора «Покупатель»):
Напишите пошаговый сценарий успешного выполнения Use Case. Это «счастливый путь», где всё идёт идеально.
Правила:
Пример (Оформление заказа):
Добавьте сценарии, которые отклоняются от идеального пути, но не являются ошибками. Это допустимые вариации, при которых цель всё ещё достигается.
Как обозначать: укажите, с какого шага основного потока начинается ветвление.
Пример (альтернатива к шагу 4). Альтернативный поток А-1: Оплата подарочным сертификатом:
Опишите сценарии, при которых выполнение Use Case прерывается из-за ошибок или невозможности выполнить условие. В этих случаях цель не достигается.
Пример: исключительный поток Е-1: Недостаточно средств на карте. Вместо шага 5 основного потока:
Предусловия — что должно быть истинно до начала сценария.
Постусловия — что гарантированно будет после завершения (успешного или неудачного).
Пример:
Покажите готовый Use Case заказчику, разработчикам и тестировщикам. Убедитесь, что все понимают сценарий одинаково.
Чек-лист проверки:
Use Case — мощный инструмент для сложных и формальных проектов, но он не универсален. В некоторых ситуациях его детализация становится тормозом, а не помощью. Ниже — сценарии, где от написания Use Case лучше отказаться:
Универсального формата не существует — выбор зависит от цели документации. Одни форматы фиксируют ценность и бизнес-цель, другие — пошаговую логику и технические детали. Таблица ниже поможет сориентироваться.
|
Задача |
Рекомендуемый формат |
Причина |
|
Зафиксировать ценность функции для бизнеса |
User Story |
Короткий формат, фокус на пользе и потребности пользователя, а не на последовательности шагов |
|
Описать пошаговую логику взаимодействия с системой |
Текстовый Use Case |
Фиксирует основной и альтернативные потоки, предусловия и постусловия — всё, что нужно для разработки и тестирования |
|
Показать высокоуровневую карту функций системы |
Use Case Diagram (UML) |
Язык визуального моделирования, в котором определены диаграммы Use Case Даёт общий обзор акторов и их целей без лишней детализации, полезен для согласования с заказчиком |
|
Описать внутреннюю логику шагов и ветвления |
Диаграмма активности (UML Activity Diagram) |
Наглядно показывает развилки, параллельные ветки и циклы — незаменима для сложной внутренней логики |
|
Показать последовательность вызовов между компонентами |
Диаграмма последовательности (Sequence Diagram) |
Детализирует обмен сообщениями между объектами внутри сценария во времени, полезна для разработчиков |
|
Описать требования при частых итерациях (спринты 1–2 недели) |
User Story + критерии приёмки |
Быстро обновляется, не требует поддержки полного шаблона Use Case, адаптируется под изменения |
|
Задокументировать бизнес-процесс с несколькими системами |
BPMN-диаграмма |
Нотация для описания бизнес-процессов, используется рядом с Use Case для описания сложных процессов Показывает роли, оркестрацию и потоки данных между участниками |
Навык описывать сценарии взаимодействия пользователя с системой входит в стандартную программу подготовки системных аналитиков и разработчиков требований в ИТ-проектах. Например, тестировщик использует Use Case как основу для тест-кейсов: сценарии основного и альтернативных потоков напрямую переносятся в тестовые сценарии.
Ресурсы, которые стоит посмотреть для лучшего понимания темы:
На какие онлайн-курсы стоит обратить внимание на Сравни:
Школа |
Нетология |
Стоимость |
129 600 руб |
Цена в рассрочку |
4 000 руб/мес |
Длительность курса |
|
Программа трудоустройства |
Есть |
Формат |
Запись лекций, Онлайн занятия с преподавателем |
Школа |
Эдюсон |
Стоимость |
80 900 руб |
Цена в рассрочку |
3 370 руб/мес |
Длительность курса |
|
Программа трудоустройства |
Есть |
Формат |
Запись лекций |
Школа |
Яндекс Практикум |
Стоимость |
117 500 руб |
Цена в рассрочку |
15 000 руб/мес |
Длительность курса |
|
Программа трудоустройства |
Есть |
Формат |
Запись лекций, Онлайн занятия с преподавателем |
Универсальной формулы «N Use Case на проект» не существует: количество зависит от масштаба, зрелости требований и подхода команды. Но можно дать практическую методику оценки, чтобы получить реалистичную цифру — и не уйти в бесконечное дробление сценариев.
Практический метод оценки (по шагам):
Пример расчёта для интернет‑магазина:
|
Цель |
Роль |
Вес |
Комментарий |
|
Оформить заказ |
Покупатель |
3 |
Много шагов, оплата, валидации, ошибки |
|
Отследить заказ |
Покупатель |
1 |
Просмотр статуса, без сложных действий |
|
Вернуть товар |
Покупатель |
2 |
Заявка, фото, согласование, расчёт суммы |
|
Добавить товар |
Менеджер |
2 |
Карточка, категории, валидация |
|
Обработать возврат |
Менеджер |
2 |
Согласование, логистика, учёт |
|
Сформировать отчёт |
Админ |
1 |
Выбор фильтров, выгрузка |
Итог:
Use Case (вариант использования) — это сценарий, описывающий, взаимодействие пользователя с системой для достижения конкретной цели. Это пошаговое описание диалога между актором и системой: что делает пользователь и как система на это отвечает.
Ивар Якобсон предложил метод Use Case в 1990-х как замену спискам отдельных функций при описании требований к ПО. Вместо перечисления возможностей системы Якобсон предложил описывать взаимодействие с точки зрения пользователя.
Use Case содержит обязательные поля: название, актор, предусловие, триггер, основной поток, альтернативные потоки, постусловие. Каждый элемент играет свою роль в описании сценария: название отражает цель пользователя, актор — кто взаимодействует, предусловия — что должно быть до начала, постусловия — что гарантируется после завершения.
Основной поток (happy path) отличается от альтернативного: happy path описывает идеальный сценарий без ошибок, альтернативный — все возможные отклонения.
Use Case Diagram — это графическое представление функциональности системы. Use Case Diagram строится на нотации UML: актор — человечек, вариант использования — овал, граница системы — прямоугольник, связи — стрелки с пометками include и extend. Акторы находятся снаружи прямоугольника (границы системы), варианты использования — внутри.
Научиться писать Use Case можно на онлайн-курсах для аналитиков, программистов и разработчиков на Сравни.
Научиться писать сценарии использования можно на онлайн-курсах, представленных на Сравни.