- •Тема 5: поняття «меню». Створення меню 66
- •Тема 6: елементи управління програмного інтерфейсу 77
- •Тема 7: поняття «вікно програми» 95
- •Тематична структура дисципліни
- •Тема 1: загальна характеристика програмних систем
- •1. Інформаційна система як вид програмної системи
- •2. Поняття інтерфейсу. Види інтерфейсів
- •3. Специфіка інформаційних систем
- •4. Основні завдання інформаційних систем
- •Тема 2: типи користувацьких інтерфейсів і їх реалізація
- •1. Організація взаємодії комп'ютера і користувача
- •2. Типи інтерфейсів.
- •3. Реалізація інтерфейсів різних типів
- •1. Організація взаємодії комп'ютера і користувача
- •2. Типи інтерфейсів
- •3. Реалізація інтерфейсів різних типів
- •Тема 3: засади проектування користувацького інтерфейсу
- •1. Психофізичні передумови взаємодії людини і комп’ютера
- •2. Програмна модель користувацького інтерфейсу
- •3. Критерії оцінки інтерфейсу користувачем
- •4. Типи діалогів їх форми
- •5. Розробка діалогів
- •Тема 4: критерії якості інтерфейсу
- •1. Швидкість виконання роботи
- •1.1. Суть правила goms
- •1.2. Тривалість інтелектуальної роботи
- •1.3. Втрата фокусу уваги
- •1.4. Тривалість фізичних дій
- •1.5. Тривалість реакції системи
- •2. Що таке «людські помилки»
- •2.1. Типи помилок за джерелом їх походженням
- •2.2. Основні способи виправлення помилок
- •3. Типи помилок за рівнем їх негативного ефекту
- •Тема 5: поняття «меню». Створення меню
- •1. Що таке меню
- •2. Типи меню
- •3. Структура меню
- •3.1. Будова окремих елементів
- •3.2. Угрупування елементів
- •3.3. Глибина меню
- •4. Контекстне меню
- •Тема 6: елементи управління програмного інтерфейсу
- •1. Кнопки
- •1.1. Командні кнопки
- •1.2. Кнопки доступу до меню
- •1.3.Чекбокси і радіокнопки
- •2. Списки. Види списків
- •2.1. Списки, що розкриваються
- •2.2. Списки, що перегортуються
- •3. Поля введення
- •4. Підписи
- •5. Крутілки
- •6. Комбобокси
- •7. Повзунки
- •Тема 7: поняття «вікно програми»
- •Структура та побудова вікна
- •1. Що таке вікно програми
- •2. Головні елементи вікон
- •3. Структура і будова вікна
- •3.1. Вкладки
- •3.2. Термінаційні кнопки.
- •4. Майстри
- •Тема. 8: проектування інтерфейсу як частина розробки тз
- •1. Прототипи інтерфейсів, як основа відносин замовника та розробники інформаційної системи (іс)
- •2. Проблеми створення прототипів інтерфейсу
- •1. Прототипи інтерфейсів, як основа відносин замовника та розробники інформаційної системи (іс)
- •2. Проблеми створення прототипів інтерфейсу
- •Лабораторна робота №1 (4 год.) Тема. Розробка інтерфейсу, призначеного для користувача : етапи попереднього і високорівневого проектування
- •1. Мета лабораторної роботи є:
- •3. Теоретичні засади.
- •4. Завдання.
- •5. Порядок виконання роботи
- •6. Вимоги до оформлення звіту
- •7. Захист лабораторної роботи. Лабораторна робота №2 ( 4 год.) Тема: «Низькорівневе проектування інтерфейсу: кількісна оцінка і побудова прототипу»
- •1. Мета роботи:
- •3. Теоретичні засади.
- •4. Завдання
- •5. Порядок виконання роботи
- •6. Вимоги до оформлення звіту
- •7. Захист Лабораторна робота № 3 ( 4 год.) Тема: «Проектування довідкової системи»
- •3. Теоретичні засади.
- •4. Завдання
- •5. Порядок виконання роботи
- •6. Вимоги до оформлення звіту
- •7. Захист
- •Лабораторна робота №4 ( 4 год.) Тема «Створення прототипу інтерфейсу і його тестування»
- •1. Мета лабораторної роботи
- •4. Завдання
- •5. Порядок виконання роботи
- •6. Вимоги до оформлення звіту
- •7. Захист
- •Самостійна робота студентів
- •Індивідуально-консультатівна робота
- •Методика активізації процесу навчання
- •Список літератури:
1.1. Командні кнопки
Натиснення на таку кнопку запускає яку-небудь явну дію, тому їх правильніше називати кнопками «Кнопками прямої дії». В той же час, цей найпростіший елемент управління має найбільше особливостей, а саме:
- розміри і поля. Чим більше кнопка, тим легше потрапити на неї курсором. Це правило зазвичай всіма дотримується, в усякому разі кнопок розміром 5 на 5 пікселів вже практично не зустрінеш. Проте окрім простоти натиснення на кнопку є інша складова проблеми: користувачеві повинно бути важко натиснути не на ту кнопку. Досягти цього можна або зміною стану кнопки при наведенні на неї курсором, або встановленням проміжку між кнопками. Перший спосіб має значну популярність в Інтернеті, другий – в звичайному ПЗ. Ні той, ні інший способи не забезпечують стопроцентної надійності. Отже, при інших рівних умовах використовувати варто обидва.
Іншою проблемою розміру кнопок в Інтернеті є невідповідність видимої площі кнопки та площі, що задіяна. Останнім часом, кнопки часто реалізують за допомогою забарвлених осередків таблиці, в яких розміщується текст, що є гіпертекстовим посиланням. Проблема полягає в тому, що користувачі сприймають кнопкою весь осередок, хоча реально «натискається» лише певна мала її частина.
- об'єм. Кнопка повинна бути користувачем натиснута. Відповідно, користувачеві потрібно якось сигналізувати, що натиснена. Кращим способом такої індикації є додання кнопці псевдооб'єму, тобто візуальної висоти. З іншого боку, цей спосіб має недолік в тому, що при його використанні виникає диспропорція між видом кнопок прямої і непрямої дії. Зрозуміло, ніхто не заперечує ще і той факт, що псевдооб'єм кнопок в значному ступені є візуальним шумом. Якщо виникає необхідність максимально підвищувати шанси натиснення користувачем якої-небудь окремої кнопки (наприклад, «Про компанію»), в цих випадках псевдооб'єм цієї кнопки (при інших плоских) дуже підвищує вірогідність натиснення.
- стан кнопки. Кнопка повинна якось інформувати користувачам свої можливі і поточні стани. Кількість станів досить велика, при цьому набори можливих станів в ПЗ і в Інтернеті значно розрізняються. Наприклад, кнопка в Windows може мати п'ять станів: нейтральне, натиснуте, нейтральне зі встановленим фокусом введення, стан кнопки за умовчанням і заблокований стан. В Інтернеті зазвичай використовують менший набір станів: нейтральне, готове до натиснення (onMouseOver) і активне (у випадках, коли набір кнопок використовується для індикації навігації). Натиснутий і заблокований стан використовуються дуже рідко, а «нейтральне зі встановленим фокусом введення» створює браузер.
У визначенні станів кнопки головне відсутність дублювання: не повинно бути різних станів, що виглядають однаково. Також дуже важливо робити заблоковані стани дійсно заблокованими. Так, наприклад, в Інтернеті дуже часто зустрічаються кнопки, натиснення на які відкриває ту ж саму сторінку, тобто натиснення яких можливо, але марне. Такі кнопки повинні не тільки виглядати заблокованими (менш яскравими і значними, ніж звичайні), але й не нести гіпертекстових посилань. Зауважимо, ніколи не видаляйте елементи, які не можна натиснути, замість цього робіть їх заблокованими
- текст і піктограми. Зазвичай при розробці інтерфейсу замовник з дивовижною завзятістю вимагає забезпечувати командні кнопки назвами, поданими дієсловами у формі інфінітива. Розробники ж інтерфейсу з не менш дивовижною завзятістю не слідують цьому правилу. Аргументи у кожного свої: у перших, всі так роблять, значить, це є стандарт і йому потрібно слідувати, у других, немає часу придумувати назву.
Якщо другий контраргумент особливих пояснень не вимагає, то суть першого корисно пояснити. Кнопка, що запускає дію, недаремно називається командною. З її допомогою користувачі віддають системі команди. Команда ж в українській мові формується за допомогою дієслова в наказовій формі. Окрім цього, у дієслівних кнопок є одна велика перевага. Згідно цих дієслів зрозуміло, яка дія відбудеться після натиснення. Це дозволяє розмежувати діалогові вікна в свідомості (оскільки різні діалогові вікна отримують різні кнопки). В результаті, із-за збільшення ступеня унікальності фрагментів системи, навчатися системі виходить краще, ніж з кнопками, однаковими скрізь. Більш того, разом з рядком заголовка вікна, дієслівні кнопки створюють контекст, що дуже корисно при поверненні до перерваної роботи.
Таким чином, слід уникати створення кнопок з текстом, що ні чого не говорить, оскільки такий текст не повідомляє користувачів, що саме відбудеться після натиснення кнопки. При цьому є одна особливість. Існуючі інтерфейси заповнені термінаційними кнопками Ок, Відміна (Cancel) і Застосувати (Apply), що, власне кажучи, і дозволяє розробникам посилатися на стандарт. Однак ці кнопки не є доречним прикладом для повторення. Наприклад, розробники створюють діалогове вікно, внизу якого розташовують три кнопки: Ок, Застосувати і Відміна. Проблеми виникають тоді, коли користувач робить будь-які і починає думати, яку кнопку йому потрібно натиснути. Припустимо, він натискає кнопку ОК. Не враховуючи слабо переданого контексту, дія проходить задовільно. Якщо користувач натисне кнопку Відміна – його команди просто не будуть опрацьовані системою. Припустимо, що користувач натиснув кнопку Застосувати. Система виконує команду користувача і міняє дані. Тепер кнопка ОК не робить нічого (команда вже опрацьована), окрім закриття вікна. Тобто цю кнопку в даному стані потрібно перейменовувати в Закрити. Більш того, кнопка Відміна після натиснення кнопки Застосувати теж починає брехати користувачеві: вона не відміняє дію, а просто закриває вікно. Таким чином, якщо робити інтерфейс повністю однозначним, виходить послідовність кнопок Ок, Застосувати і Відміна після натиснення кнопки Застосувати перетворюється на послідовність Закрити, Застосувати, Закрити.
Окрім того, що це просто безглуздо, це погано вже із-за того, що користувач виявляється обдурений: він думає, що якщо натиснути кнопку Відміна, його дії в не будуть прийняті системою до уваги. В результаті, якщо користувач натисне спочатку кнопку Застосувати, а потім кнопку Відміна, він гарантовано зробить помилку, в якій винна система.
Навпаки, якби замість кнопки Застосувати була б кнопка Попередній перегляд, все б працювало чудово. Мало того, що користувач не плутався б в кнопках, він міг би уникнути багатьох помилок, проглянувши результат своїх дій перед їх остаточним ухваленням. Але розробникам реалізовувати режим попереднього перегляду важко. Набагато легше вставити кнопку Застосувати, а те, що це недоречно, їх не турбує. Таким чином, кнопка Застосувати виявляється не просто непотрібною, але і відверто шкідливою. Її можна застосовувати тільки в палітрах, замінюючи нею кнопку ОК, щоб показувати користувачеві, що палітра не зникне з екрану після натиснення кнопки. Зрозуміло, в цьому випадку, з нею повинна використовуватися кнопка Закрити, замість кнопки Відміна. У решті всіх випадків ця кнопка не потрібна.
Окрім тексту на кнопках, можна застосовувати піктограми. Ця можливість рідко використовується в ПЗ, але дуже широко в Інтернеті. Формально, на таких кнопках піктограми не дуже інформативні через те, що вони зазвичай повинні передавати користувачам ідею дії (тобто дієслово), а дія погано передається піктограмами. Звичайно, навіть і нерозпізнана піктограма гарна тим, що вона візуально відокремлює кнопку від кнопки і для досвідчених користувачів забезпечує прискорення пошуку потрібної кнопки (користувач, наприклад, може пам'ятати, що йому потрібна кнопка з синім плямою на піктограмі). Отже, піктограми хороші для тих кнопок, для яких піктограми подати легко, і для тих кнопок, які потрібні особливо часто (при цьому якість піктограми особливого значення не має, важливо тільки відмінності піктограм між собою).
