
- •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.2. Закон Хика
Перед тим як перемістити курсор до чи мети зробити будь-як інша дія з набору безлічі варіантів, користувач повинний вибрати цей чи об'єкт дія. У законі Хика затверджується, що коли необхідно зробити вибір з n варіантів, час на вибір одного з них буде пропорційно логарифму по підставі 2 від числа варіантів плюс 1, за умови, що усі варіанти є равновероятными. У цьому виді закон Хика дуже схожий на закон Фитса:
Час (мс) = a + b \log_2(n+1)
Якщо імовірність 1-го варіанта дорівнює p(і), то замість логарифмічного коефіцієнта використовується
\sum_і p(і) \log_2(1/p(і)+1)
Коефіцієнти, використовувані у вираженні закону Хика, у великому ступені залежать від багатьох умов, включаючи те, як представлені можливі варіанти, і те, наскільки добре користувач знаком із системою. (Якщо варіанти представлені незрозумілим образом, значення a і b зростають. Наявність навичок і звичок у використанні системи знижує значення b.) Ми не будемо розглядати ці залежності - для нас важливо, що для прийняття того чи іншого рішення потрібен час; що для прийняття складних рішень потрібно більше часу, чим для прийняття простих рішень; і що взаємозв'язок є логарифмічної. При відсутності більш точних даних для проведення швидких і приблизних обчислень ми можемо скористатися тими ж значеннями a і b, що використовували для закону Фитса.
При використанні будь-яких позитивних і ненульових значень a і b із закону Хика випливає, що надання користувачу відразу декількох варіантів одночасно звичайно є більш ефективним, чим організація тих же варіантів в ієрархічні групи. Вибір з одного меню, що складається з 8 елементів, виробляється швидше, ніж із двох меню, що складаються їхніх 4 елементів кожне. Якщо всі елементи можуть бути обрані з рівною імовірністю і якщо не враховувати час, необхідне для відкриття другого меню (яке, звичайно, ще більш збільшило б час для інтерфейсу, що складає з двох меню), то порівняння часу для вибору одного елемента з восьми (a + b \log_2 8) з подвоєним часом для вибору одного елемента з чотирьох 2 (a + b \log_2 4) покаже, що
а + 3b < 2(а + 2b)
оскільки \log_2 8 = 3, a \log_2 4 = 2, а також оскільки a<2a і 3b<4b.
Це погодиться з даними, отриманими в експериментах зі структурами меню (див. наприклад, Norman і Chіn, 1988).
Наш розгляд законів Фитса і Хика не можна вважати повним. Наприклад, варто звернути увагу на те, що ці закони не випадково приймають ту ж форму, що і теорема Шэннона - Хартли (Shannon-Hartley). Проте , цього короткого розгляду цілком достатньо для того, щоб відзначити їхня цінність з погляду розробки інтерфейсів. Вони можуть бути корисними навіть у тому випадку, коли емпіричні значення коефіцієнтів a і b не відомі (як це було в нашому прикладі). (Більш докладні зведення див. у Card, Moran і Newell, 1983, с. 72-74.)
________________________________________
20 Дискликсия (dysclіcksіa) - від англ. слова clіck (клацнути мишею) і приставки dіs- (порушення функції). - Примеч. пер.
21 Термін дискликсия (dysclіcksіa), що означає захворювання, єдиним ліками від який є добре розроблений інтерфейс, був запропонований Памом Мартіном (Pam Martіn) (переписування, 1997).
22 Можна розробити і більш складні критерії продуктивності. Наприклад, як у нашому випадку, оператор M не використовується в обчисленнях. Проте , простий критерій, що тут описаний, цілком достатній для нашого розгляду.
23 Слово біт (bіt) було запропоновано математиком Джоном У. Тюки (John W. Tukey) як скорочення від слів "двоичная цифра" (Bіnary dіgі) (Shannon і Weaver, 1963, стор. 9).
24 Слово "майже" тут використовується тому, що температура 0 градусів не буде вводитися як 0.00 чи 00.0.
25 Для витягу логарифма по підставі 2 за допомогою чи калькулятора комп'ютера, у якому можливо обчислювати тільки натуральні логарифми, використовуйте наступне вираження: \log_2(х) = \ln(х)/\ln(2).
26 В математиці, що вважається зразком точності і ясності, усе ще застосовується старий стиль написання формул, у якому невизначені перемінні пишуться на початку, ще до того, як ви можете довідатися, що вони позначають. Наприклад, можна зустріти вираження на зразок наступного:
A = \pі r^2,
де r є радіусом окружності, а A - її площею.
Такий порядок може приводити до плутанини, оскільки читачу приходиться перечитувати вираження ще раз спочатку, особливо якщо воно досить довге і містить безліч інших невизначених перемінних. З погляду читача набагато зручніше випливати природному порядку, у якому терміни визначаються до їхнього використання:
Окружність з радіусом r має площа A, що обчислюється як:
A = \pі r^2
5. Уніфікація
Це надзвичайно хитромудро, надзвичайно складно і вкрай ефективно, але в той же час грубо, неекономно і незграбно, і почувається, що є кращий спосіб.
К. Стрэтчи (говорячи не про Wіndows, а про комп'ютер ІBM Stretch у 1962 р.)
Якщо намагатися створити універсальний інтерфейс, у якому були б враховані т вимоги, про які йшла мова в попередніх главах, то з'ясується, що для цього потрібно радикально змінити нашу звичайну практику. Тут можливо багато напрямків. Одне з них полягає в тім, щоб подивитися, що ми можемо зробити в умовах існування Інтернету і сотень мільйонів комп'ютерів, а також інших пристроїв обробки інформації, що уже чи існують які тільки розробляються сьогодні.
В даний час апаратна конфігурація звичайного персонального комп'ютера є майже універсальної. Якщо прийняти точку зору, що усередині майже всіх додатків, що використовують загальні апаратні засоби, акцент робиться на уніфікацію фізичних дій, у нас з'являється можливість розробити всеосяжний і в той же час простий інтерфейс.
Набір дій, якими користувач впливає на зміст - будь воно текстовим, графічним чи мультимедийным, - можна організувати в просту таксономію, за допомогою якої ми зможемо описати будь-який інтерфейс у деякій уніфікованій формі. Така організація дозволила б спростити розробку інтерфейсів. Наприклад, впровадження універсального засобу "скасувати/повторити" (undo/redo) теж дозволяє створювати однакові інтерфейси, тим самим рятуючи від необхідності придумувати засіб обробки помилок спеціально для кожної програми.
Різні додатки мають різні набори команд, і користувач звичайно не може в цілому використовувати команди додатка А при роботі з додатком У чи навпаки. Якщо ж зробити команди незалежними від додатків, то тим самим ми зможемо усунути модальність, що споконвічно їм присуща. При такій уніфікації загальна кількість команд, що користувачу прийдеться запам'ятовувати, істотно скоротиться, - головним чином тому, що уніфікація дозволить позбутися від величезного числа повторень команд. Наприклад, у комп'ютері Canon Cat за допомогою всего 20 команд можна було керувати текстовим процесором, електронними таблицями, створенням, сортуванням і обробкою баз даних, обчисленнями і т.д. У сучасних системах аналогічної потужності використовується більш 100 команд для виконання того ж самого набору задач. Тисячі команд, що використовуються в сучасних середовищах, можна було б скоротити до сотні. Тому що не всі команди можуть застосовуватися до всіх типів даних, виникне необхідність застосовувати до об'єктів перетворювачі типів даних, щоб створити нові об'єкти, до яких за певних умов уже можна буде застосувати обрану команду.
Крім того, може бути зняте й інший поділ, що мається сьогодні між тими засобами, що містяться в комерційних програмних продуктах, і тими, котрі можуть бути створені самим користувачем. Наприклад, сьогодні меню є об'єктами операційної системи, що встановлюються в кожнім додатку. Однак меню являють собою усього лише якийсь текст. Чому б тоді не дати можливість користувачу самому складати список часто використовуваних команд, захистити його від випадкової зміни, прикріпити нагорі екрана і використовувати його як звичайне системне меню? Для спрощення створення таких меню в інтерфейсі можна було б передбачити можливість блокувати і розблокувати якийсь текст, а також можливість його переміщення разом з іншим чи змістом закріплення в якімсь місці на екрані. Текст може бути в різних станах.
Хоча Eudora і Mіcrosoft Word є програмами, у яких можна змінювати меню, проте , для зміни його змісту ви повинні використовувати тільки спеціально призначені для цього засобу. У даному випадку ми саме і говоримо про те, що повинна бути можливість створювати меню звичайними засобами створення і редагування текстів. У цьому змісті меню можна розглядати як зміст.
Ще одним кроком до спрощення інтерфейсу є усунення важке що запам'ятовуються і незручних файлових імен, а також системних файлових структур. При наявності гарних механізмів пошуку використання імен файлів і файлових структур перестає бути необхідним.