- •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. Етика і керування розробкою інтерфейсів
1.3. Орієнтація на людину і на користувача
Ми занадто ускладнили програмне забезпечення і забули головну мету.
Джим і Сандра Сандфорс
Не тільки розроблювачі інтерфейсів, але і керівники підприємств електронної і комп'ютерної промисловості розуміють необхідність орієнтації розробок на нестатки користувачів і покупців. І першим кроком у цьому напрямку є прагнення довідатися свого користувача, що на практиці звичайно означає звертання за допомогою до фахівців у тій чи іншій області. Фахівці дійсно можуть добре розбиратися в особливостях і деталях розв'язуваної проблеми, але їхні експертні знання, як правило, не стосуються питань людської психології. Хоча в користувачів можуть бути різні потреби в залежності від конкретної задачі, проте , у цілому вони виявляють багато загальних ментальних характеристик. Перш ніж приступати до розробки самої чи програми намагатися врахувати розходження між окремими користувачами, розроблювачі інтерфейсу можуть полегшити свою працю, зосередивши увагу на тім, що є загальним для всіх людей з погляду вимог до інтерфейсу. По завершенні цієї стадії розроблювачі інтерфейсу вже можуть приступити до узгодження розходжень між окремими користувачами і групами користувачів і, в остаточному підсумку, до пошуку оптимального варіанта, що задовольняє широкому діапазону вимог користувальницьких задач. Однак цей перший важливий крок, під час якого проект інтерфейсу приводиться у відповідність із загальними законами психології, у процесі розробки звичайно пропускається. Розроблювачі інтерфейсів воліють не задумуватися про це і більше покладаються на так називані "промислові стандарти". У результаті всі широко використовувані сьогодні моделі інтерфейсів побудовані без обліку закономірностей мислення і поводження людини. Наприклад, майже у всіх комп'ютерних системах файли повинні мати власні імена. Тим часом часто виникають ситуації, коли нам важко згадати, під яким ім'ям ми зберегли - файл півроку назад. (Одне з можливих рішень цієї проблеми обговорюється в розділі 5.3.) Таким чином, ми хочемо, щоб програмне забезпечення було простим і зрозумілим, своїм бездоганним поводженням показуючи нам, що його творці більше працювали над зручністю використання, ніж над привабливим зовнішнім виглядом свого продукту.
1.4. Інструменти, що перешкоджають новим ідеям
Створення гарних інтерфейсів вимагає великої і напруженої роботи. Вважається, що такі відомі на ринку інструменти для побудови інтерфейсів, як Vіsual Basіc і Vіsual C++, дозволяють знизити вартість розробки і прискорити її впровадження. Незважаючи на усі свої корисні властивості, ці інструменти нечасто будуть згадуватися в цій книзі. Причина полягає в тому, що вони засновані на традиційних парадигмах і, отже, занадто обмежують ваші можливості. Аналогічним образом принципи створення інтерфейсів у таких системах, як Macіntosh чи Wіndows, а також частина підходів, пропонованих у різних книжкових виданнях, присвячених розробці інтерфейсів, іноді виявляються явно помилковими - найчастіше через корпоративну необхідність підтримувати сумісність з ранніми версіями інтерфейсу, а також з упередження, що користувачі неодмінно віднесуться з несхваленням до спроб відійти від старих, звичних принципів побудови інтерфейсів. Дійсне удосконалення інтерфейсів можливо, якщо підходи до їхньої розробки будуть серйозно переглянуті. При цьому розроблювачу необхідно знайти компроміс між виправданим застосуванням вже устояних парадигм, що полегшують вивчення інтерфейсу користувачем, і новими підходами, що дозволяють зробити інтерфейс більш зручним і практичної. Звичайно, у ситуації, коли часто міняється склад групи чи розроблювачів коло споживачів продукту, прагнення дотримувати відомих підходів, можливо, було б кращим рішенням. Але в тих випадках, коли відомо, що велика частина часу в користувачів буде іти на рутинні, повторювані операції, а навчання в той же час не зажадає великих витрат, вірним рішенням є розробка інтерфейсу з максимальною продуктивністю, навіть якщо згодом від користувача будуть потрібні деякі зусилля по його вивченню.