Узнайте, какой
вы программист?
Проверьте себя в Бинго от Хекслета, получите звание и приятные бонусы
Главная | Все статьи | Код

Зачем нужны use case?

Тестирование Время чтения статьи ~4 минуты
Зачем нужны use case? главное изображение

Существует ряд методик для проверки соответствия готового приложения ожиданиям пользователей. Use case — одна из них. Ее часто используют в разработке для проверки того, как пользователи взаимодействуют с системой для достижения конкретной цели. В чём преимущества этой методики и как правильно составить use case? Давайте разберемся!

Автотестирование на JavaScript c нуля

Попробуйте себя с 5 бесплатных уроков

Что такое use case?

Use case — детальные инструкции с описанием того, что необходимо сделать, чтобы получить определенный ответ системы. Use case — реальный сценарий взаимодействия пользователей с решением для достижения своей цели в системе. Методика дает полное представление о поведении и функциональности решения с точки зрения пользователя. С помощью use case тестируют, например, оформление заказов и покупку товаров в интернет-магазинах и сбор данных через онлайн-формы на сайте.

Часто use case представляют в виде диаграммы. Она лучше всего помогает составить общую картину со всеми участниками процесса, всеми вариантами использования приложения и иногда даже системами, отвечающими за работоспособность сервиса.

Use case диаграмма

Преимущества и ограничения методики use case

  • Use case пишется с позиции пользователя и помогает эффективно протестировать решение с точки зрения заказчика.
  • Use case позволяет командам продуктивно обсуждать основные сценарии использования решения, чтобы отказаться от ненужных вариантов.
  • Use case дает возможность вернуться к любому сценарию и проверить правильность его внедрения на любом этапе разработки.
  • Use case помогает составить полную и подробную документацию проекта, это универсальный инструмент для работы всей команды:
  • Бизнес-аналитики могут с его помощью более точно описать и представить требования к приложению разработчикам.
  • Программисты могут брать use case за основу для написания, проверки и отладки кода.
  • Тестировщики на базе use case оперативнее выявляют соответствие решения требованиям заказчика за счет экономии времени на тест-дизайне.
  • Менеджеры проектов могут использовать use case для контроля над процессом разработки и оценки прогресса.
  • Use case наиболее полно охватывает сценарии поведения пользователей за счет описания пред- и постусловий и бизнес-правил для обычных и нестандартных пользовательских путей и ошибок.
  • Use case не будет эффективен, если основную роль в приложении играют внутренние правила взаимодействия объектов, а не действия пользователей, например трекеры задач с уникальными жизненными циклами, типами и взаимосвязями задач.
  • Use case покрывает только функциональные требования.

Основные элементы use case

  • Пользователи, системы и устройства, которые взаимодействуют с системой, например «покупатель» или «администратор».
  • Предусловия с описанием того, что должно быть сделано до старта реализации сценария использования, и в каком состоянии должна быть система. Например, «пользователь должен авторизоваться в системе».
  • Основной сценарий или последовательность шагов по достижению цели в типичной ситуации. Например, для покупки товара в онлайн-магазине необходимо: выбрать товар, положить его в корзину, указать данные банковской карты для оплаты и подтвердить покупку.
  • Альтернативные сценарии с описанием возможных отклонений от основного пути реализации с успешным завершением сценария. Например, если выбранный товар распродан, система предложит пользователю похожий.
  • Постусловия с описанием изменений в системе после завершения use case. Например, сохранить информацию о покупке в базе данных.
  • Исключения с описанием реакции системы на ошибки или неожиданные события, возникающие во время реализации сценариев. Например, предложить произвести оплату еще раз, если при обработке платежа произошла ошибка.

Познакомьтесь с тестированием бесплатно

Начать с 5 бесплатных уроков

Как составить эффективный use case

  1. Проанализируйте рынок и ЦА для определения пользователей программным продуктом.
  2. Нарисуйте портрет группы пользователей и определите их роли.
  3. Опишите последовательность действий для каждой группы пользователей.
  4. Разработайте основной путь каждой группы пользователей и ответы системы на их действия.
  5. Продумайте альтернативные варианты действий для каждой группы пользователей.
  6. Опишите возможные ошибки и реакцию решения на них.

Как улучшить навыки написания use case

  • Чаще описывайте рутины из обычной жизни — от заваривания чая до приготовления плова. Так вы научитесь раскладывать любой процесс на этапы и начнете уделять внимание мелким деталям.
  • Не усложняйте и формулируйте мысли просто, коротко и понятно для коллег.
  • Развивайте насмотренность и изучайте как можно больше чужих use case.
  • Пишите use case по продуктам с аналогичной функциональностью, чтобы самостоятельно проделать путь пользователя и обратить внимание на особенности проекта.

Технику use case важно уметь использовать специалистам разного уровня. Она помогает понять, как должен работать продукт и что нужно пользователю. На курсе «JS: предметно-ориентированное проектирование» вы погрузитесь в изучение методики use case и обязательно разработаете свои на основе данных реальных проектов.

Рекомендуемые программы
профессия
от 6 300 ₽ в месяц
Осваивайте разработку веб-страниц, оживляйте дизайн макетов, публикуйте сайты и приложения. Отслеживайте ошибки в интерфейсе и устраняйте их
10 месяцев
с нуля
Старт 19 сентября
профессия
от 6 300 ₽ в месяц
Обучитесь разработке бэкенда сайтов и веб-приложений — серверной части, которая отвечает за логику и базы данных
10 месяцев
с нуля
Старт 19 сентября
профессия
от 6 183 ₽ в месяц
Выполняйте ручное тестирование веб-приложений, находите ошибки в продукте. Узнайте все о тест-дизайне.
4 месяца
с нуля
Старт 19 сентября
профессия
от 6 300 ₽ в месяц
Научитесь разработке веб-приложений, сайтов и программного обеспечения на языке Java, программируйте и используйте структуры данных
10 месяцев
с нуля
Старт 19 сентября
профессия
от 5 025 ₽ в месяц
новый
Собирайте, анализируйте и интерпретируйте данные, улучшайте бизнес-процессы и продукт компании. Обучитесь работе с библиотеками Python
9 месяцев
с нуля
Старт 19 сентября
профессия
от 6 300 ₽ в месяц
Занимайтесь созданием сайтов, веб-приложений, сервисов и их интеграцией с внутренними бизнес-системами на бекенд-языке PHP
10 месяцев
с нуля
Старт 19 сентября
профессия
от 5 840 ₽ в месяц
Создание веб-приложений со скоростью света
5 месяцев
c опытом
Старт 19 сентября
профессия
от 9 900 ₽ в месяц
Обучитесь разработке визуальной части сайта — фронтенда, а также реализации серверной — бэкенда. Освойте HTML, CSS, JavaScript
16 месяцев
с нуля
Старт 19 сентября
профессия
от 6 300 ₽ в месяц
Разработка бэкенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 19 сентября
профессия
новый
Организовывайте процесс автоматизации тестирования на проекте, обучитесь языку программирования JavaScript, начните управлять процессом тестирования
8 месяцев
c опытом
в разработке
Старт 19 сентября