Мой опыт работы с требованиями связан в основном с пользовательскими историями, а не с вариантами использования. Недавно меня добавили в проект в качестве владельца продукта, и заказчик выполнил примерно 80% вариантов использования. Многие из вариантов использования включают в себя более десятка пользовательских историй, и команда обсуждает, как реализовать некоторые из вариантов использования в несколько этапов или как частично реализовать, чтобы уложиться в график. Это не было бы проблемой с историями, но я не уверен, что это лучший подход к вариантам использования.
Можно ли реализовать вариант использования частично? Или это будет означать, что его следует разбить на более мелкие варианты использования с расширениями/включениями? Если это можно частично реализовать, как отслеживать отдельные функции, чтобы не потерять высокоприоритетные элементы?
Например, если у меня есть один вариант использования для проверки орфографии со следующим:
- Выявление потенциально неправильно написанных слов
- Визуальное определение слов с ошибками при вводе пользователем
- Автоматическое исправление слов с часто встречающимися ошибками при вводе текста пользователем.
- Предоставление пользователю списка вариантов написания отдельных слов.
- Предоставление пользователю возможности массового исправления опечаток
- Разрешение пользователю игнорировать потенциальные опечатки один раз
- Разрешение пользователю добавлять слова в словарь
Как мне расставить приоритеты для отдельных функций, а затем отслеживать реализацию функций 1 и 4 на одном этапе, 2, 3, 6 на втором, 5 на третьем и не реализовывать 7? В этом примере это должны быть отдельные варианты использования или один с несколькими альтернативными потоками?