- •1. Передумови
- •1.1. Визначення інтерфейсу
- •1.2. Простої повинне залишатися простим
- •1.3. Орієнтація на людину і на користувача
- •1.4. Інструменти, що перешкоджають новим ідеям
- •1.5. Розробка інтерфейсу як частина загального циклу розробки
- •1.6. Визначення человекоориентированного інтерфейсу
- •2. Когнетика і локус уваги
- •2.1. Ергономіка і когнетика: що ми можемо і чого не можемо
- •2.2. Когнітивне свідоме і когнітивне несвідоме
- •2.3. Локус уваги
- •2.3.1. Формування звичок
- •2.3.2. Одночасне виконання задач
- •2.3.3. Сингулярность локусу уваги
- •2.3.4. Джерела локусу уваги
- •2.3.5. Експлуатація єдиного локусу уваги
- •2.3.6. Поновлення перерваної роботи
- •3.2. Режими
- •3.2.1. Визначення режимів
- •3.2.2. Режими, користувальницькі настроювання і тимчасові режими
- •3.2.3. Режими і квазирежимы
- •3.3. Моделі "іменник-дієслово" і "дієслово-іменник"
- •3.4. Видимість і заможність
- •3.5. Монотонність
- •3.6. Міф про дихотомію "новачок-експерт"
- •4.2. Модель швидкості печатки goms
- •4.2.1. Тимчасові інтервали в інтерфейсі
- •4.2.2. Розрахунки по моделі goms
- •4.2.3. Приклади розрахунків по моделі goms
- •4.2.3.1. Інтерфейс для Хола: варіант 1. Діалогове вікно
- •4.2.3.3. Інтерфейс для Хола: варіант 2
- •4.3.1. Продуктивність інтерфейсу для Хола
- •4.3.2. Інші рішення інтерфейсу для Хола
- •4.4. Закон Фитса і закон Хика
- •4.4.1. Закон Фитса
- •4.4.2. Закон Хика
- •5.1. Уніфікація й елементарні дії
- •5.2. Каталог елементарних дій
- •5.2.1. Підсвічування, вказівка і виділення
- •5.2.2. Команди
- •5.2.3. Екранні стани об'єктів
- •5.3. Імена файлів і файлові структури
- •5.4. Пошук рядків і механізми пошуку
- •5.4.1. Роздільники в шаблоні пошуку
- •5.4.2. Одиниці взаємодії
- •5.5. Форма курсору і методи виділення
- •5.7. Ліквідація додатків
- •5.8. Команди і трансформатори
- •6.1. Інтуїтивні і природні інтерфейси
- •6.2. Поліпшена навігація: ZoomWorld
- •6.3. Піктограми
- •6.4. Способи і засоби допомоги в человекоориентированных інтерфейсах
- •6.4.1. Вирізувати і вставити
- •6.4.2. Повідомлення користувачу
- •6.4.3. Спрощення входу в систему
- •6.4.4. Автоповтор і інші прийоми роботи з клавіатурою
- •6.5. Лист від одного користувача
- •7.1.2. Важливість ведення документації при створенні програм
- •7.2. Режими і кабелі
- •7.3. Етика і керування розробкою інтерфейсів
4.4. Закон Фитса і закон Хика
Основи знань слід шукати в математику.
Роджер Бэкон "Opus Majus", XІІІ в.
Різні кількісні закони, що мають відношення до розробки інтерфейсів, мають гарне когнітивне обґрунтування, і їхня правильність була неодноразово перевірена. Ці закони часто дають нам додаткові дані, на основі яких можна приймати ті чи інші рішення, зв'язані з розробкою інтерфейсів. Закон Фитса (Fіtts' Law) дозволяє визначити кількісно той факт, що чим далі знаходиться об'єкт від поточної позиції чи курсору чим менше розміри цього об'єкта, тим більше часу буде потрібно користувачу для переміщення до нього курсору. Закон Хика (Hіck's Law) дозволяє кількісно визначити спостереження, що полягає в тім, що чим більше кількість варіантів заданого типу ви надаєте, тим більше часу потрібно на вибір.
4.4.1. Закон Фитса
Представимо, що ви переміщаєте курсор до кнопки, зображеної на екрані. Кнопка є метою даного переміщення. Довжина прямої лінії, що з'єднує початкову позицію курсору і найближчу крапку цільового об'єкта, визначається в законі Фитса як дистанція. На основі даних про розміри об'єкта і дистанції закон Фитса дозволяє знайти середній час, за яке користувач зможе перемістити курсор до кнопки.
В одномірному випадку, при якому розмір об'єкта уздовж лінії переміщення курсору позначається як S, а дистанція від початкової позиції курсору до об'єкта - як D (мал. 4.6), закон Фитса формулюється в такий спосіб:
Час (мс) = a + b \log_2(D/S+1)
(Константи a і b установлюються досвідченим шляхом по параметрах продуктивності людини.)26
Рис. 4.6. Відстані, що використовуються в законі Фитса для визначення часу, необхідного для переміщення курсору до мети
Час, що обчислюється, відраховується від моменту, коли курсор починає рух по прямої лінії, до моменту, коли користувач клацає мишею по цільовому об'єкті. Логарифм по підставі 2 є мірою труднощів задачі в кількості біт інформації, що потрібно для опису (одномірного) шляху переміщення курсору.
Для обчислення часу можна використовувати будь-як одиниці виміру дистанції, тому що D/S є відношенням двох дистанцій і тому не залежить від одиниці виміру. Звідси випливає, що хоча вказівний пристрій може переміститися на відстань більше чи менше, чим та відстань, на яке переміститься на екрані курсор, закон усе рівно працює, за умови, що співвідношення між рухом ГУВ і курсору є лінійним. Закон Фитса може застосовуватися тільки до тих типам переміщення, що відбуваються при використанні більшості людино-машинних інтерфейсів, тобто до таких переміщень, що невеликі щодо розмірів людського тіла і які є безупинними (чиненим одним рухом). Для наближених обчислень я використовую наступні значення констант у рівнянні закону Фитса: a=50, b=150.
Також проводилися тестування з законом Фитса, доповненим деякими більш складними параметрами, такими, наприклад, як переміщення курсору між прямими чи скривленими границями (Accot і Zhaі, 1997). Для двовимірних цілей звичайно можна одержати коректне наближене значення часу, необхідного для переміщення курсору до об'єкта, використовуючи як параметр S найменше зі значень розмірів об'єкта по чи горизонталі по вертикалі (Mackenzіe, 1995).
Рис. 4.7. Меню в Macіntosh, розташоване у верхньої границі екрана, збільшується в розмірі, що є більш ефективним у порівнянні з меню, що спливає через границю екрана
Закон Фитса дозволяє пояснити, наприклад, чому перемістити курсор до меню в стилі Apple Macіntosh, що розташовується на границі екрана (мал. 4.7), набагато швидше, ніж перемістити курсор до меню в стилі Mіcrosoft Wіndows, що спливає через границю екрана (мал. 4.8). Розмір S меню в Wіndows на моєму екрані складає 5 мм. Ефективний розмір меню в Macіntosh є досить великим, тому що користувачу не потрібно зупинятися в межах смуги меню; він може просто пересунути ГУВ на будь-яку відстань перевищуюче відстань, необхідне для розміщення курсору в межах меню, - курсор у будь-якому випадку зупиниться на границі екрана.
Рис. 4.8. Меню в Wіndows знаходиться під верхньою границею екрана, тому користувачу потрібно більш точно підводити курсор до меню, щоб, можна було викликати підменю
Ряд виконаних мною тестів допоміг установити, що користувачі Macіntosh звичайно зупиняються в межах 50 мм від границі екрана, тому для Macіntosh ми можемо прийняти 50 мм як S. При використанні 14-дюймового плоского монітора середня відстань, на яке потрібно перемістити курсор, щоб досягти панелі меню, складає 80 мм. Таким чином, час переміщення курсору до якому-небудь з елементів меню в Macіntosh буде:
50 + 150 \log_2(80/50+1) = 256 мс
Цей час є набагато меншим, чим те, що потрібно на переміщення курсору до необхідного елемента меню в Wіndows:
50 + 150 \log_2(80/5+1) = 663 мс
Отримані значення часу відносяться тільки лише до переміщення курсору. Щиглик по цільовому об'єкті, до якого переміщався курсор, додає в середньому ще 0.1 с. (Значення оператора K=0.2, прийняте в моделі GOMS, враховує і натискання кнопки, і її відпускання, у той час як зазначене значення враховує тільки натискання кнопки.) При проведенні звичайного експерименту вам доведеться додати ще 0.25 з, щоб врахувати час людської реакції на початку руху курсору. З обліком усіх цих факторів ми одержимо саме ті значення, що я одержав експериментальному шляхом: у середньому користувачу потрібно близько 0.6 з, щоб відкрити Apple-меню, у той час як для відкриття Wіndows-меню потрібно більш 1 с. Таким чином, цей аналіз пояснює, чому при розробці інтерфейсу Macіntosh меню були навмисно поміщені на границі екрана.
