Дизайн для длинного хвоста
Не переусердствуйте
На этапе требований вы определили четкий набор ключевых вариантов использования. Помните об этих приоритетах и избегайте добавления крайних случаев в этот список. По мере того, как вы будете вникать в детали дизайна, появятся новые сценарии, которые вы не рассматривали. Прежде чем расширять масштаб проекта для обработки этих новых сценариев, внимательно рассмотрите последствия.
Голова | Тело | Длинный хвост |
---|---|---|
Ключевые варианты использования Это наиболее важные и наиболее распространенные способы общения пользователей с вашей функцией. Сосредоточьте большую часть своих усилий на том, чтобы сделать эти пути удобными для пользователей. | Объезды Это менее распространенные и часто менее прямые или менее успешные пути разговора через вашу функцию. Потратьте время на их адекватную поддержку, но не тратьте слишком много времени и усилий на их разработку. | Пограничные случаи Это очень необычные пути. Подумайте, достаточно ли хороши общие подсказки типа «Извините, я не знаю, как помочь», или вы можете быть немного более конкретным с аналогичным минимально жизнеспособным решением. |
Используйте правило 80/20 или принцип Парето, чтобы избежать чрезмерного проектирования.
Для дизайна разговора это правило — способ сказать, что не все пути созданы равными. 80% пользователей используют наиболее распространенные 20% возможных путей в диалоге. Поэтому инвестируйте ресурсы соответственно для наибольшего воздействия.
Точно так же существуют компромиссы с точки зрения совершенства или полноты. 80 % работы может уйти на то, чтобы довести до ума последние 20 % проекта. В этих случаях неотшлифованное усилие может быть «достаточно хорошим».
Общие объезды
Между ключевыми вариантами использования и пограничными вариантами есть несколько общих обходных путей. Обычно это новые сценарии, которые вы не рассматривали, пока они не были выявлены во время тестирования или обнаружены во время разработки. И в большинстве случаев они требуют более длительного и менее прямого обращения по альтернативному пути.
Вот несколько распространенных обходных путей, которые следует учитывать:
Несвязанные аккаунты
Неподдерживаемые действия
Покрытие намерений
Дизайн диалога включает в себя создание сценария одной половины диалога в надежде, что он достаточно надежен, чтобы любой мог вмешаться и разыграть другую половину. При проектировании длинного хвоста сосредоточьтесь на том, что пользователь может сказать на каждом этапе вашего диалога, чтобы определить ваши намерения (также называемые грамматиками).
Намерение представляет собой сопоставление между тем, что говорит пользователь, и тем, что ваше действие должно сделать в результате. Например, подсказка «Ты любишь пиццу?» требует намерений для «да» и «нет». С каждым намерением должно быть связано множество обучающих фраз, включая такие синонимы, как «да» и «нет», а также такие варианты, как «мне это нравится» или «это отвратительно». Они могут быть взвешены по частоте их возникновения. Намерения также могут включать аннотацию, например классифицировать «свежую моцареллу» как начинку для пиццы в ответе пользователя «только если она сделана из свежей моцареллы».
Если вы используете Dialogflow, перейдите сюда , чтобы узнать больше о намерениях.
Предотвратить возникновение ошибок лучше, чем устранять ошибки после их возникновения.
Делать.
Не.
Обработка ошибок
Даже при наличии надежных намерений все еще остается место для ошибки. Пользователи могут пойти не по сценарию, промолчав (ошибка «Нет ввода») или сказав что-то неожиданное (ошибка «Нет соответствия»). Используйте подсказки об ошибках , чтобы аккуратно направить пользователей обратно на успешный путь или изменить их ожидания относительно того, что возможно, а что нет.
Хорошая обработка ошибок зависит от контекста, поэтому подсказки для ошибок «Нет ввода» и «Нет совпадения» должны разрабатываться для каждого шага в диалоговом окне.