Существует ли общеприемлемое определение (мягких) задержек в реальном времени? - PullRequest
3 голосов
/ 16 декабря 2009

Я пытаюсь найти эталон того, как долго пользователи готовы ждать ответа от удаленного сервиса. В моем случае ответ - на очень полезную, но не критичную для бизнеса проверку ввода данных. Я полагаю, что в области HCI, должно быть, была проделана определенная работа.

Если вам известно общепринятое определение для soft ответов в режиме реального времени, то это здорово, но я также буду признателен за ваши аргументированные мысли.

Chris

Ответы [ 4 ]

4 голосов
/ 17 декабря 2009

US DOD MIL-STD 1472-F Human Engineering Standard имеет наиболее широко принятые требования для максимально допустимого времени ответа (из таблицы XXII, стр. 196, время в секундах):

Key Response (нажатие клавиши до положительного ответа, например, «щелчок»): 0,1

Печать ключа (нажатие клавиши до появления символа): 0,2

Поворот страницы (конец запроса до появления первых нескольких строк): 1,0

Сканирование страницы (конец запроса, пока текст не начинает прокручиваться): 0,5

XY Ввод (от выбора поля до визуальной проверки): 0,2

Функция (от выбора команды до ответа): 2,0

Указывая (От ввода точки к отображаемой точке): 0,2

Эскиз (от ввода точки до отображения линии): 0,2

Локальное обновление (изменение изображения с использованием локальной базы данных, например, нового списка меню): 0,5

Обновление хоста (из буфера дисплея): 2,0

Обновление файла (изменение местоположения данных на хосте в легкодоступной форме): 10,0

Запрос - простой (например, изменение масштаба существующего изображения): 2,0

Запрос - сложный (для обновления изображения требуется доступ к файлу хоста): 10.0

Ошибка обратной связи (от команды до отображения часто используемого сообщения): 2.0

Как видите, приемлемое время ответа зависит от того, какой ответ ожидает пользователь. Для чего-то вроде выпадающего меню это максимум 0,5 секунды. Для полной загрузки страницы в браузере требуется, чтобы что-то появилось через 1,0 с - 2,0 с, а полная страница была загружена за 10,0 с. Во всем вышесказанном более короткое время отклика лучше. Только в странных обстоятельствах пользователи будут возражать против времени ответа 0,001 с.

В любом случае, если время отклика будет больше 0,5 с, вам необходимо предоставить обратную связь, такую ​​как спрайтер или пульсатор. Если время отклика составляет минимум 5-15 с (в зависимости от используемого вами стандарта), укажите индикатор выполнения. При использовании индикатора выполнения очень длительное время отклика (порядка или минуты в течение даже часов) может быть приемлемым, если вы настроите его для пользователя как «пакетный» процесс, а не как интерактивная программа. Гораздо лучше для пользователя сделать весь ввод и подождать час, чем делать ввод четыре раза, ожидая 15 минут после каждого.

Приведенный выше список соответствует принятым стандартам. Как долго ваши пользователи готовы ждать (например, перед тем, как сдаться), по существу сводятся к тому, что пользователь делает анализ затрат и выгод. Что я собираюсь получить стоит ждать? Каковы мои потраченные расходы? Есть ли альтернатива (например, другой веб-сайт), которая может сделать это лучше? Могу ли я заниматься другими делами, пока жду, чтобы максимально использовать свое время? Тем не менее, независимо от того, что пользователи захотят сделать, вы можете поспорить, что они будут повторять задержки, превышающие указанные выше стандарты.

1 голос
/ 16 декабря 2009

Время реакции человека, кажется, составляет около 200 мс - все вокруг будет восприниматься как мгновенное. Такого числа трудно добиться, особенно в приложении, которое получает информацию от удаленных служб.

Если вы посмотрите на окно с предложением поиска Google, задержка будет минимальной - менее секунды. Это поразительно быстро и действительно замечательно для веб-приложения. Это действительно хорошо для пользователей Google, но это плохие новости для вас. В наши дни пользователи ожидают, что большинство приложений будут реагировать с одинаковой скоростью и эффективностью; все, что медленнее, считается довольно медленным. Тем не менее, стоит отметить, что терпение людей обычно зависит от сложности поставленной задачи. Простая отправка формы никогда не должна занимать много времени, но, как ожидается, загрузка фотографий займет некоторое время.

У меня такое чувство: иди со своей интуицией. Если ваше приложение довольно простое, вы должны попытаться сократить время ожидания / загрузки менее чем за секунду. Если вы не можете, то лучше всего добавить индикатор, чтобы пользователь знал, что некоторые вычисления выполняются в фоновом режиме. Это может быть небольшая анимация или индикатор выполнения.

0 голосов
/ 16 декабря 2009

Возможно, вы захотите выполнить поиск "SLA" или "Соглашение об уровне обслуживания" . Это документы в веб-бизнесе, которые дают гарантию того, сколько времени потребуется для возврата данных пользователю, будь то документ HTML или вызов веб-службы.

0 голосов
/ 16 декабря 2009

К сожалению, ответ на этот вопрос обычно не является четко определенным числом. Ожидания пользователей сильно различаются и могут меняться в зависимости от того, о чем вы говорите.

Поскольку компьютеры становятся все более распространенными, и мы (потребители) по-прежнему испытываем растущие ожидания в отношении скорости, удаленные службы, веб-сайты и даже приложения должны будут продолжать реагировать быстрее. Вообще говоря, вы хотите, чтобы все было как можно быстрее.

С учетом сказанного, я бы посмотрел, для чего предназначен ваш удаленный сервис. Поскольку вы сказали, что «ответ очень полезен для меня ...», это означает, что он, вероятно, будет часто использоваться. Люди склонны использовать то, что полезно. Если это так, я бы искал способы заставить этот удаленный сервис быстро реагировать.

Конечно, есть также предостережение о том, что вы не хотите начинать оптимизацию до того, как сервис будет написан. Каково текущее время ответа? В каком контексте это будет использоваться? Эти факторы будут очень полезны для определения того, какие самые длинные пользователи готовы ждать службы.

...