Введение

Элемент пользовательского интерфейса

Панель прогресса — это графический элемент управления, используемый для визуализации хода выполнения длительной операции компьютера, такой как загрузка, передача файлов или установка. Иногда графическое отображение сопровождается текстовым представлением прогресса в процентном формате. Данное понятие также может включать в себя «индикаторы воспроизведения» в медиаплеерах, которые отслеживают текущую позицию в медиафайле. Более поздней разработкой является индикатор неопределенного прогресса, который используется в ситуациях, когда объем задачи неизвестен или ход выполнения задачи нельзя определить таким образом, чтобы его можно было выразить в процентах. Этот индикатор использует движение или другой визуальный сигнал (например, узор «парикмахерский столб») для отображения факта выполнения операции, а не размер заполненной части для отображения общего прогресса, что делает его более похожим на анимированный индикатор ожидания, чем на панель прогресса. Существуют также индикаторы прогресса неопределенного типа, которые не имеют формы полосы.

История

Концепция индикатора прогресса была изобретена до появления цифровых вычислений. В 1896 году Кароль Адамецкий разработал диаграмму, названную гармонограммой, но сегодня она более известна как диаграмма Ганта. Однако Адамецкий опубликовал свою диаграмму лишь в 1931 году, и только на польском языке. Поэтому диаграмма теперь носит имя Генри Ганта (1861–1919), который разработал свою диаграмму примерно в 1910–1915 годах и популяризировал её на Западе. Применив эту концепцию к вычислительной технике, первый графический индикатор прогресса появился в докторской диссертации Митчелла Моделя 1979 года «Мониторинг поведения системы в сложной вычислительной среде». В 1985 году Брэд Майерс представил доклад о «индикаторах прогресса в процентах» на конференции по взаимодействию человека и компьютера.

Восприятие

Исследование Майерса заключалось в том, чтобы попросить людей выполнить поиск в базе данных, в одних случаях с индикатором прогресса, а в других – без него. Те, кто ждал, наблюдая за индикатором прогресса, описали более положительный опыт. Майерс пришел к выводу, что использование индикатора прогресса снижает тревожность и повышает эффективность. Обычно индикаторы прогресса используют линейную функцию, при которой продвижение индикатора напрямую пропорционально объему выполненной работы. Однако такие факторы, как скорость диска, объем памяти, производительность процессора, пропускная способность и другие, усложняют эту оценку. Следовательно, индикаторы прогресса часто демонстрируют нелинейное поведение, такое как ускорение, замедление и паузы. Это поведение, в сочетании с нелинейным восприятием времени человеком, приводит к переменному восприятию времени, необходимого для завершения процесса. Это также означает, что индикаторы прогресса можно спроектировать так, чтобы они "казались" более быстрыми. Иногда, для отображения хода особенно длительной операции, например, во время установки программы или копирования большого количества файлов, приложения прибегают к отображению двух индикаторов прогресса одновременно: один для операции в целом, а другой – для отображения хода выполнения отдельных подзадач, таких как установка отдельного компонента или копирование отдельного файла. Наконец, было показано, что графическое оформление индикаторов прогресса также влияет на восприятие продолжительности человеком.