Что такое Job Story
Job Story — это техника описания функций ПО, которые позволяют решить проблему пользователя в определённой ситуации.
Job Story акцентирует внимание на ситуации (причина), из-за которой нужно воспользоваться определённой функцией ПО.
Название Job Story придумал Алан Клемент, один из авторов техники JTBD (Job to be Done — «работа, которая должна быть сделана»). Job Stories основаны на JTBD, но это не одна и та же техника. JTBD предполагает, что мы покупаем товары и услуги для выполнения определённой работы, а Job Story описывает, какую именно работу будет выполнять ПО. Здесь и далее речь идёт именно о Job Story. JTBD в этом спринте не рассматривается.
Шаблон Job Story
Шаблон Job Story — это описание мотивации пользователя применять ПО для достижения желанного результата в определённой ситуации. Системный аналитик пишет шаблон Job Story от первого лица так:
- Когда (ситуация),
- я хочу (мотивация),
- чтобы (ожидаемый результат).
В оригинале шаблон выглядит так:
Ситуация
Ситуация описывает, в каких обстоятельствах находится пользователь, что стало причиной, которая толкнула его воспользоваться функцией ПО. Важно описать не проблему пользователя, а именно ситуацию, которая порождает проблему.
Разобраться с этим поможет пример с Job Story для картографического сервиса. Важная функция такого сервиса — возможность смотреть сохранённые на устройстве участки карты без соединения с интернетом. Эта история будет называться «Карты в режиме офлайн».
Ситуацию, которая легла в основу этой истории, правильно записывать так: «Когда путешествую в новой стране без доступа к интернету». Нужно избегать формулировки «когда потерялся». Слово «потерялся» указывает на описание проблемы, формулировка «когда потерялся» не даёт понять, что случилось с пользователем, в каких обстоятельствах это произошло. Вариант «путешествую в новой стране без доступа к интернету» указывает на то, что пользователь оказался в незнакомой ему стране и у него пока нет доступа к интернету. Это значит, что есть некоторое затруднение, которое может привести к проблеме — пользователь может потеряться.
Мотивация (изменение)
В этой части шаблона системный аналитик описывает, какое действие пользователь совершает, чтобы изменить ситуацию и решить проблему.
Как пользователь, который оказался в новой стране без доступа к интернету, может изменить ситуацию? Скорее всего, он хочет открыть на смартфоне карту, которая будет отображаться в офлайн-режиме.
Слово «хочу» в этой части истории можно заменить на «могу», «должен», «обязан» и другие глаголы, которые выражают отношение пользователя к изменениям.
Как и в пользовательских историях, в этой части шаблона не нужно упоминать элементы интерфейса. Проблемы пользователя решают не кнопки, а функции ПО.
Ожидаемый результат
В этой части шаблона нужно указать, что пользователь получит, когда ситуация изменится.
Чтобы сформулировать ожидаемый результат, нужно задаться вопросом: «Для чего?» Формулировки должны давать понимание, к какому результату придёт пользователь: например, сможет добраться из аэропорта до гостиницы.
Нужно избегать абстрактных формулировок ожидаемого результата. Они не позволяют понять, какую проблему пользователю удалось решить и какого результата он смог достичь. «Чтобы не теряться» — как раз абстрактная формулировка, которая не даёт понять, к какому результату пришёл пользователь.
В итоге Job Story «Карты в режиме офлайн» будет сформулирована так:
Когда путешествую в новой стране без доступа к интернету, я хочу открыть на смартфоне карту, доступную в режиме офлайн, чтобы добраться из аэропорта до гостиницы.