User Story (історія користувача) – це неформальне загальне пояснення функцій програмного забезпечення, написане з точки зору кінцевого користувача. Її мета полягає в тому, щоб сформулювати, яку цінність для замовника несе функціонал програмного забезпечення. Вона формулює не тільки бізнес-цінність, а й вимоги для розробки й тестування. User Story називається так, бо вона створюється через розповідь, як історія.
Можна також зустріти й інше визначення – це інструмент, завдяки якому замовник точно дає зрозуміти свої потреби.
Ключовим компонентом гнучкої розробки програмного забезпечення є ставлення людей на перше місце, а історія користувача ставить кінцевих користувачів у центр всього процесу. Ці історії не використовують технічну мову, щоб створити контекст для команди розробки продукту. Прочитавши історію користувача, команда розуміє, що вони роблять, чому вони це роблять і яку цінність має продукт, який вони створюють.
Сам формат можна викласти в короткому реченні на кшталт: «Як персона, я хочу, так що...» (As a [person], I [want to], [so that]). Так користувач/замовник пояснює, що саме він хоче і навіщо.
Далі розглянемо цей шаблон більш детально, щоб стало зрозуміліше, як саме повинна звучати User Story:
«Персона» – для кого ми це створюємо?
«Хочу» – тут описуються наміри людей, а не функції, які вони використовують.
«Так що» – яка мета? Якої загальної вигоди потрібно досягти? Яку проблему необхідно вирішити?