
- •Тема 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. Захист
- •Самостійна робота студентів
- •Індивідуально-консультатівна робота
- •Методика активізації процесу навчання
- •Список літератури:
Тема 2: типи користувацьких інтерфейсів і їх реалізація
1. Організація взаємодії комп'ютера і користувача
2. Типи інтерфейсів.
3. Реалізація інтерфейсів різних типів
1. Організація взаємодії комп'ютера і користувача
Під діалогом в даному випадку розуміють регламентований обмін інформацією між людиною і комп'ютером, здійснюваний в реальному масштабі часу і направлений на сумісне розв’язання конкретної задачі: обмін інформацією і координація дій.
Кожен діалог складається з окремих процесів введення-виводу, які фізично забезпечують зв'язок користувача і комп'ютера.
Обмін інформацією здійснюється передачею повідомлень і сигналів, які управляють. Повідомлення – порція інформації, що бере участь в діалоговому обміні. Розрізняють:
вхідні повідомлення, які генеруються людиною за допомогою засобів введення: клавіатури, маніпуляторів ( наприклад миші)тощо;
вихідні повідомлення, які генеруються комп'ютером у вигляді текстів, звукових сигналів і/або зображень і виводяться користувачеві на екран монітора або інші пристрої виведення інформації. Схематично організацію взаємодії користувача і машини представлено на рис.2.1.
Рис. 2.1. Організація взаємодії комп'ютера і користувача
В основному користувач генерує повідомлення наступних типів: запит інформації, запит допомоги, запит операції або функції, введення або зміна інформації, вибір поля кадру тощо. У відповідь він отримує підказки або довідки, інформаційні повідомлення, що не вимагають відповіді, накази, що вимагають дій, повідомлення про помилки, що потребують у відповідь дій, зміна формату кадру тощо.
Основні пристрої, що забезпечують виконання операцій введення-виводу є:
для виведення повідомлень:
монохромні і кольорові монітори – виведення оперативної текстової і графічної інформації;
принтери – отримання «твердої копії» текстової і графічної інформації;
графічні пристрої – отримання «твердої копії» графічної інформації;
синтезатори мови – мовний вивід;
звукові генератори – виведення музики тощо.
для введення повідомлень:
клавіатура – текстове введення;
планшети – графічне введення;
сканери – графічне введення;
маніпулятори, світлове перо, сенсорний екран – позиціонування і вибір інформації на екрані тощо.
2. Типи інтерфейсів
На ранніх етапах розвитку обчислювальної техніки призначений для користувача інтерфейс розглядався як засіб спілкування людини з операційною системою і був достатньо примітивним. В основному він дозволяв запустити завдання на виконання, пов'язати з ним конкретні дані і виконати деякі процедури обслуговування обчислювальної установки.
З часом в міру вдосконалення апаратних засобів з'явилася можливість створення інтерактивного програмного забезпечення, що використовує спеціальні призначені для користувача інтерфейси. В даний час основною проблемою є розробка інтерактивних інтерфейсів до складних програмних продуктів, розрахованих на використання непрофесійними користувачами. Останніми роками були сформульовані основні концепції побудови таких інтерфейсів і запропоновано декілька методик їх створення.
По аналогії з процедурним і об'єктним підходом до програмування розрізняють процедурно-орієнтований і об'єктно-орієнтований підходи до розробки інтерфейсів - типи інтерфейсів.
Процедурно-орієнтовані інтерфейси використовують традиційну модель взаємодії з користувачем, засновану на поняттях «процедура» і «операція». В рамках цієї моделі програмне забезпечення надає користувачеві можливість виконання деяких дій, для яких користувач визначає відповідні дані і наслідком виконання яких є отримання бажаних результатів.
Об'єктно-орієнтовані інтерфейси використовують дещо іншу модель взаємодії з користувачем, орієнтовану на маніпулювання об'єктами наочної області. В рамках цієї моделі користувачеві надається можливість безпосередньо взаємодіяти з кожним об'єктом і ініціювати виконання операцій, в процесі яких взаємодіють декілька об'єктів. Завдання користувача формулюється як цілеспрямована зміна деякого об'єкту, що має внутрішню структуру, певний зміст і зовнішнє символьне або графічне представлення. Об'єкт при цьому розуміється в широкому сенсі слова, наприклад, модель реальної системи або процесу, база даних, текст тощо. Користувачеві надається можливість створювати об'єкти, змінювати їх параметри і зв'язки з іншими об'єктами, а також ініціювати взаємодію цих об'єктів. Елементи інтерфейсів даного типу включені в призначений для користувача інтерфейс Windows. Наприклад, користувач може «узяти» файл і «перемістити» його в іншу теку. Таким чином він ініціює виконання операції переміщення файлу.
Застосування процедурно-орієнтованих інтерфейсів в даному випадку не означає використання структурного підходу до розробки відповідного програмного забезпечення. Більш того, реалізація сучасного процедурно-орієнтованого призначеного для користувача інтерфейсу на базі структурного підходу є дуже складним і трудомістким завданням.
Порівняння вищезазначених типів інтерфейсів подано у таблиці 2.1.
Таблиця 2.1.
Порівняння основних типів інтерфейсів
Процедурно-орієнтовані призначені для користувача інтерфейси |
Об'єктно-орієнтовані призначені для користувача інтерфейси |
Забезпечують користувачів функціями, необхідними для виконання завдань. |
Забезпечують користувачам можливість взаємодії з об'єктами. |
Акцент робиться на завдання. |
Акцент робиться на вхідні дані і результати. |
Піктограми представляють додатки, вікна або операції. |
Піктограми представляють об'єкти.
|
Зміст тек і довідників відображається за допомогою таблиць і списків. |
Теки і довідники є візуальними контейнерами об'єктів. |
Розрізняють процедурно-орієнтовані інтерфейси трьох підтипів: примітивні, з меню, з вільною навігацією.
Примітивним називають інтерфейс, який організовує взаємодію з користувачем в консольному режимі. Зазвичай такий інтерфейс реалізує конкретний сценарій роботи програмного забезпечення. Наприклад: введення даних – рішення задачі – виведення результату (рис.2.2, а). Єдине відхилення від послідовного процесу, яке забезпечується даним інтерфейсом, полягає в організації циклу для обробки декілька наборів даних (рис.2.2, б). Подібні інтерфейси використовують тільки в процесі навчання програмуванню або в тих випадках, коли вся програма реалізує одну функцію, наприклад, в деяких системних утилітах.
Ріс. 2.2. Типова структура алгоритму програм з примітивним інтерфейсом: а) послідовний; б) – з можливістю повторення
Інтерфейс-меню, на відміну від примітивного інтерфейсу, дозволяє користувачеві вибирати необхідні операції із спеціального списку, що виводиться йому програмою. Ці інтерфейси передбачають реалізацію багатьох сценаріїв роботи, послідовність дій в яких визначається користувачем.
Розрізняють однорівневі і ієрархічні меню. Перші використовують для порівняно простого управління обчислювальним процесом, коли варіантів небагато (не більше 5-7), і вони включають операції одного типу|, наприклад, Створити, Відкрити, Закрити тощо. Ієрархічні – при великій кількості варіантів або їх очевидних відмінностях, наприклад, операції з файлами і операції з даними, що зберігаються в цих файлах.
Інтерфейси даного типу неважко реалізувати в рамках структурного підходу до програмування. На рис. 2.3. показана типова структура алгоритму програми, організованої за однорівневим меню. Алгоритм програми з багаторівневим меню зазвичай будується за рівнями, при цьому вибір команди на кожному рівні здійснюється так само, як для однорівневого меню.
Рис. 2.3. Типова структура алгоритму програми з однорівневим меню
Інтерфейс-меню передбачає, що програма знаходиться або в стані Рівень меню, або в стані Виконання операції. В стані Рівень меню здійснюється виведення меню відповідного рівня і вибір потрібного пункту меню, а в стані Виконання операції реалізується сценарій вибраної операції. Як виняток іноді користувачеві надається можливість завершення операції незалежно від стадії виконання сценарію і/або програми, наприклад, за допомогою натиснення клавіші Esc.
При цьому деревовидна організація меню передбачає строго обмежену навігацію: або переходи «вгору» до кореня дерева, або – «вниз» по вибраній гілці. Кожному рівню ієрархічного меню відповідає своє певне вікно, що містить пункти даного рівня. При цьому можливі два варіанти реалізації меню: кожне вікно меню займає весь екран або на екрані одночасно присутньою є декілька меню різних рівнів. У другому випадку вікна меню з'являються при виборі пунктів відповідного верхнього рівня — «випадні» меню.
В умовах обмеженої навігації (незалежно від варіанту реалізації) пошук необхідного пункту більш ніж дворівневого меню може виявитися непростим завданням.
Інтерфейси-меню в даний час також використовують рідко і лише для порівняно простого програмного забезпечення або в розробках, які мають бути виконані за структурною технологією і без використання спеціальних бібліотек.
Інтерфейси з вільною навігацією також називають графічними призначеними для користувача інтерфейсами (GUI – Graphic User Interface) або інтерфейсами WYSIWYG (What You See Is What You Get – що бачиш, то і отримаєш, тобто що користувач бачить на екрані, то він і отримає при друку). Ці назви підкреслюють, що інтерфейси даного типу орієнтовані на використання екрану в графічному режимі з високою роздільною здатністю.
Графічні інтерфейси підтримують концепцію інтерактивної взаємодії з програмним забезпеченням, здійснюючи візуальний зворотний зв'язок з користувачем і можливість прямого маніпулювання об'єктами і інформацією на екрані. Крім того, інтерфейси даного підтипу підтримують концепцію сумісності програм, дозволяючи переміщати між ними інформацію (технологія OLE).
На відміну від інтерфейсу-меню інтерфейс з вільною навігацією забезпечує можливість здійснення будь-яких допустимих в конкретному випадку операцій, доступ до яких можливий через різні компоненти інтерфейсу. Наприклад, вікна програм, що реалізовують інтерфейс Windows, зазвичай містять:
меню різних типів: спадаюче, кнопкове, контекстне;
різного роду компоненти введення даних.
Причому вибір наступної операції в меню здійснюється як мишею, так і за допомогою клавіатури.
Істотною особливістю інтерфейсів даного типу є здатність вдосконалюватися в процесі взаємодії з користувачем, пропонуючи вибір тільки тих операцій, які мають сенс в конкретній ситуації. Реалізують інтерфейси з вільною навігацією, використовуючи подієве програмування і об'єктно-орієнтовані бібліотеки. Це передбачає застосування візуальних середовищ розробки програмного забезпечення.
Об'єктно-орієнтовані інтерфейси поки що представлені тільки інтерфейсом прямого маніпулювання. Цей тип інтерфейсу передбачає, що взаємодія користувача з програмним забезпеченням здійснюється за допомогою вибору і переміщення піктограм, відповідних об'єктам наочної області. Для реалізації таких інтерфейсів також використовують подієве програмування і об'єктно-орієнтовані бібліотеки.
Структурна схема інтерфейсів користувача об’єднаних схожістю розробки подана на рис. 2.4.
Рис. 2.4. Типи інтерфейсів