Сколько времени может потребоваться для появления экрана, прежде чем он будет считаться проблемой производительности?

12

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

Я переусердствую? Какое приемлемое количество времени ждать появления экрана?

синий
источник
2
Это 10 секунд на верхушке машины разработчика или 10 секунд на машине обычного пользователя?
MZB
@MZB: 10 секунд на машине разработчика ...
синий
@ 8kb в чем проблема, из-за которой экран появляется так долго.
AttackingHobo
3
Android будет считать экран зависшим через 5 секунд, если я хорошо помню. Затем он спросит пользователя, хочет ли он убить приложение или продолжать ждать.
Федерико Клез Каллока

Ответы:

23

Это старое исследование, но 10 секунд это плохо:

http://www.useit.com/papers/responsetime.html

со страницы:

Основные рекомендации относительно времени отклика были примерно одинаковыми в течение тридцати лет [Miller 1968; Card et al. 1991]:

• 0,1 секунды - это предел того, что пользователь чувствует, что система реагирует мгновенно, что означает, что никакой специальной обратной связи не требуется, кроме как для отображения результата.

• 1,0 секунда - это предел того, что поток мыслей пользователя должен оставаться непрерывным, даже если пользователь заметит задержку. Как правило, никакой специальной обратной связи не требуется при задержках более 0,1, но менее 1,0 секунды, но пользователь теряет ощущение работы непосредственно с данными.

• 10 секунд - это предел концентрации внимания пользователя на диалоге. Для более длительных задержек пользователи будут хотеть выполнять другие задачи, ожидая завершения работы компьютера, поэтому им следует предоставить обратную связь, указывающую, когда компьютер ожидает, что это будет сделано. Обратная связь во время задержки особенно важна, если время отклика, вероятно, будет сильно варьироваться, поскольку пользователи тогда не будут знать, чего ожидать.

DKnight
источник
1
Никогда не оставляйте пользователей интересующимися, сломали ли они программное обеспечение, даже небольшое всплывающее окно с немедленным всплывающим сообщением с прогнозируемым временем завершения прекращает беспокойство конечного пользователя и оставляет его под контролем.
Патрик Хьюз
4
Я бы сказал, что данные о времени устарели, потому что они были написаны около 20 лет назад. Сегодня, благодаря невероятно мощной машине на каждом настольном компьютере и распространению взаимодействия в реальном времени, люди привыкли к гораздо более короткому времени отклика, чем 10 секунд.
Эран Гальперин
2
Я согласен, что 10 секунд - это слишком долго для отображения экрана без обратной связи. Для всего, что длится более ~ 2 секунд, я бы, вероятно, добавил (по крайней мере) вращающееся колесо, чтобы показать, что программа что- то делает , если не индикатор выполнения.
DMan
1
Данные касаются мыслительных процессов человека. Как таковой он, вероятно, не так уж и устарел. Однако 10 секунд без обратной связи - это слишком много в наши дни. Есть методы для улучшения воспринимаемой реакции.
BillThor
9

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

Джереми
источник
Согласен - вы должны всплыть «курсор ожидания» или какое-либо другое указание очень быстро. Исходя из норм UX, я бы предпочел увидеть это примерно через 0,1-0,25 секунды, а не через две секунды.
Боб Мерфи
3

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

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

FrustratedWithFormsDesigner
источник
1

Мы придерживаемся правила, согласно которому для появления ЛЮБОГО отзыва у пользователя должно пройти не более 2 секунд.

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

Таранг Десаи
источник
1

Хотя DKnight цитирует в своем ответе хорошие исследования , следует учитывать и требования к производительности системы. Выполняют ли пользователи какую-то чувствительную ко времени работу или по какой-то причине нужны быстрые требования? Если бы вы могли как-то спросить пользователей, какое время ответа они хотели бы видеть, особенно с точки зрения минимально приемлемого времени, это было бы лучше всего. Выполнение юзабилити-тестирования с использованием наблюдений также будет полезно для общего удобства использования, и если вы видите, что пользователь испытывает разочарование в связи с ожиданием после выполнения определенного действия, то вы знаете, что нужно вернуться к производительности этой части системы.

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

Томас Оуэнс
источник
0

Я согласен, что 10 секунд, безусловно, слишком много. Я работал с интранет-приложениями в Software House (используется только для сотрудников), и максимальная задержка при загрузке страницы составляла 5 секунд. Это было для меня пределом.

Однако я видел другое внутреннее приложение, действительно очень сложное, но где время загрузки было чем-то драматичным. В худшем случае из-за тысяч выполненных записей / запросов это заняло около 2 минут! Но это, конечно, слишком далеко от общего контекста.

Поэтому я бы в заключение сказал, что 3 или 4 секунды - это предел для предоставления хорошего сервиса ответа.

Francesco
источник
0

Это не проблема производительности как таковая, а проблема графического интерфейса. Пользователь должен СКАЗАТЬ, что делает программа, и если это занимает больше 1-2 секунд, должен отображаться индикатор выполнения.

Тем не менее, для этого может быть ПРИЧИНА, если раньше она была быстрой, но это не то, что вы просили.

Типичная проблема с такими приложениями - нехватка физической памяти, поэтому дисковый ввод-вывод становится узким местом для загрузки и замены. Возможно также, что наборы данных стали настолько большими, что алгоритм O (N ^ 3) теперь просвечивает.


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