Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
![](images/emoji__ok.png)
Предоплата всего
![](images/emoji__signature.png)
Подписываем
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Предоплата всего
Подписываем
Інтерфейс користувача (ІК) це сукупність засобів, за допомогою яких користувач спілкується з різними пристроями. Найчастіше з компютерними пристроями та іншими інтелектуальними засобами.
ІК часто розуміють тільки як завнішній вигляд КС, але через нього користувач сприймає всю систему вцілому. В дійсності ІК обєднує в собі всі елементи і компоненти системи, які можуть впливати на взаємодію користувача із системою. Це не тільки монітор, дисплей…
До цих елементів відносяться:
Можна виділити такі напрямки в проблемі створення ІК:
ІНТЕРФЕЙС КОМАНДНОГО РЯДКА
Формат виводу не регламентується. Як правило, це також простий текстовий вивід, але він може бути і графічним, і звуковим.
Зараз він використовується з таких причин:
Основні сфери застосування цього інтерфейсу:
В ОС типу Unix існує стандарт командного рядка (POSIX), який підтримується в рамках GNU.
А у Windows мова командного рядка не має стандартизації.
Переваги:
Недоліки:
ПОВНОЕКРАННИЙ (ТЕКСТОВИЙ) ІНТЕРФЕЙС
(TUI TEXT USER INTERFACE)
Це система засобів взаємодії користувача з компютером, яка грунтується на використанні текстового режиму дисплея, або аналогічних засобів. На програмному рівні для вводу/виводу інформації використовуються стандартні програми вводу/виводу.
В принципі програма, яка реалізує ввід/вивід, не зобовязана піклуватися про реалізацію самої взаємодії з користувачем, обмежуючись вводом/виводом на стандартні пристрої. А саму взаємодію з користувачем виконує ОС. Класична реалізація такого інтерфейсу це монітор із знакогенератором + клавіатура + мишка. З точки зору роботи в мережі функції текстового терміналу виконує робоча станція.
ВІКОННИЙ ІНТЕРФЕЙС
Це спосіб організації повноекранного інтерфейсу, в якому кожна інтегральна частина розташовується у вікні власному субекранному просторі, який знаходиться в довільному місті над основним екраном. Для цього інтерфейсу найбільш природнім є графічний режим, але можна працювати і в текстовому режимі. Процедури підтримки віконного інтерфейсу повинні формувати екран з розташованими поверх нього вікнами і розділяти ввід користувача між ними. При існуванні декількох рівноправних вікон ввід проводиться в те, яке в даний час є активним. В теперішній час це найбільш популярний інтерфейс. Користувачу надаються основні форми роботи з вікнами: перенос, зміна розміру вікна, фокус вікна…
ГРАФІЧНИЙ ІНТЕРФЕЙС КОРИСТУВАЧА
(GUI GRAPHICAL USER INTERFACE)
Це система засобів для взаємодії користувача з компютером, яка грунтується на представленні усіх доступних користувачу системних обєєктів і функцій у вигляді графічних компонент екрану, а саме: вікна, іконки, піктограми, меню, списки, кнопки…
Навідміну від інтерфейсу командного рядка, користувач має довільний доступ до всіх видимих екранних обєктів. Наприклад, за допомогою координатних пристроїв (миша, touchpad…). Зараз GUI це стандартна складова більшості присутніх на ринку ОС і додатків.
ЕРГОНОМІКА
В ергономіці виділяють:
При вивченні і створенні ефективних, керуючих людиною, систем ергономіка використовує системний підхід, що включає в себе психологію, нейрофізіологію, гігієну, безпеку праці, соціологію, культурологію, технічні та інженерні дисципліни.
USABILITY
ISO 9241-11 визначив Usability як степінь, в якій продукт може бути використаний певним користувачем в певному контексті використання для досягнення певної мети з необхідними:
Відноса важливість цих трьох складових визначається саме контекстом. В застосуванні до компютерної сфери Usability це концепція розробки інтерфейсів користувача, орієнтованих на максимальну психологічну та естетичну зручність для користувача.
МОВА РОЗМІТКИ ІНТЕРФЕЙСІВ КОРИСТУВАЧА (UIML USER INTERFACE MARKUP LANGUAGE)
Це мова, яка походить від XML і використвується для описуінтерфейсів користувача та різних додатків. В теперішній час створення додатків н ацій мові реалізовано у Microsoft Visual Studio у вигляді XAML. UIML розроблялася для створення кросплатформенних додатків, але на практиці - це не так просто.
МАТЕРІАЛЬНИЙ ІНТЕРФЕЙС КОРИСТУВАЧА (СЕНСОРНИЙ)
Це різновид ІК, в якому взаємодія із цифровою інформацією відбувається за допомогою матеріальних конструкцій.
Матеріальні біти це спроба надати цифровій інформації фізичне представлення, яке робить біти відчутними. Метою цих дослідів є звязати такі різні сутності, як світ бітів (логічний) і світ атомів (фізичний).
РОЗЧЕРКО-ОРІЄНТОВАНИЙ ІНТЕРФЕЙС
Ці пристро дозволяють емулювати клавіатурні команди за допомогою розчерків (gesture) на поверхні сенсорного екрану. Аналогічний підхід використовується в інтерфейсі mouse gestures (жести мишею). У них в якості пристрою координації вводу використовується миша або графічний планшет. Основною відмінністю сенсорних екранів від таких мишей є можливість зчитування координат більш ніж однієї точки. Основна мотивація розробки таких інтерфейсів це покращення Usability без використання меню в додатках. Сюди відносяться пристрої вводу рукописних текстів.
ПРОЕКТУВАНЯ
Якісно спроектований інтерфейс користувача є одним із факторів успішного використання системи. Складний у застосуванні інтерфейс, як мінімум, приводить до помилок у використанні системи. Іноді користувачі просто відмовляються працювати в системі, не дивлячись на її функціональні можливості. Якщо інформація представлена не чітко і не послідовно користувачі можуть зрозуміти її неправильно і їх наступні дії можуть призвести до пошкодження даних і навіть катастроф. Процес проектування інтерфейсу користувача можна представити як:
Найбільш ефективний підхід до проектування інтерфейсу користувача це розробка і застосування моделювання функцій користувача. Спочатку створюються паперові макети інтерфейсу, потім створюються екранні форми, які моделюють взаємодію з користувачем. Тому бажано, щоби користувачі приймали активну участь в проектуванні інтерфейсу. Важливий етап аналіз діяльності користувача. Ісля того як буде досліджено що з точки зору користувача буде робити система, можливо сформувати реалістичні підходи до проектування інтерфейсу. При аналізі треба одночасно застосувати різні методики:
Принципи проектування інтерфейсу користувача:
Розробники інтерфейсу користувача завжди повинні враховувати фізичні та інтелектуальні здібності людей, які будуть працювати з системою. Люди за короткий час можуть запамятовувати досить обмежений обсяг інформації в так званій швидкій памяті і роблять помилки, коли треба вводити великий обсяг даних або працювати в напружених умовах. Фізичні властивості людей можуть мати значні відмінності і тому це все треба враховувати при проектуванні. Тому основою при проектуванні є людські можливості. Основні принципи такі:
При реалізації узгодженості мається на увазі, що команди і меню системи повинні бути одного формату, параметри повинні передаватись в усі команди однаково, однакова пунктуація в командах, тоді знання користувача в процесі роботи накопичуються, а основна реалізація інтерфейсу в термінах структур і структур даних необхідно сховати від кінцевого користувача, це так зване, узгодження низького рівня. Але бажане узгодження і більш високого рівня. Наприклад, зручно, коли для всіх обєктів системи підтримки однакові методи маніпулювання (друк, копіювання і тп), але повна узгодженість неможлива, буває, що і недоцільна. Наприклад, вилучення обєктів з робочого столу через корзину, але таке вилучення з текстового редактора недоцільно. Кількість несподіванок повинна бути мінімальною, адже користувач губиться, коли система є непередбачуваною. При роботі з системою у користувача формується певна модель роботи системи. І якщо дія в одній ситуацію викликає певну реакцію системи, то природно очікувати, що така сама дія в іншій ситуації призведе до аналогічної реакції, а якщо відбувається щось інше , то користувач губиться і не знає що робити. Тому розробники інтерфейсів повинні гарантувати, що подібні дії дають подібний ефект. Всі користувачі роблять помилки , правильно спроектований інтерфейс може зменшити кількість помилок. Тому потрібні засоби, які дозволяють коректно відновити інформацію після помилок.
Є два види таких засобів:
Треба також мати декілька рівнів довідкової інформації. Тобто довідкова система повинна бути структурованою і не перевантажувати користувача зайвою інформацією при простих запитах до неї. Принципи визнання багатьох категорій користувачів можуть вступити в протиріччя з таким принципом проектування як узгодженість. Аналогічно рівень довідкової інформації може суттєво відрізнятись. Тому основний підхід це компромісний підхід.
Взаємодія із користувачем
Розробнику інтерфейсу користувача компютерної системи треба вирішити дві основні задачі:
Всі види взаємодії користувача з системою можна віднести до одного з пяти основних стилів взаємодії:
Стиль взаємодії |
Переваги |
Недоліки |
Приклади застосування |
Безпосереднє або пряме маніпулювання користувач взаємодіє з обєктами на екрані |
Швидка та інтуїтивно зрозуміла взаємодія, легкий у вивченні |
Складно реалізація, ефективний тільки там де є зоровий образ задач і обєктів |
Відеоігри, системи автоматизованого проектування |
Вибір із меню користувач вибирає команду із списку пунктів меню, дуже часто вибрана команда діє тільки на той обєкт, який вибраний на екрані. Користувач спочатку вибирає файл, а потім дає команду на вилучення. |
Скорочення кількості помилок користувача і мінімальна робота з клавіатурою |
Повільний для досвідчених користувачів і досить складний якщо меню складається з великої кількості пунктів |
В основному це системи загального користування |
Заповнення екранної форми користувач заповнює поля екранної форми, деякі поля можуть мати кнопки, які можна ініціювати мишею і викликати деякі дії. Для вилучення файлу за допомогою такого стилю треба ввести в поле форми імя файлу та натиснути кнопку. |
Простий і вдалий інтерфейс, легкий у вивченні |
Займає досить великий простір на екрані |
Обробка фінансової інформації, системи керування складами. |
Командна мова користувач вводить конкретну команду з параметрами і треба показати системі що вона повинна робити далі . Щоби вилучити файл користувач має ввести команду з іменем файлу в якості параметру |
Потужний і гнучкий інтерфейс |
Важкий у вивченні і складно запобігти помилкам вводу, орієнтований на професіоналів. |
ОС та професійні системи |
Природна мова користувач вводить інформацію на природній мові. Щоби вилучити файл, користувач вводить фразу: «Вилучити файл з іменем…» |
Орієнтований на недосвідчених, випадкових користувачів |
Вимагає великого ручного вводу з клавіатури, тобто потенційно багато помилок |
Розклад рухів поїздів, літаків, довідки в касах, веб. |
Інтерфейс користувача прикладних програм в веб базуються на засобах , які надаються мовою HTML разом з іншими мовами. Ці інтерфейси звязують програми з компонентами веб сторінок. В основному інтерфейси веб сторінок проектуються для випадкових користувачів і інтерфейс користувача у вигляді екранних форм. В веб поки що важко створювати інтерфейси, в яких би використовувався стиль прямого маніпулювання. Тобто необхідно застосувати різні стилі взаємодії для керування різними системними обєктами. Цей принцип і лежить в основі моделі сіхейма (see heim) інтерфейсу користувача. В цій моделі розділяються такі компоненти:
Така модель покладена в основу ОС UNIX . Розділення представлення взаємодії та обєктів, включених в інтерфейс користувача є основним принципом підходу.
Модель представлення система керування
І це є варіантом реалізації моделі Сіхейма.
Представлення інформації
В довільній ітеративній системі повинні бути засоби для представлення даних користувача. Загально прийняти підхід це відокремлення представлення даних від самих даних. В певній мірі це суперечить обєктна орієнтованому підходу при якому методи, які виконуються над даними повинні визначатись самими даними але у випадку створення інтерфейсу користувача досить важко визначити спосіб представлення даних конкретного типу і в такому випадку обєктні структури не повинні бути занадто жорсткими, як це визначається в обєктна орієнтованому підході. Після того як представлення даних в системі відокремлено від самих даних всі зміни в представленні даних на екрані користувача будуть відбуватись без зміни самої системи.
Структура такого підходу:
Користувач може взаємодіяти з кожним типом представлення. Кожне представлення має звязаний з ним обєкт системи керування, який обробляє введені користувачем дані і забезпечує взаємодію з пристроєм. Така модель може представляти числові дані, наприклад, у вигляді графіків або таблиць. Модель можна редагувати змінюючи значення в таблиці або параметри графіків. Щоби знайти найкраще представлення інформації треба знайти з якими даними працює користувач і як вони використовуються в системі. Тому приймаючи рішення з представлення даних розробник повинен враховувати такі фактори:
Будемо розглядати питання розробки ПЗ, яке надає користувачу зручні та ефективні засоби спілкування з компютером, тобто ефективний інтерфейс в системі людина-компютер . Головна ідея відразу буде полягати в тому, що ПЗ, яке підтримує інтерфейс може розглядатись окремо від процесу виконання завдань в КС. Що впливає на зручність роботи в КС? На зручність роботи в КС впливають фактори, які впливають на відчуття комфорту.
фактори |
викликаються |
Впливають |
|
Психологічним кліматом |
Соціальний комфорт |
|
Апаратним забезпеченням |
Фізичний комфорт |
|
Якістю розробки ПЗ |
Комфорт розумової діяльності |
Конструктивні особливості обладнання та їх розміщення можуть вплинути на відчуття фізичного комфорту. Чи можна легко читати з екранної форми? Екран відбиває сончні промені чи ні?
З ергономікою тісно звязані два фактора , які тісно звязані між собою - доступність і чутливість. Розробник системи повинен гарантувати, що система буде доступна саме в той час, коли це буде потрібно користувачу, і цей доступ повинен бути забезпечений в довільний зручний час. Окрім того повинен забезпечуватись прийнятний час реакції , а це дорогий аспект і важливий, розробки інтерактивних систем. Для ефективної роботи користувача треба враховувати його емоціональну,, психологічну та фізіологічну особливість. Інакше користувач просто не зможе працювати і елемент системи, який може викликати або навпаки зняти стресс це інтерфейс людина-компютер, тобто середовище через яке користувач взаємодіє із системою. Людини для очей потрібно, щоби образи мали певний розмір, рівень яскравості, контрастності, розташовувались на зручній відстані і тп. Тобто фізичні обмеження відомі, але є обмеження людського мозку. У людини дуже велика довгострокова пам'ять, але досить обмежена оперативна або короткострокова пам'ять. Тобто оперативна пам'ять має обмежений розмір і може переповнюватись. Якщо ми регулярно виконуємо деяку роботу, то вона запамятовується без перевантаження оперативної памяті і з часом виконується підсвідомо, автоматично. Але якщо якісь дії виконуються не часто то наша оперативна пам'ять буде занята на виконання цих дій. Людина вносить в кожну діяльність своє розуміння того як ця діяльність має виконуватись. Це розуміння, або модель діяльності базується на минулому досвіді людини. Тому під довготривалою памяттю часто розуміють сховище різних моделей на базі яких людина будує свою діяльність з реалізації різних розумових стимулів. Тобто замість того щоби зберігати деталі, вона відтворює їх з моделей більш високого рівня. Люди адаптуються до різних умов, навіть до несприйнятливих, ле це приводить до стресів, які можуть мати різня наслідки. Зокрема, там де можливий вибір, користувач може відмовитись від роботи із системою. Якщо такої можливості немає, то робота з системою може призвести до неприйнятного рівня помилок і ці помилки можуть виникати ненавмисне, а як результат роботи з системою.
Труднощі, які виникають при проектування інтерфейсу користувача
Практично жодна система не проектується для роботи з одним користувачем або для роботи в однозадачному режимі і виникає проблема, що всі люди різні. Терпимість до системи залежить від характеру користувача і задачі. Представлення про систему це основна проблема тому що люди як правило порівнюють можливості системи із своїми власними можливостями, а це часто приводить до завишень оцінок. Люди програють в обчислювальних здібностях, але мють неперевершені здібності при інтерпретації та аналізі фактів. Необхідно враховувати, що таку особливість психіки людини як виключну здібність до адаптації , люди навчаються досить швидко, при цьому міняються їх способи адаптації та психологічні умови.
Стратегія розробки інтерфейсу користувача:
Інтерактивний підхід, який призводить до розробки інтерфейсу . Передбачати засоби адаптації в рамках інтерфейсів, якщо навіть умови задач залишаються відносно постійними, потреби користувачів як і самі користувачі міняються. Правильно спроектований інтерфейс повинен мати можливості налаштування на потреби користувачів.
Оцінка проекту
Яким чином розробник, який притримується рекомендованої стратегії, буде впевнений, що досяг потрібного результату? Можна запропонувати декілька критеріїв, які дозволяють оцінити інтерфейс. Вони охоплюють три основні аспекти:
Критерії:
Встановити значення для кожного критерію це тільки частина труднощів . Розробник повинен вміти оцінити реальну продуктивність системи у відповідності з поставленою метою. Для проведення таких оцінок використовується декілька методик. Наприклад, за роботою користувача з системою можна спостерігати за допомогою відеокамери, можна використовувати статичні методи для трактовки роботи з системою
Складові частини інтерфейсу «Людина-компютер»
Відомо, що той самий обчислювальний процес можна викликати через різні механізми вводу-виводу і цей виклик може мати різні формати. Кожне сполучення форматів і механізмів вводу виводу дає різний інтерфейс людина компютер. Тобто різні умови для роботи людини, які можна пристосувати під певного користувача та операційне середовище Так список параметрів це інтерфейс між деякою функцією і довільною програмою яка викликає цю функцію. Використовуємо термін процес для опису послідовності операцій, яка виконується процесором і використовується термін завдання для позначення того що хоче робити користувач. Теоретично існує безмежна кількість завдань, але більшість систем має справу з обмеженою кількістю процесів.
Кожне завдання виконується одним або декількома процесами. Один процес може використовуватись для виконання декількох завдань, одне завдання може використовуваись декількома процесами. Інтерфейс людина компютер забезпечує зв'язок між користувачем і процесом, який виконує деякі завдання. З точки зору ПЗ до складу інтерфейса входять: набір процесів вводу-виводу і процес діалогу.
Процеси вводу-виводу: з клавіатури , позиціонування мишею.
Процес діалогу: мови взаємодії
Процеси з виконання завдань: копіювати файли, вилучити і т.п.
Користувач посилає через інтерфейс вхідні дані і отримує вихідні. Процеси з виконання завдань: викликаються інтерфейсом в потрібні моменти часу .
Тому з точки зору користувача, інтерфейс це основний процес, а процеси що виконують різні завдання, це не основні або фонові завдання.
Процеси вводу-виводу
Ці процеси служать для того,щоб прийняти від користувача і передати йому дані часто у форматі, незручному для роботи через різні фіз. пристрої.
Пристрої виводу: повязані з видами виводу:
1) оперативна, тестова і графічна інф., пристрої-дисплеї
2) тверді копії: принтери, граф.
3) звуковий вивід: звукогенератори і синтезатори мови.
4) фотографічний вивід. Засоби інтерактивної відеоінформації.
Пристрої вводу:
При виборі пристроїв треба враховувати такі фактори:
1) зміст і формат даних, які обробляються. Для деяких прикладних задач потрібен лише обмежений діапазон текстових символів,а для інших граф. режим з високою роздільною здатністю. Іноді користувач повинен ввод. Набір довільних величин,а іноді треба зробити тільки вибірку з невеликого набору можливих значень.
2) обсяг вводу-виводу. Збільшення обсягу всіх даних припускає наявність автоматичного збору даних.
3) Це обмеження,які накладаються користувачам та робочим середовищам. Наприклад: станд. клавіатура може не працювати в цехах, де є агресивне середовище. Важко людям з фіз. дефектами. Паралельно може виконуватись ще одна робота.
З кожним пристроєм вв/вив звязаний свій процесс вв/вив, задача якого сприймає дані від користувача і перетворює їх у внутр. представл.,з яким може працювати процес діалогу. Відокремлюючи фіз. процесс вв/вив від процессу діалогу, прагнемо досягнути того, що зміна пристроїв вв/вив не приведе до зміни процесу діалогу, а викличе тільки зміну процесів вв/вив.
Процес Діалогу
Що таке розмова?
Діалог між людиною і комп. Може визначатись,як обмін інф між КС і користувачами,які виконуються за допомогою інтерактивного терміналу і за певними правилами.
Таким чином, процес діалогу це механізм обміну інф який можна розглядати, як оболонку, яка включає всі процеси що виконують певні завдання та входять до складу системи.
Процеси вв/вив забезпечують обмін на самому верхньому рівні; на цьому рівні діалоговий процес повинен правильно інтерпретувати кожне слово, навіть кожний звук.
Задачі процесу діалогу:
Правила діалогу повинні бути такими,щоб полегшити роботу користувача,а не спрощувати процес обрахунків.
І розробка ІК(інтерфейсу користувача) направлена на підвищення фізичного комфорту користувача шляхом узгодження фіз. можливостей людини та системи.
Розрізняють такі типи діалогу:
Діалог першого типу більш зручний,тому що він краще підлаштовується під користувача,але має при цьому більше обмеження ніж діалог другого типу. Також розуміється,що звичайно ієрархічно, і діалог ведеться у відповідності з цією структурою. Формат у відповідності з яких користувач вводить свої повідомлення,називається граматикою діалогу. Існує декілька варіантів:
В цьому випадку повідомлення,які вводяться користувачем мають форму мов програмування високого рівня. Ці оператори забезпечують генерацію складних вхідних повідомлень,які одочасно вибирають процеси та вводять необхідні дані. Як правило, такий підхід використовується в діалогах другого типу при роботі з СУБД.
Синтаксис та семантика такого формату строго обмежені,не дозволяють ніяких відхилень в написанні команд,граматичні правила такого формату допускають наявність великої кількості функцій і можуть забезпечити зручну взаємодію користувача професіонала з системою. Дуже не природні на вид такі формати.
Найбільш використ. при побудові діалогів першого типу. Цей формат обмежений в тому розумінні, що знімається лише невелика кількість млів, і в кожний необхідний момент вх. повідомлення складається з дуже невеликої кількості слів (в більшості випадків з одного). Оскільки ці слова можуть позначати конкретні завдання, або бути даними, які можуть мати чисельне значення. Їх можна використовувати,як для контролю,так і для вводу даних.
Дає можливість користувачу вести діалог з системою, як з людиною. Тобто, система повинна реагувати на довільну фразу,або синтаксичну конструкцію зрозуміло людині. Цей формат відрізняється від попередніх форматів не тільки кількістю дозволених слів, а й способом розташування цих слів у вхідному повідомленні. Розробники такого підходу стверджують, що це єдиний спосіб створити природній та гнучкий діалог. Хоча, поки що не відомі системи, де такий підхід був би реалізований.
Тут представлено повідомлення у відповідності з функціями які вони виконують. Під час діалогу відбувається обмін інф. між його учасниками. Інф. передається у вигляді повідомлення. В довільному діалозі існує декілька типів таких повідомлень. Повідомлення першого роду це керуючі повідомлення, або команди 2-ого це дані. Можуть бути і складні комбіновані повідомлення.
Підказка це вихідне повідомлення з системи,яке примушує користувача використовувати дані. Реакція користувача на підказку може бути:
Помилка - це сигнал процесу діалогу, про те,що подальше виконання роботи неможливе,оскільки діалоговий процес, або викликаний процес виконаного завдання не може обробити повідомлення введене користувачем.
Повідомлення про стан це інф для користувача про те,що відбулося,або відбувається у системі. Система може повідомити що виконання конкретного завдання завершилось, або ,якщо є велика затримка в реакції системи, вона може видати повідомлення про те,що вона працює.
Довідка. При виникненні діалогового вікна, система каже що робити далі і чому. Довідка має мати конкретний характер.
Як правило в процесі діалогу треба перевіряти введені користувачем дані на наявність помилок. Характер перевірки залежить від формату вхідних повідомлень, але в довільному випадку перевіряється спів падіння вхідних повідомлень з одним елементом, із списку можливих значень,або перевірити факт знаходження даних в межах можливого діапазону. Як правило,обсяг перевірок,які виконуються процесом діалогу обмежений,оскільки це впливає на швидкодію процесу діалогу.
До цього всього зробимо такий висновок:
Інтерфейс людина-компютер включає дві основні компоненти:
Діалог повинен відповідати певним правилам:
Цей цикл повторюється, доки не будуть прийняті вхідні дані,якщо виводиться запит на ввід команди,наступний крок обробки буде залежати від введеної команди.
Розглянемо,як впливає на розробку І.К. характер інформації,яка приймає участь в діалозі,а не ф-ції повідомлень.
Процеси вводу-виводу
Вони є основними будівничими блоками з яких будується діалоги різних видів. Перед тим ми розглянемо повідомлення які були класифіковані за ознаками їх функцій. Тепер розглянем, як впливає на розробку їх характер інформації, а не функції процесів вводу виводу.
Для цього класифікуємо так основні процеси вводу виводу, які підтримують функції, які види повідомлень.
Вивід текстового
Ввід текстового
Ввід повідомлення типу
-«вказати та вибирати» - перегляд стану операцій та вибір потрібної
-«вказати та вибирати» -вибір дани з довільного місця екрану
Вивід графічного повідомлення
Ввід графічного повідомлення
Текстове повідомлення це рядок символів які можуть бути літрами верхнього та нижнього регістрів, цифр, або символів псевдографіки.
Повідомлення типу «вказати та вибирати» - це особливий тип вхідних даних для забезпечення вибору здеякої множини можливих альтернатив.
Графічне повідомлення це аовідомлення яке неможливо передати у вигляді простих символів(вони описані на бітовому рівні)
Діалогові процеси повязані з логічними поняттями. Їх слід розглядати незалежно від конкретних фізичних пристроїв, тому будемо старатись розробити деякі узагальнення представлення для діалогових класів:
Вивід текстового повідомлення вивід в біжучу позицію на пристрої
Параметри:
-що має бути виведено?(рядок символів що складає зміст повідомлення)
-де текст повинен бути розміщений?
- як текст повинен бути виведений? (список атрибутів, список атрибутів які визначають формат даних, що виводять(олір))
Вважаємо, що атрибути є постійними для даного текстового повідомлення. Маємо на увазі, що виводима інформація на екран дисплея, який працює в режимі виводу, інформація за сторінками коли поле для виводу легше розглядати як екран, а не як рядок. В такому випадку повідомлення легше відобразити в будь якій позиції на екрані.
Вивід тексту в задану позицію на екрані
Текстове повідомлення відображається в прямокутні області пристрою відображення інформації шириною w і висотою h,
Маємо 3 таких випадки:
Вивід тексту у відповідності із заданим форматом
Текст на терміналі лише виділяється різними способами: колір переднього фону, інверсне зображення, миготіння, підвищена якість.
Якщо відеопамять досить велика, система може обробити одночасно копії декількох фізичних екранів або підтримати віртуальний екран. Це особливо використовується при побудові інтерфейсів з використанням вікон.
Ввід текстового повідомлення
Клавіатура є основним пристроєм при інтерактивній роботі при виводі малих і середніх обсягів даних для великої кількості даних використовують класичні пристрої. Більшість мов високого рівня мають працювати з читанням вхідних даних при цьому при вводі виконуєтьс я такий цикл:
1 очікування готовності пристрою вводу
2 інтерпретація керуючих послідовностей, або позіціонування курсора на екрані
3 луна-друк на екрані, введеної та відредагованої інформації, доки не буде введена ознака кінця вводу
4 перехід з 3 на 1.
Але в такому циклі процесу є обмеження:
Ввід за символами
Переферійний пристрій може опитати клавіатуру для того чи вона натиснута потрібна клавіша. Якщо так то прозі повертається код символа який натиснуто, якщо ні повертається код null в коді ASCII. Оскільки керуючі послідовності ОС не інтерпритуються інтерпретовані довільні символи або їх діалоговий процес. Але тоі діалог процес сам повинен виконати функції редагування.
Ввід за допомогою спец символів
Спец клавіші:
-редагування
- керування курсором
- функціональні клавіші
При натисканні однії функціональної клавіші повертається послідовність символів, яка починається з коду NULL ASCII
Кожній клавіші на клавіатурі привязаний спец код, який називається, код сканування. Коли клавіша натиснута, інформаційний код ASCII код в залежності від стану прапорця.
Звязуючий з натисканням однієї клавіші він, які в іншому випадкуможуть вимагати декілька клавіш, можна мінімальна кількість натискань можна створити фільтр який для даної прикладної програми буде визначати нажату клавішу, який сирійний має вхідний процес.
Ввід повідомлення типу «Вказати та вибрати»
Має місце вказівка позіціонування та вибірка керуючі повідомлення звичацно вкл. Вибір з деякої області множини варіантів. Вхідні дані також можуть вміщувати інформацію про такий вибір. Якщо список можливих функцій невеликий, то вибір можн виконувати так:
Кожен обєкт буде визначений такими характеристиками:
Далі треба визначити спосіб вказівки користувачу певної області:
Вимагається визначити спосіб завершення процесу вводу, тобто як користувач фіксує вибраний обєкт. Це може бути виконано шляхом призначення довільної кнопки або клавішімиші. Функції вибору обекту і процес вводу завершено.
При організації діалогу використовується можливість емуляції клавіатури. Переміщення миші, натиск і відпускання кнопок на них перетворено на відпускання послання символів.
Ввід та вивід графічних повідомлень
Інформація яка приймає участь при вводі і виводі описується на бітовому рівні. В екранній памяті треба зберегти інформацію на рівні пікселів(найменший елемент на екрані який адресується).
ОС мають процедури для запису та читання значення пікселів у біжучій позиції. Ці базові можливості включають в процедури, які підтримують побудову основних графічних елементів(П: пряма лінія між 2-ма точками, коло...).
Використовують графічні планшети і миші
Висновки
Процес діалогу інтерпретує вхідні і вихідні повідомлення на логічних рівнях (в термінах виконуваних ними функцій) процеси вводу виводу мають справу із вмістом повідомлень. Ці процеси цікавлять тільки норми, які для діалогу орієнтовані на текст, можна класифікувати так:
Процеси вводу виводу розподіляються на 4 рівні.
Процеси діалогу взаємодіють з майбутнім верхнім рівнем, які предст. абстрактно повязані з тим. Що треба зробити, а не як це реалізувати.
Такі модулі верхнього рівня викликають фізичні пристрої нижнього рівня (драйвери).
Реалізація для різноманітних пристроїв полягає в компоновці модулів, драйверів із різних бібліотек.
Діалоги в інтерфейсі “Людина-компютер”
Основою для класифікації інтерфейсу Л-К є структура діалогу. Вона визначає ступінь взаємодії між системою і користувачем. Вона також задає основні форми керування цією взаємодією.
Виділяють 4 основні структури типів взаємодії:
1.Питання та відповідь.
2.Меню.
3.Екранні форми.
4.Діалог на базі команд.
Кожна з цих структур ґрунтуються на аналогії з певним типом взаємодії між людьми. Прийнятність тієї чи іншої структури діалогу можна оцінити шляхом аналізу того, яка структура діалогу Л-К виконується в аналогічній людській ситуації.
Для оцінки прийнятності тієї чи іншої структури діалогу використовуються такі 5 критеріїв:
1.Природність.
2.Послідовність
3.Стислість.
4.Ступінь підтримки користувача
5.Гнучкість.
1.Природність.
Природний діалог це такий, який не примушує користувача, який взаємодіє з системою, змінювати свої традиційні способи розвязку задач, як мінімум це діалог на рівні мови користувача.
Стиль ведення діалогу повинен бути розмовним. Коротка підказка більш інформативна і гнучка, ніж довга і ввічлива фраза. Фраза в діалозі не повинна вимагати додаткових пояснень. Професійний жаргон можна використовувати, якщо він зрозумілий звичайному користувачу.
Не треба примушувати користувача вручну обробляти дані перед вводом в систему, або після виводу із системи. Треба уникати немаючого людського сенсу порядку постановки запитання. Неприродність діалогу часто є наслідком того, що розробник не знайомий з тими способами, якими користувач розвязує задачу без підтримки системи.
2.Послідовність
Діалог, якому притаманна логічна послідовність гарантує, що користувач, який навчився працювати з одною частиною системи, розбереться з особливостями роботи з іншою частиною системи.
Послідовність має декілька аспектів:
1.Послідовність у побудові фраз означає, що коди, які вводяться в систему, наприклад ключові слова, завжди трактуються однаково.
2. Послідовність у використанні форматів даних означає, що аналогічні поля завжди будуть представлені системою в одному форматі даних. Якщо користувачі можуть скорочувати вхідні дані в одному випадку, вони повинні мати можливість використовувати такі скорочення і в інших аналогічних випадках.
3. Послідовність в розміщенні даних на екрані в різних системах, подібним за своїми функціям, є гарантією того, що користувачу буду відомо, де шукати на екрані інструкції , команди повідомлення про помилки. Для забезпечення принципу послідовності вцілому рекомендується використовувати стандарти, рекомендації, які забезпечать принцип послідовності.
3.Стислість
Короткий діалог вимагає від користувача вводу лише мінімальної інформації, необхідної для роботи з системою. Взаємодія стає більш швидшою і виконується з меншою кількістю помилок, бо прямо залежить від кількості натискувань на клавішу. В діалозі не треба запитувати інформацію, яку можна сформувати автоматично, або яка була введена раніше. Не треба вимагати інформації, яка не використовувалась системою. Корисним способом користування даних є ввід значень по замовчувані. З тією ж метою використовується скорочення, але слід уникати двозначності скорочених ключових слів, а також вводити ідентифікатор, який складається з одного символа.
Вихідні повідомлення (результуючі) мають вміщувати саме ту інформацію, яка вимагається користувачем, а не вся доступна системі інформація. Вона має бути у формі прийнятній для сприйняття, з використанням мінімальних засобів для виділення частини інформації. Якщо діалог не задовільняє критерію коректності, то це тому, що розробник підлаштовує під себе.
Це міра допомоги, яку діалог надає користувачу при його роботі із системою. Трьома основними аспектами цієї підтримки є такі:
- кількість і якість інструкцій
- характер повідомлень про помилку
- підтвердження довільних дій системою
Інструкції для користувача виводяться у вигляді підказок або у вигляді довідкової інформації. Характер і кількість інструкцій мають відповідати досвіду роботи користувача з системою і його намірам. Нема сенсу видавати інструкції користувачу, які не мають відношення до його проблеми. Довідкове інформаційне повідомлення надається тоді, коли воно вимагається і в потрібній формі. Повідомлення про помилку має точне пояснення в чому полягає помилка і як її усунути. Повідомлення, які підтверджують довідкові дії системи, потрібні для того, щоб користувач міг ще раз переконатися, система виконала або виконуватиме потрібні дії.
В системах із складною ієрархічною структурою користувач може забути на якому рівні він є. Може бути корисним вивід повідомлень про стан системи. Сутність діалогу,який підтримує користувач, в тому, що користувачу треба надати адекватну підтримку. Діалог може не задовольняти цьому критерію через те, що розробник не зміг правильно оцінити потреби користувача у підтримці чи тому, що засоби підтримки не можуть відобразити всіх вимог користувача.
5.Гнучкість діалогу
Це міра того, наскільки добре він відповідає різним рівням підготовки та продуктивності праці користувача. Така гнучкість припускає, що діалог може адаптувати свою структуру.
Основна проблема не в тому, як організувати зміни в діалозі, а в тому, які ознаки треба використати для визначення необхідності внесення змін та суть цих змін.
4 традиційні структури діалогу в різній степені відповідають цим основним критеріям.
Структура цього діалогу ґрунтується на аналогії із звичайним інтервю. Система бере на себе роль інтервювера і отримує інформацію від користувача у вигляді відповіді на питання. Це найвідоміша структура діалогу.
В кожній точці діалогу система виводить як підказку одне питання, на яке користувач дає одну відповідь. Взалежності від отриманої відповіді система може вирішити, яке наступне питання задавати. Якщо задавач дає неправильну відповідь, компютер повторює повідомлення, повідомляючи, що відправлено неправильне.
Відповідь, яку вводить користувач, може бути текстовим рядком , якщо вводиться з клавіатури. Він може бути або обєктом у списку можливих обєктів, або довільними даними.
Структура “питання -відповідь” надає природній механізм вводу як керуючих повідомлень (команд), так і даних.
Критерії:
Структура “питання-відповідь” не гарантує мінімального обсягу вводу, але при відповідному підборі скорочень можна зменшити довідкову надлишковість. Якщо ввід відбувається досить швидко, для користувача, який вже знає, які питання задає в певній ситуації, які відповіді треба на них давати , відповідати на всю серію питань недоцільно.
У ній виділяють 3 основних кроки:
1. вивід питання.
2. ввід віповіді.
3. Контроль правильності відповідей.
Питання це елемент даних із своїм змістом, областю виводу на екран і множиною атрибутів, які визначають форму відображень.
Відповідь - тектовий рядок. Ми можемо вимагати чи не вимагати, щоб інформація, яка вводиться, відображалася на екран в режимі “ехо-друк”, що дає можливість користувачу відредаговувати рядок перед вставкою , або можемо вимагати, щоб ввід був обмеженим певними символами.
Перевірка - якщо відповідь представляє собою довідкове значення деякої величини, треба виконати деяку процедуру перевірки, яка порівнює дані, що вводяться із рядком, що задає формат вводу. Якщо ввід неприйнятний, треба вивести повідомлення про помилку, тип помилки та передбачити механізм для вилучення цього повідомлення після того, як користувач на нього відреагує.
У відповідь на виділені питання користувач може запитати довідку, тому з кожним питанням має бути пов'язаний відповідний help.
У випадку вводу довільних даних системі необхідно знати, що користувач ввів насправді. Про це можна довідатися за вмістом поля відповіді, але але контроль правильності довільного елемента даних , це обчислювальна, а не діалогова задача.
Тобто може виникнути необхідність наявності певного типу даних, а не тільки формат і тоді вхідні дані будуть запитуватися поки не буде прийнята відповідь.
Висновки до структури “питання -відповідь” (Q&A).
Ця структура може задовольняти вимоги різних користувачів при використанні різних типів даних. Створюється досить гнучка і в достатній степені забезпечена підтримка користувача. Підходить для реального діалогу з багатьма відгалуженнями, коли на кожне питання передається велика кількість відповідей, кожне з яких впливає на те яке беде наступним питанням, тому діалог типу “питання -відповідь” часто використовується в експертних системах.
СТРУКТУРА ДІАЛОГУ ТИПУ “МЕНЮ”
Сутність структури “Меню” в тому, що у користувача є список можливих варіантів даних для вводу, з якого можна вибрати те, що необхідно.
Є різні формати представлення меню на екрані.
а) б) в) г) д)
… |
1.М … Мтр(Мотор)
2. А… Мбл(Меблі)
3.В… Прс(Персонаж)
..
7.Кінець Кін (Кінець)
Ваш вибір? Ваш вибір?
А)це список обєктів, які вибираються вказівкою цифрового коду;
Б)список обєктів, які вибираються вказівкою мнемонічного коду;
В)меню у вигляді блоку даних;
Д)меню у вигляді піктограм (ікон);
Е)меню у вигляді рядка даних ;
Найбільш традиційним є варіант в)
За допомогою меню зручно відображати можливі варіанти даних для вводу, які доступні в довільний час роботи в діалозі.
В такому діалозі не потрібно виводити на екран уточнюючі питання.
Контроль правильності даних в такому діалозі полягає в перевірці відповідності введеної інформації списку обєктів вибору в меню.
Якщо дані введені неправильно, сформувати повідомлення про помилку досить просто. Оскільки можливі варіанти відповіді відображаються на екрані, помилка може виникати лише при наборі інформації. Процесс відповіді повтор доки не буде отриманий потрібний результат.
Критерії розробки діалогу в меню
Меню можна з одним успіхом застосовувати для вводу як керуючих повідомлень так і даних.
Ідеальне екранне меню містить 5-6 пунктів. Меню можна реалізувати у вигляді блоку даних для вводу яких треба набирати слова так або ні. При великій кількості можливих варіантів вибору їх треба групувати в ієрархію невеликих меню. Якщо не можемо побудувати таку ієрархію, то можна сказати, що структура діалогу не підходить, є виключення.
При роботі на низькошвидких терміналах у складних мережах краще використовувати лінійну структуру з великих ліній ніж ієрархічну з малих ліній. Можна подолати складнощі, які виникають при нестабільній роботі мережі, що не дає можливості виводу меню, які йдуть за одним. В кожному меню з ієрархією велике значення має порядок слідування пунктів. Бажано розташувати пункти в природньому або алфавітному порядку, так як правильним вважається, що виконання пункту 1 у списку відбувається раніше ніж виконання пункту 2.
Числові коди це популярний спосіб кодування можливих варіантів меню. Їх рекомендують застосовувати в тих випадках коли нема інших більш достатніх позначень. Числові коди починають запам'ятовувати оскільки немає прямого зв'язку між призначенням і пунктом меню. Виправдання числових кодів це зменшення кількості натискань на клавіші.
Реалізація: 2 етапи
Заголовок меню (may be empty)
Об'єкт (1) додатковий текст 1
... ...
Об'єкт (к) додатковий текст к
можуть бути пустими
Завершення меню
а)
Об'єкт (1) ... Об'єкт (к)
б)
Обєкт(1) Об'єкт(к)
в)
а) меню у вигляді блоку даних
б) меню у вигляді рядка
в) меню у вигляді піктограм
Відображення меню це вивід на екран текстових повідомлень. Складається з множини полів, в цій множині полів розташовані об'єкти право вводу яких потрібно контролювати. Різні формати відображення виглядають по різному, хоча насправді вони відрізняються просто різними значеннями полів і загальній структурі даних.
Меню вкладене
б) Має пусті поля для збереження заголовку завершень та додаткових текстів.
в) Меню у вигляді піктограм. Поле заголовку завжди пусте так само як закл. і додаткових текстів. Оскільки це може призвести до випадкового розташування об'єктів на екрані, поле піктограм між собою не зв'язані. Вибір із меню у вигляді блоку даних виконується набором ідентиф. на клавіатурі або шляхом перегляду списку.
Приховане меню
Як структура Q&A так і структура типу меню вимагає єдиної відповіді на кожне питання. В меню такою відповіддю є вибір із списку об'єктів. Меню забезпечує додатковою підтримкою для непідгот кор відображ список мож відпов.
Основна схожість між цими структурами діалогу в тому, що процес вводу можна описати за допомогою однієї структури даних. У випадку використання Q&A вибір звичайно виконується шляхом вводу текстового рядка, але можливий не тільки цей спосіб. Ми можемо викласти певні пункти вибору по черзі і це буде подібне перегляду меню.
Варіант
Такий спосіб подання перегляду меню, але меню приховане, яку представляється у вигляді питань.
Поле відповіді і кожний об'єкт вибору розташовані на 1 полі виводу будуть розташовані на 1 і тій же ділянці екрану.
Спосіб прихованого меню є корисною альтернативою лінійному традиційному меню у вигляді блоку даних. У випадку коли можливо фіксувати кількість відповідей для області множини варіантів. Але на екрані немає місця для всіх меню і важко створити можливі ключові ідентифікатори. Інформацію можна ввести за допомогою серій питань, які відображаються на одному і тому ж місці екрану без набору послідовних символів на клавіатурі.
Висновки:
Між структурою Q&A та меню є багато спільного. Меню більш ефективне при виводі підказок в автоматичному режимі, а структура Q&A більш ефективна при випереджуючому вводі.
Меню це певна серія вибору об'єктів. Які виконують вказівки за допомогою пристроїв позиціонування. Меню зручне для непідготовлених користувачів. Традиційна структура меню не досить гнучка і не узгоджується з такими методами як випередження вводу.
СТРУКТУРА ДІАЛОГУ НА ОСНОВІ ЕКРАННОЇ ФОРМИ
Визначене поле
вміст [тут виводяться повідомлення]
Область виводу
Рядок[] Стовпчик[] ширина []
Атрибути:
Передній план[] Фон[]
Контрастність[] Блимання[]
F1= вв. Форму F2=довідка ESC=Вихід
Існує структура діалогу, в якій обробляється ціла серія відповідей. В основі лежить отримана інформація шляхом заповнення формул. На практиці екрані формули використовують в основному там де облік дов. де то вимаг. вводу достатньо стандартного набору даних. У множині питань досить постійна в тому розумінні, що відповідь на попереднє питання не впливає на те, яке питання буде за наступним.
Можливості цієї форми діалогу такі:
Критерії розробки
Цю сторінку зручно використовувати там де джерело даних є іншої концептуальної форми.
На екорані заздалегідь відомо, які одиниці даних вимагаються, бо кожне поле задається вмістом
Важливо що б форма екрані була подібна на форму на папері, яка є джерелом інформації. Повне співпадіння не обов'язкове, але всі елементи даних, які вводяться повинні розташовуватися в тому відносному порядку і мати такий же формат як у вихідній формі, якщо форма розбита на частини, то важливо що б вони зберігали логічні зв'язки і щоб це не приводило до рознесення зв'язаних частин на різні екранні форми. В цій формі забезпечується високий рівень підтримки коректності і сек користувача, Треба просто ввести у форму інформацію, весь екран практично можна заповнити питаннями у вигляді коректних заголовків. Проблема виникає тоді форма на папері вміщує поля, які не потрібно вводити, тоді такі області повинні бути чітко виділені на екрані і відокремлені від інших полів вміст яких потрібно вводити. Можуть бути необов'язкові поля або такі, які заповнюються якщо деяке значення вводиться в попереднє поле. Такі поля краще розташовувати в кінці форми.
Реалізація:
Створення діалогу типу екранної форми будують в 3 етапи
Форму можна визначити як набір додаткових полів. На відмінну від меню цей набір не може розділятися однозначно на деякі структури. Це можуть бути поля, які в деяких формах виконують роль заголовків. Можливі і інші поля підзаголовки. Всі такі поля вважають фоновими полями.
Які параметри потрібні для визначення переднього плану форми?
Це поле для відповіді на питання, які поставлені у формі. Саме представлення питань на екрані попередньо створюють структуру заднього плану. Користувач переходить до відповіді на наступне питання, коли він відповідає на попереднє. Ввід відповіді можна завершити 2 способами.
Не можна виконувати 2 етапи завершення одночасно. Користувач повинен мати можливість міняти довільну із відповідей, а не тільки ту яка помічена помилкою.
Висновки:
Ця сторінка діалогу працює скоріше ніж Q&A. Вона може маніпулювати більшою шириною діапазону вхідних даних ніж меню і ця сторінка діалогу підходить користувачам довільної кваліфікації. Оскільки ця сторінка має послідовну а не деревоподібну організацію, вона в меншій мірі підходить для вибору варіанту.
Багатоваріантні меню це 1 із варіантів заповнення форм. Користувачу надається список варіантів і його не обмежує можливість єдиного вибору. Питання мають встановлюватися по заповненню відповіді, тому нема необхідності давати відповідь на кожне питання.
СТРУКТУРА ДІАЛОГУ НА ОСНОВІ КОМАНДНОЇ МОВИ
Ця структура діалогу поширена завдяки використанню в професійних системах, окрім постійної підказки, яка означає готовність системи до роботи.
Відповідальність за правильність команд лягає на користувача. Коли подальша обробка введення рядка неможлива структура на базі мови команд відмовляється від її виконання і ввесь ввід треба повторити.
Критерії розробки:
Ця структура діалогу зручна для вводу керуючих повідомлень, але вона забезпечує більш широкі можливості вибору в довільній точці діалогу і не вимагає ієрархічної організації фонових завдань. Ця структура не забезпечує хорошої підтримки користувача. Основна така структура вимагає від користувача запамятовування великої кількості інформації. Імена команд треба вибирати таким чином, щоб вони несли якесь семантичне навантаження. Треба уникати надмірної функціональності, тобто не створювати великої кількості різноманітних команд часто з функціями, які перекриваються. Це приводить до появи великої кількості ключових слів і синтаксичних правил більшість з яких використовуються не часто, але ускладнюють виведення правил користувача системою. Діалог повинен керувати даними. В цій структурі діалогу це досягається за допомогою складних командних рядків. Ключове слово для позначення команди визначає що робити і воно іде перед списком параметрів, тобто перед вхідними даними.
Позиційні параметри зменшують обсяг інформації, який вводиться, але їх недолік в тому, що значення які вводяться повинні розташовуватись в певному порядку. Ключові параметри не вимагають певного порядку і тому можна виключати необовязкові параметри, але системі потрібно досить багато часу для розпізнавання ключових слів.
Реалізація:
Існує подібність між вводом команди і вводом даних у готову формулу. Ввід команд можна розглядати, як ввід ряду відповідей на ряд поставлених питань.
Наприклад: copy From <FileName> To < FileName >
Команда: copy
Звідки: < FileName >
Куди: < FileName >
Хоча основний синтаксис командного рядка визначений досить однозначно допускаються різні варіанти задання команди. Тому створення ПЗ для такої структури значно складніше ніж для інших структур. Тому замість простого порівняння відповідності з даними діалог процес повинен:
Висновки:
Ця структура діалогу за своїми можливостями більш швидка і гнучка, але ця структура не забезпечує короткою підтримкою, тому важко в повній мірі використати її переваги.
Відносно всіх структур діалогу:
Меню випереджуюча довідка, найкраще підходить там де діапазон можливих відповідей порівняно невеликий і всі вони можуть бути явно відображені. Користувачу необхідно бачити можливі варіанти відповідей.
Екранна форма випереджуюче питання, найкраще підходить там де можна завчасно визначити стандартну послідовність даних, яка вводиться.
Командна мова випереджуюча відповідь, найкраще підходить там, де кількість значень для введення досить мала і їх можна запамятати. Обмеження кількості відповідей досить для того, щоб ідентифікувати як потрібну задачу так і необхідні дані.
Основна структура Q&A найкраще підходить там, де діапазон вхідних величин занадто великий для структури типу меню, або занадто складний для структури на основі мови команд. Наступне питання залежить від відповіді на біжуче питання. Вимоги до даних в різних частинах системи можуть бути різними і тому побудувати діалог для всієї системи, використовуючи тільки 1 структуру не вдається. Для різних частин діалогу потрібні різні структури в залежності від їх конкретних характеристик.
ОПИС ДІАЛОГІВ
Традиційний метод представлення діалогу полягає у створенні окремих макетів, тобто форм, які ілюструють можливі позиції та формати полів екрану. Таке представлення є статичним і не дає уявлення, як діалог переходить з 1 стану в інший. Необхідна система позначень, яка може виробляти динаміку точну і стислу.
Сітка переходів (діаграма станів)
Розвиток діалогу можна розглядати, як послідовність переходів від 1 стану до іншого. Діалог може знаходитись в особливому стані очікування вводу від користувача і буде переходити в 1 із декількох можливих станів в залежності від характеру прийнятої інформації.
Якщо діалог в стані N1 і виконується умова а, то діалог переходить в стан N2.
N вершина деяка точка в якій діалог виводить повідомлення користувачу, або вимагає вхідного повідомлення від користувача.
Мітка на дузі - це умова при виконанні якої можливий перехід, якщо більше 1 може викликати перехід, який має місце в графі.
Сітка переходів для діалогу структур типу Q&A
В стані 1 висвітлює можливі типи потрібної дії. Користувач може відповісти кінець в довільному стані для того, щоб повернутись в попередній стан, або вимагати допомогу, щоб отримати додаткові повідомлення. Неправильна відповідь в довільному стані викликає повідомлення про помилку, яке висвічується і викликається автоматично поверх в той самий стан. Оскільки такі сітки переходів досить швидко робляться великими існують певні умови по згортці.
Умови по згортці:
Вершини які представляють додаткові повідомлення та повідомлення про помилки не показуються як окремі вершини в згорнутій сітці. Мається на увазі, що вони автоматично доступні в довільній вершині згорнутої сітки.
В структурі Q&A діалог розвивається шляхом висвячування підказки у вигляді питання і далі шляхом вибору дуги переходу на основі отриманої відповіді. Питання та правильні відповіді визначаються так званими інформаційними блоками діалогу.
Сітка переходів для діалогу типу «menu»
При меню в структурі діалогу нема вхідного повідомлення на підставі якого можна було би зробити вибір доріг. В цьому випадку маємо більш загальний випадок вершини де результат повідомлення зявляється без відповідного початкового повідомлення. Вивід без відповідного входу можна представити у вигляді автоматичного звязку від 1 вершини до іншої через непомічену дугу.
1m меню дій
1p підказка варіанту
2m меню транзакцій
2p підказка транзакцій
b підказка типу звіту
Q&A і меню звязані з вибором шляху по ієрархії і всі ввідні повідомлення представляли собою вибір із явно заданого списку цілей.
Розглянемо як сітка переходів представляє вершини, які запитують ввід довільних даних, як це робиться в діалозі екранних форм.
Після того як в діалозі користувач вибрав наприклад екранну форму на екрані висвічується форма накладної.
3 представлення форми
3.1 ввести № накладної
3.2 дата оформлення накладної
3.3 код покупця
…
3.8 підтвердження заповнення форми
Поля при вводі не перевіряються. Кожна вершина звязана з наступною вершиною єдиною дугою. Сама введена інформація до уваги не приймається. Інтерфейс навіть із простою системою має багато вершин. Проблема розвязується введенням поняття підсітки, субсітки.
Субсітка це сукупність вершин, які можуть самі розширюватись.
Поняття субсітки зручне коли в діалозі зустрічаються однакова послідовність вершин.
Наприклад в ОС на базі мови команд
Таким чином маємо сітку переходів з багаторазовим викликом однакової субсітки. Фактично субсітка може бути викликана сама собою і тоді ми маємо рекурсивну сітку переходів. Як діалогової процес в декількох режимах ввідне повідомлення можна інтерпретувати в різний спосіб в залежності від контексту біжучого повідомлення і таким чином однакове повідомлення може викликати різні переходив залежності від біжучого контексту, така сітка називається розширеною сіткою переходів.
Обробка діалогу у вершинах сітки
Можна виділити такі типи вершин:
Тип 1:
Це вершина в якій виводиться повідомлення користувача із запитом на ввід. Передача на сусідні вершини залежить від контексту ввідного повідомлення. «Це вершина 1р» яка записує вхідне керуюче повідомлення таке як вибір варіанту.
Тип 2:
Це вершина в якій виводиться повідомлення користувача без запиту на вхідне повідомлення. Виконана авто передача на сусідню вершину, це вершина 1m. У вершині 1m на екрані висвічується форма або меню.
Тип 3:
Це вершина в якій виводиться повідомлення користувача із запитом на ввід після якого виконується безумовний перехід на сусідню вершину, це вершина «3.3» яка запитує вхідні дані на які не накладено обмежень в процесі діалогу або для яких в цій вершині виконані всі обмеження.
Чим відрізняються вершини другого і третього типу:
В 2-ому типі перехід виконується автоматично, тобто не вимагається ніякого вхідного повідомлення.
В 3-ому типі переходу не буде до того моменту , доки не буде зроблений ввід але буде однаковий перехід незалежно від ввідних даних. Кожна вершина в сітці переходів представляє собою окремий стан діалогу і створює точку переключення в різних частинах діалогу. Переключенням можна керувати встановлюючи відповідність між призначенням наступної вершини і кожним елементом з набору умов.
Таким чином різні типи вершин характеризуються різними структурами керування.
ПРИНЦИПИ РОЗРОБКИ ДІАЛОГУ
У всьому попередньому весь час звертали увагу на важливість розділення інтерфейсу користувача і програми користувача. Це дає можливість розробнику інтерфейсу виділяти два найбільш важливих аспекти:
а) Представлення інформації обміну між користувачами і фоновими робочими процесами.
б) керування динамікою взаємодії.
Компонента представлення процесу діалогу стосується формату в якому виконується обмін інформації. Для користувача вона охоплює зовнішні аспекти інтерфейсу. Вона включає зображення які зявляються і читання даних з пристрою вводу.
Розроблені бібліотеки програм на різних рівнях абстракції які відображають результат діалогу. Дані які прийняті з пристрою вводу можна перетворити в стандартний формат до того як вони будуть представлені в програмі користувача. Компонент представлення може включати в себе розпізнавання знаків, знаки які отримані в програмі користувача можна трансформувати у форматі для висічування на екран.
Компонента керування
Визначає структуру діалогу між користувачем та програмою користувача. Її можна розглядати як посередник який направляє послідовність знаків які прийняті як від компоненти представлення так і від програми користувача до їх відповідних місць призначення.
В сітках переходів аспекти представлення діалогу визначені діями в середині вершини, аспекти керування діалогу визначені маршрутом між вершинами сітки.
Як практично можна розробити таку сітку?
Один з розвязків полягає у визначенні обробки в вершині через дані, а не через підпрограми, маючи інваріантний процес діалогу який налаштований за таблицею, тобто інтерпретуючи дані та вибираючи відповідні дії. Дані можна міняти або на початку встановлення діалогу, у відповідності з певним користувачем, або в процесі діалогу як можна знайти спосіб розпізнавання. Професійного рівня користувача в ході роботи. В довільному випадку стиль діалогу буде мінятися у відповідності з отриманими даними.
Переключає повідомлення між користувачами і робочими процесами необхідними для виконання програм користувача.
Монітор повідомлення отримує ввід через драйвери вводу і передає вивід через драйвери виводу.
Драйвер для користувацького вводу/виводу аналогічно до драйверів пристроїв.
Різні користувачі повинні сприйматись різними способами і драйвер фактично є процесами діалогу які вміщують в собі компоненти керування і представлення діалогу. Для того, щоб поміняти діалог початківця на діалог експерта треба поміняти драйвери. Адаптації можна досягнути шляхом зміни даних або підєднанням іншого користувача драйверів. Як користувач так і процеси посилають повідомлення монітору і відповідають на повідомлення монітора повідомленнями.
Драйвер користувача і драйвер задач можна замінити альтернативними, для того щоб врівноважити відмінності між користувачем і робочим процесом.
Драйвер користувача і драйвер робочої задачі відповідають з семантичним аналізом та за їх перетворення в стандартизовану форму яка може бути оброблена монітором.
Системи керування інтерфейсом користувача (СКІК)
Це пакет для підтримки інтерфейсів користувача. Він подібний до СУБД, але СУБД - це посередник між програмою користувача і фізичною БД, а СКІК це посередник між програмою користувача і користувачем.
Система керування інтерфейсу користувача в ідеалі повинна підтримувати всі стилі діалогу і спрощувати побудову складних інтерфейсів. Вона повинна забезпечити мови визначення інтерфейсів і генератор як авто створень вихідного коду із вихідних визначень на цій мові. Згенеровані на цій системі інтерфейси користувача більш надійні і зручні. Такі інтерфейси вимагають менше часу на розробку. Використаний прототип ний підхід що дозволяє легко тестувати , модифікувати, порівнювати альтернативні розвязки які представлені замовником.
ФОРМАТУВАННЯ ЕКРАНУ
Для ефективної взаємодії між користувачем і системою потрібний діалог який є природнім, послідовним, не надлишковим, забезпечуватиме підтримку і бути гнучким, у відповідності з цим зовнішній вид екрану залежить від того які поля відображаються в якому місці і з якими атрибутами. Процес розміщення даних на екрані включає в себе етапи:
Загальні принципи розташування інформації на екрані
Дані потрібно розташовувати так, щоб:
а) користувач міг проглядати екран в логічній послідовності і міг легко виводити потрібну інформацію.
б) ідентифікувати звязані групи інформації;
в) розрізняти виключні ситуації;
г) визначити яка дія збоку користувача вимагається і чи вимагається взагалі для продовження виконання завдання.
Яка інформація повинна виводитись на екрані
На екрані в біжучий момент повинна знаходитись тільки та інформація яка потрібна користувачу на даному етапі роботи.
Той факт, що доступна і інша інформація і вона запамятовується разом з необхідною інформацією і що існує те місце на екрані для розміщення цієї інформації, немає значення, вимоги користувача є основним фактором і тому треба так продумати процес доступу щоб допомогти користувачу виконати задачу.
В меню треба розміщувати список тільки тих пунктів з яких користувач може зробити вибір незалежно від того що це традиційне меню чи рядок.
Хоча екран неповинен вміщувати надлишкову інформацію важливо, щоб відображалась уся інформація, що відноситься до задачі яка розвязуєть на даному етапі.
Нетреба примушувати користувача запамятовувати інформацію на одному екрані для того, щоб потім скористатись цією інформацією для роботи на наступному екрані. Якщо вся інформація деякого документу не розміщується на одному екрані, деякі елементи даних можуть виконуватись на інших екранах для збереження послідовності обробки.
Тому якщо для виконання операції потрібно прізвище автора воно повинне бути присутнім на тому самому місці.
Одночасно з визначенням того які саме окремі елементи даних необхідні, розробник має визначити як ці елементи повязані між собою.
Логічно повязані дані, тобто такі дані, які необхідно бачити на екрані одраз, не повинні розділятись по різних екранам. Розробник повинен розбиратись в задачі замовника.
Розробник повинен забезпечити можливість виводу для конкретної задачі списку необхідних даних повязаних з певною групою і позначити обовязкові або необовязкові. Як правило потрібно підтвердження правильності даних і має бути місце пояснення неправильності даних.
В якому виді інформація повинна виводитись на екран
Після того, як було визначено, які дані необхідні для розвязку певної задачі, наступний крок полягає у визначенні формату виводу даних. На цьому етапі розробник повинен вказати розмір області виводу і атрибути, повязані з кожним полем виводу. Природність діалогу означає, що інформація представлена таким чином, що її одразу можна використати. Не треба примушувати користувача додатково обробляти інформацію. Наприклад, шукати обраховані значення і вручну їх вводити. Назви полів розташовуються в природному та логічному звязку з відповідними значеннями полів. Назви полів необхідні для правильної інтерпретації вхідних та вихідних даних.
Дуже важливе питання є: «Де на екрані повинна розташовуватись інформація?»
Щільність розташування даних на екрані - поняття субєктивне. Воно залежить від конкретного користувача і задачі. Для досвідченого користувача дані розташовуються щільніше, але існують правила, які регулюють щільність розташування даних на екрані за допомогою інтервалів.
Загальні правила:
1. Треба залишати вільними приблизно половину екрнау.
2. При виводі таблиць треба залишати вільним рядок після кожного 5 рядка.
3. В таблицях треба залишати 4 або 5 пробілів між стовпчиками.
Якщо дані виводити на декілька екранів, то ділити їх треба таким чином, щоб зберігалась чітка межа розділу. Не можна порушувати логічні звязки у групі даних. Треба також розташовувати на одному екрані всі дані, необхідні для прийняття конкретного рішення. На довільному екрані логічно звязані дані повинні представляти окремою групою. Цього можна досягнути залишаючи по декілька пробілів з кожної сторони групи або проводячи горизонтальні та вертикальні лінії або використовуючи різні атрибути для полів різних груп.
Фрагменти тексту мають розташовуватись на екрані так, щоб погляд користувача сам посувався по екрану в потрібному напрямку. Вміст полів не має притулятись до країв екрану.
Меню, яке має відносно малий обсяг інформації, має зміщуватись у верхню ліву частину екрану. Для підкреслення симетрії вміст та назви полів, що відносяться до 1 групи, мають вирівнюватися по вертикалі. По можливості треба вирівнювати всі логічно звязані групи даних. Треба визначити точку початку відрахування. Природньо починати з лівого верхнього кута на екрані і переміщуватись зліва на право, згори донизу.
Логіка задачі може вимагати іншу послідовність переміщення, але її треба змінювати обгрунтовано. Один і той самий тип інформації має зявлятись в одному і тому ж місці екрану.
Заголовок та дані про стан системи |
Верхня область для виводу повідомлень |
Основна область |
Нижня область для виводу повідомлень |
Опис функціональних клавіш та «запасний люк» |
Якщо ми створюємо велику систему і в межах цієї системи треба узгодити розташування дяних як в межах одної програми, так і в межах декількох програм одної системи, то її необхідно розташовувати за єдиним шаблоном.
Верхні 2 або 3 рядки екрана зарезервовані для виводу заголовку та стану системи. Заголовок часто описує пакет програм, систему або конкретну програму даної системи. Також виводиться дата і час. Прийнято також присвоювати кожному екрану унікальний номер.
В ієрархічно побудованих меню область для виводу стану системи може показувати пункти меню верхнього рівня. Окрім того сюди може виводитись підтвердження того, що система працює.
Області для повідомлень у верхній і нижній частинах призначення для виводу підказок, для індикації виключних станів. Підказки, які визначають способи роботи з інформацією на екрані, розташовуються у верхній області, а підказки, які пояснюють, що робити далі, виводяться в нижній області, тобто приступаючи до роботи, ми повинні знати, як її виконати, а по закінченню, що робити з результатом.
Довільну з цих областей можна використовувати для виводу довільної інформації та повідомлення про помилки. Довідкові повідомлення виводяться у верхню область, повідомлення про помилки - внизу. Основна область вміщує головну інформацію.
Повідомлення, які вимагають підтвердження, наприклад, правильності вхідних даних при заповненні форми, краще розміщувати у нижній області, А верхня для виводу команд меню і помилки.
Основна область
Для діалогу типу «Меню» - це список варіантів. Для діалогу типу «Екранна форма» це назви і значення полів екранної форми. 1 чи 2 рядки знизу відводяться для виводу назв керуючих клавіш та їх функцій, які є спільними для всіх екранів даної системи. В цій області виводиться інформація, яка має відношення до основної області екрану («Запасний люк»), бо там дається інформація про способи переривання процесу функціонування.
Запропонований шаблон ділить екрана по горизонталі на ряд фіксованих вікон. Конкретний вид такого шаблону визначається вимогами системи і задачами, які виконуються.
В структурах типу:
1. Q&A повідомлення про помилки розміщуються поруч з відповіддю або під нею.
2. Меню повідомлення про помилку, як правило, не потрібне, тому найбільш вірогідне виникнення помилки, неправильна натискання клавіш. Якщо такі повідомлення потрібні, вони зявляються нижче списку пунктів меню в області для виводу повідомлень.
3. Готові форми і команди однозначно вводяться декілька відповідей, тому можливе і декілька повідомлень про помилки.
Більшість структур на базі команд завершують роботу при виявленні 1 помилки і тому виводять лише одне повідомлення. В структурі на базі готових форм вивід повідомлення або повідомлення про помилку набагато складніше, оскільки користувач заповнює всю форму., а потім виправляє поля з помилками. Як правило прапорцем відмічаються поля з помилками і курсор розміщується в перше поле з помилкою і переміщується в наступне поле з помилкою і виводить відповідне повідомлення і т.д.
Виділення інформації це використання таких атрибутів, які дозволяють зосередити увагу користувача до деякої області екрану. Зрозуміло, що увага про інформацію може бути зосереджена на обмеженій кількості областей екрану. Іноді спеціально виділяють саме зайві поля. Спочатку розробник має розташувати інформацію на екрані без виділення полів, а потім треба оцінити, який додатковий ефект створює виділення поля або полів. Якщо система виводить тільки знайому користувачеві інформацію, поля виділяти не треба. До атрибутів поля відносять:
1. Колір символів
2. Колір фону
3. Рівень яскравості
4. Режим миготіння
Кожний з цих атрибутів дає можливість досягти різного ефекту з точки зору притягання уваги користувача, оскільки їх обєднання може викликати непередбачуваний ефект. Тому треба використовувати мінімальне число цих засобів. Декілька атрибутів одночасно використовують лише тоді, якщо вимагається особлива увага користувача конкретного поля.
Миготіння фону це найсильніший засіб притягання уваги, але це і найсильніший фактор, що відвертає увагу. Краще, щоб миготіла якась порція, оскільки миготіння повідомлення не сприймається.
Колір другий по силі фактор притягування уваги. Різні кольори спектра сприймаються по-різному. Області з кольорами в червоній частині спектра виділяють більше ніж області, колір фону яких знаходиться в блакитній частині спектра.
Область екрану на білому фоні або на фоні кольору, який знаходиться в середній частині спектру, здаються більш яскравими і легше сприймаються при різному освітленні. Найбільший контраст між двома областями екрана досягаються коли колір фону одної області чорний або близький до довільної з 2 частин спектра, а колір фону іншої області білий або взятий із середньої частини спектра. Ці ж міркування справедливі для співвідношення між кольорами переднього плану та фону. Невдала комбінація: блакитні символи на червоному фоні.
1. Використання мінімальної кількості кольорів. Не більше 3 (4) на 1 робочий екран.
2. Для великих проміжків треба використовувати колір фону
3. Яскраві кольори використовують для виділення даних, а більш спокійні для фону.
4. Для виділення 2-х областей треба брати кольори із різних частин спектра або білий і колір із середини спектра.
5. Колір треба використовувати у представлені користувача про цей колір.
6. Все треба перевіряти самому.
Яскравість
Досить 2-х рівнів яскравості. Більш яскравий фон використовується для виділення країв. Повідомлення про виключення системи негатив. Області із світлим фоном краще привертають користувача. Використання різної яскравості зображень передового плану найменш доступний спосіб притягання уваги. Його краще за все використовувати для відокремлення значень від назв полів та від підказок системи. Окрім того можна підкреслити, шрифт, але такий метод не дуже дієвий, оскільки наявність різних шрифтів може ускладнити сприймання.
Звук дуже сильний спосіб притягання уваги. Потрібний тоді, коли необхідно привернути увагу користувача, коли він не дивиться на екран.
На користувача впливає вміст самої інформації, що заважає йому оцінити спосіб представлення даних. Тому в загальному випадку потрібно відокремити вміст від його форми.
Існують 2 методи:
Ділимо екран на частини, кожна з яких заповнюється текстом (довільним) і кожна відділяється як мінімум 1 пробілом по всьому периметру. Екран розбивається на групи прямокутників текстом. Через центр екрану проводиться вісь, яка оцінює збалансованість частин екрану. Число і розмір прямокутників оцінює характер розташування даних. Велике число малих прямокутників розсіюють, а поодинокі великі зосереджують.
Дозволяє визначити області екрану до яких буде притягнуто увагу користувача таким рівням яскравості зображення в цьому місці. Яскравість в кожній точці оцінюється як кількість символів, що міняється і які відмінні від пробігу в області найближчій до цієї точки. Збільшення яскравості моделюють за допомогою символів, які вміщують більше точок в матриці символів або більшу яскравість фону. Невелике число виділених точок зручно розташовувати симетрично відносно центральної осі.
Але ці методи не дають кількісної оцінки. Не завжди вдається відділити вміст від форми, тому останнім критерієм є практика.
Для діалогової системи важливо встановити необхідність між вимогами користувача і його психологічними особливостями. Вона залежить від характеру задачі, від рівня підготовки користувача. Але у випадку, коли задача розвязується групою користувачів, що мають різний рівенб підготовки, ці питання стають актуальними. Тому бажано, щоб в процесі діалогу забезпечувалась гнучкість. Вона полягає в здатності діалогових систем адаптуватись до користувача або самостійно до довільно можливого рівня підготовки користувача.
Існує 3 види адаптації:
Користувач явно вибирає рівень діалогової підтримки. Система забезпечує 2 види діалогу:
Правило 2х рівнів можна розширити до n рівнів, але це має недоліки:
Діалогова система хоче побудувати модель користувача, яка міняється в процесі роботи користувача, визначається стиль діалогу і адаптує його в залежності від змін.
Критерії для виконання змін в моделі користувача:
Розпізнавання характеристик користувача це одна з проблем при вправній адаптації в діалогову систему. Система повинна знати дані про потенційних користувачів і про розвязання задачі. Дослідження направлені на те, як в рамках інтерфейсу розробляти і підтримувати моделі користувачів з використанням апарату штучного інтелекту.
Повинна забезпечувати гнучкість діалогової системи без врахувань поведінки користувача і без однозначного вибору конкретного стилю діалогу. Це досягається застосуванням скорочених команд, т.з. акселераторів:
Користувач може використовувати ці засоби на свій розсуд. Вони вносять поверхневі зміни, але корисні, бо роблять інтерфейс універсальним.
Перевага в тому, що зменшується обсяг вхідних даних. Це вигідно тим користувачам, які невпевнено працюють з клавіатурою. Деякі системи автоматично доповнюють введену інформацію, тобто пропонують повну назву мети відповідно до скорочення, яке було введено. Якщо для кожної позиції можна вибрати природній тип опису, щоби один символ однозначно визначав кожну позицію, то це бажано.Але якщо для виконання одно символьних скорочень потрібні додаткові правила скорочень , користі від цього буде небагато. Тм де допускається скорочення повинно діяти чітке правило їх утворення, яке відноситься до всієї системи . Тобто правильне скорочення це довільне число символів більше рівне мінімально необхідного для однозначної ідентифікації однозначної позиції.
Слово скорочення
Мотор мо мот мото
Персонал п пе пер перс персонал
Кінець к кін
При частковому спів падіння кількість символів у введеному рядку визначає скільки символів приймає участь у порівнянні, тому можливі такі результати порівняння.
Програма вводу буде зберігати запити на вхідні дані доки не буде досягнуто однозначного спів падіння, програма обробки помилок повинна відрізняти неправильний ввід від неоднозначного. Може виникнути необхідність вивести різні повідомлення для того щоби побачити різні типи помилок.
метод wild card:
pr*.* - всі файли pr
*.exe - всі .exe файли
*.* - всі файли в директорії
Процес порівняння в таких випадках більш складний і визначається на основі синтаксичного розбору командного рядка.
Скорочення прискорюють ввід при наборі даних , зменшують кількість помилок, але скорочення не є механізмом який забезпечує стійкість до помилок. При порівнянні можна виключити прості помилки набору або орфографічні помилки, тобто діалогова система може повідомити користувачу, що йго відповідь некоректна і попросити повторити ввід. Окрім того система може спробувати виконати часткове порівняння позицій з біжучим запиттом користувача. Якщо припустити, що більш ймовірні помилки в сомволах , які введені пізніше інших, то вимоги до точності спів падіння можна змінювати поступово. Простий метод полягає в тому що вилучається крайній справа символ обєкта який призначається а потім співставляється цей повний обєкт з кожним рядком , яки йприймає участь у порівнянні. Алгоритм часткового спів падіння має ту перевагу, що він забезпечує коректне спів падіння навіть в тому випадку, коли набирається більше ніж треба символів для однозначної ідентифікації елементів системи . Процес вилучення правого символу повторюється до того моменту доки не буде досягнуте спів падіння або коли обєкт не скоротиться до одного символу. Існують більш загальні підходи до реалізації часткового спів падіння, всі вони ґрунтуються на використанні метрик, яка дозволяє визначити відстань між вхідними даними і кожною можливою відповіддю, збираються ті відповіді, які найближчі до вхідних даних. Часткове спів падіння особливо ефективне в таких випадках:
В алгоритмі Sound Dex використовується часткове співпадіння:
1=B,F,P,V
2=C,G,J,K,Q,S,X,Z
3=D,T
4=L
5=M, N
6=R
FARBES
FFORBES F612
FORBOUYS
FORBES
В цьому алгоритмі використовується тільки фонетична близькість різних символів, але така сама метрика може бути використана для оцінки близькості клавіш на клавіатурі.
Концепція синонімів
Діалогова система, яка забезпечує синонімічність дозволяє позначити одинобєкт за допомого різних ідентифікаторів в різних форматах або за допомогою різних алгоритмів. Наприклад, DEL = ERASE рівноправні команди на стирання файлу , тобто можна реалізувати таке меню, в якому користувач може вибирати потрібний йому елемент, або за допомогою прокрутки інформації на екрані, або шляхом набору відповідного ідентифікатора на клавіатурі. Перевага синонімів в тому, що користувач може використовувати той ідентифікатор, який є для нього найбільш природній і тому ліпше запамятовується. Недоліки: наявність великої кількості синонімів може привести до помилки користувача. Система може давати велику затримку, якщо треба проглядати велику кількість альтернативних імен. Виникає проблема вибору одного і того ж ідентифікатора для позначення різних команд .
Полягає у тому, що система працює з конкретними значеннями деякої величини, доки користувач не задав явно її значення. Таким чином у тих випадках, коли користувач багаторазово вводить одну і ту саму відповідь на певний запит ввід можна скоротити до одного натиску клавіші необхідно для підтвердження значення прийнятого по замовленню. Є випадки які вимагають стандартної відповіді, тоді користувачу не треба вводити відповіді явно. Але користувач повинен знати, які значення по замовчуванню використовується в даній системі. В режимі Q&A при заповненні форм значення по замовчуванню можна вивести на екран разом з підказкою або з заголовком.
Число реєстрацій? [13/04/05]
В структурі меню значення по замовчуванню визначається за своєю позицією. Якщо меню побудовано за принципом частоти використання - то це 1 позиція. В командній мові не можна вивести на екран значення по замовчуванню, тому їх запамятовувати. По замовчуванню використовується стан відповіді, використання замовчування не доцільне якщо треба давати різні відповіді, але треба мати механізм, який міняє ці значення.
Коли користувач виконує ввід, коли центральний процесор виконує завдання, система генерує переривання. Воно:
Припустимо що підчас виконання процесором свого завдання користувач ввід деяку інформацію, яка буде знаходитись в буфері, якщо наступний запит на ввід від процесора буде вимагати інформацію з буфера то таким чином користувач ввів її випереджуючи запит системи і система негайно приступить до її обробки. Перевага випереджуючого вводу полягає в тому, що користувач може формувати свої власні вхідні повідомлення незалежно від часу отримання запиту від системи. Оскільки буфер клавіатури має звичайно не дуже великий обєм для виконання випереджуючого вводу необхідний діалоговий буфер відповіді і діалогова система буде приймати відповіді з цього буфера. Між випереджуючим вводом символів і відповідей є різниця. Діалоговий буфер відповіді заповнюється тільки тоді, коли система дає запит на ввід . Для забезпечення випереджуючого вводу символів та відповідей потрібні додаткові підпрограми. Для того щоби прийняти рішення про відміну свого запиту діалогова система повинна бути здатна визначити чи виконав користувач випереджуючий ввід символу чи відповіді. Діалог з використанням командної мови можна розглядати як діалог питання відповідь з випереджуючим вводом відповідей.
Багатовіконні WIMP інтерфейси
Саме впровадження компютерних засобів суспільством викликали необхідність створення таких ІК, які б не вимагали професійних знань і були інтуїтивно зрозумілими. Фірмою XEROX на поч. 70-х запропоновано WIMP інтерфейс. Відкрив епоху інтерфейсів орієнтованих на масового користувача.
Windows інформація надається користувачу у вигляді декількох вікон.
Icons об'єкти з якими система має справу представляються у вигляді піктограм або ікон.
Mouse вибірка потрібної інформації відбувається за допомогою пристроїв позиціонування.
Pop-up меню, яке автоматично обновляється на екрані або яке користувач може витягнути з рядка попереднього меню.
Виходячи з цієї концепції були сформульовані вимоги до робочих станцій:
Для забезпечення зображень, які в декілька разів перевищують розміри фізичного екрану і яка допускає перекриття частин зображення.
Типовою для роботи є ситуація, коли користувач повинен витрачати свій час на декілька різних не пов'язаних між собою робіт, а саме: обробка текстів, елементарні обчислення, графіка, ведення щоденників. Для виконання цих робіт при старих підходах до ІК виконання було одночасно не можливо, а користувачі не хотіли підвищувати свою комп'ютерну освіту. Почали шукати аналоги технологій ведення канцелярських справ і в основу WIMP інтерфейсів лягли 3 основні метафори. Метафора це застосування понять, які мають відношення до 1 сфери по відношенню до іншої сфери.
Метафори:
В офісній справі елементарні задачі представляються конкретними об'єктами це папки, каталоги, довідники. Канцелярські операції фізичними діями над об'єктами. Метафора і конкретний об'єкт прагне обмежити розходження між синтаксисом і семантикою задач, а також між синтаксисом і семантикою КС шляхом моделювання інтерфейсів природнього виконання задачі людиною. Наприклад: знищення файла можна змоделювати шляхом переміщення його в корзину.
Фактичний ефект довершеної дії негайно відображається на екрані. Це означає, що екран повинен імітувати засоби друку. Якщо частину тексту треба друкувати іншим шрифтом, то і на екрані має з'явитись цей шрифт. Якщо файл знищується, то користувач повинен бачити, що пропадає зображення цього файла на екрані.
Людина за робочим столом має достатні їй джерела інформації. Документи різних форматів до 1 задачі або різних задач і більшість дій за столом пов'язаних з використанням різних документів. Метафора робочий стіл має на увазі, що інтерфейс забезпечує користувача усіма можливостями. Множині джерел інформації відповідають на екрані різні вікна. Інформація в довільному вікні може включати в себе текст, графіки або їх комбінації. Така інформація може відображати процес розв'язку 1 або декількох задач. Можна переносити інформацію з 1 документу в інший шляхом вилучення частини 1 документу і включення в інший.
Вікна
Вікно діалогу це спеціальна область фізичного вікна за допомогою якого користувач спостерігає окремі аспекти своєї взаємодії із задачею.
Це визначення має 2 аспекти:
При обробці текстів вікно завжди починається з адреси символьної позиції і вміщує їх ціле число. В графічному режимі роботи вікна можуть починатись і завершуватись за індивідуальною адресю піксела.
(Призначеня вікна)
Вікно
Висота
Ширина
Атрибути описують формат в якому по замовчуванню відображаються елементи у вікні. По відношенню до вікна маємо додаткові атрибути як обмежити вікно. Стандартна домовленість полягає у відкресленні рамки з допогою лінійних сегментів (різні стилі). Прийнято відображати мітку, що описує призначення вікна.
Чи будуть рамка та мітка лежати лежати в середині вікна або поза вікном.
Межа
Мітка
Межа Межа
Межа
Фізичний екран маже розглядатися як окреме не розмічене вікно, яке починається в точці 0.0 в верхньому лівому куті екрану.
Вікно це об'єкт який забезпечує користувача специфічною точкою зору на його взаємодію із певною задачею. Вікно може вміщувати повідомлення, яке виконує довільні із діалогових функцій. Підказка, луна вводу, вихідні дані, результуючі дані, повідомлення про помилки, повідомлення про стан. Підказка може мати довільний вид: меню, питання-відповідь, екранна форма.
Вікна та додаткові буфери
Результуючий
процес 1
Результуючий
процес 2
Карта 2 віртуального
акаунту
Карта 1 віртуального
акаунту
Система
керування
відобра-
женням
Карта
фізичного
екрану
. . .
В безвіконному середовищі вихідні процеси записують інформацію безпосередньо в область пам'яті зарезервовану для відображення фізичного екрану. Багатовіконні середовища вводять проміжний крок. Замість запису в область пам'яті зарезервовану для карти екрану процес записує інформацію в буфер віртуальний екран. Розмежування процесів на карти віртуальних екранів знімає обмеження на те, що вихідні дані повинні вміщувати межі фізичного екрану. Така система може підтримувати декілька віртуальних буферів віртуальних екранів одночасно і результуючий процес може записувати в довільний з цих буферів. Ці буфери можуть мати довільний розмір і розміщуватися на довільній зручній ділянці пам'яті.
Це допоміжні буфери і їх можна класифікувати:
Діалог
Результуючий
процес
Буфер вводу
Буфер редагування
Буфер виводу
Вихідний
процес
Користувач
В однозадачному режимі задача виконується послідовно, тобто кожна задача завершується до того як стартує інша. Може бути декілька буферів звязаних з інтерфейсом. Діалог може виводити запити в 1 буфер, допоміжні повідомлення в інший.
В мультипрограмному режимі задачі можуть виконуватися одночасно, шляхом виділення кожній задачі кванту часу. В такому режимі може бути декілька різних буферів повязаних з кожною із конкретних задач. Буфери виводять їх заповнений діалог через результуючий процес. Користувач не може змінити їх вміст.
Буфер редагування в якомувміт може міняти як коритувач так і діалог.
В безвіконному середовищі ОС підтримує запис біжучої позиції виводу, тобто початок курсора на карті екрану. Довільний вивід запис на екран з біжучої позиції курсору. Багатовіконні середовища екрану повинні зберігати інформацію про відкрті буфери та біжучу позицію курсора в кожному з них. Тобто діалог повинен зберігати список, який описує кожний буфер, а саме:
Взаємодія між буфером і вікном складається з повідомлень, якими обмінюються через вихідний та результуючий процеси. Результуючі процеси записують повідомлення в буфери. Вікно це відображення порції деякого буфера на фізичному екрані. Кожне вікно має 1 буфер з яким воно зв'язане, але кожен буфер може мати зв'язки з декількома вікнами. Якщо вікно має різні зміщення в бефері, то це забезпечує різні точки зору на процес.
Функції системи керування відображенням
Відповідальність за відображення на фізичному екрані тих частин буфера, які належать конкретному вікну покладають на процес, який називається керуванням відображення.
Він забезпечує функції:
Система керування відображення виконує свої функції шляхом збереження списку вікон в якому докладніше описуються всі біжучі вікна. В цьому списку кожний запис визначає окреме вікно шляхом опису ідентичного вікна, його зміну в буфер, його місце на екрані та атрибути. Всі вікна не можуть мати 1 пріоритет, якщо 2 слоти перекриваються то таке вікно має бути зверху, воно називається активним визначає початок списку вікон. Коли відкриваємо вікно, воно вказує на початок зв'язаної ним області буфера. Спосіб в який вікно може бути зсунуте відносно свого буферу може бути обмежене.
Вікна телетайпного типу проглядають тільки в 1 напрямку.
Фреймові вікна можна проглядати вверх або в низ тільки фіксованими порціями. Таким чином переміщення вікна відносно екрану має 2 аспекти:
Можуть відбуватися одночасно.
Крім обслуговування дисплея процес вимагає керування буфером. Система керування буфером гарантує, що буферний простір резервується і звільнюється тоді, коли вікна відкриваються і закриваються.
В WIMP інтерфейсі більш природньо використовувати керування шляхом прямого маніпулювання, тобто шляком фізичного маніпулювання вікном на екрані за допомогою довільного пристрою на екрані. Якщо вікна, буфери та інтерфейси є сутностями, то вони можуть бути оброблені фізичними діями, а не командами. Якщо рядок символів, що є командами копіювання символів в інший каталог можна замінити діями в інтерфейсі прямого маніпулювання. Звичайно використовують пристрої позиціонування. Фізичні операції представляються різними перемиканнями, наприклад миші. Довільна частина екрану може розглядатися як адресат, а це означає, що користувач може визначити довільне вікно як активне, шляхом підведення курсору і натискання клавіші.
Коли було запропоновано WIMP інтерфейс, який відображає задіяні інтерактивні сутності, цей інтерфейс є домінуючий до цього часу і до цього часу до нього було добавлено тільки це:
Досить довге домінування можна посилити тим, що інтерфейси цього типу повністю відповідають вимогам сучасних додатків. В теперішній час очікуються нові форми, як в концептуальному, так і в апаратно-програмному, а це вимагає аналізу інтерфейсів. Вони не використовують меню, екранні форми і панелі інструментів замість цього пропонуються навчаючі приклади, рухи, або жести. Самостійне значення має візуалізація, де цікавим є використання просторових метафор. Наприклад, тривимірний кабінет як альтернатива двовимірному робочому столу для організації інформації.
Досить довго при розробці компютерних додатків приділяли увагу продуктивності і функціональності. Потім стало зрозумілим наскільки важливим є дружність інтерфейсу користувача. Для непрофесіоналів важливо, щоб опанувати інтерфейс та запамятати методи роботи вимагаються мінімальні зусилля. Для професіоналів важливо є не так швидкість опанування, як мінімальних зусиль необхідних для досягнення великої продуктивності і задовільнити ці вимоги важко.
Проте наскільки б дружнім не був інтерфейс користувача завжди існує певна відстань між намірами користувача і реалізацією цих намірів засобами інтерфейсу, тобто кожен інтерфейс має на увазі наявність деякого шару когнетивної обробки тобто, інтелектуальної повязаної з мисленням людини. Когнетивна обробка явно, або неявно розтолковується між користувачами та компютерним виконанням, мети заданої користувачем.
Ідеальним інтерфейсом було б відсутність цього шару, що дозволило б реалізувати таку парадигму “я думаю, а компютер мені дає те, що я думаю і більше того про що мені треба думати”.
Мета: мінімізувати використання тих механізмів маніпулювання, які є суттєвим в програмних інтерфейсах користувача та скоротити когнетивну дистанцію між намірами та реалізацією цих намірів, тобто треба дати користувачу можливість зосередитись на його задачі, а не на технології необхідній для реалізації його задачі.
Одним з пристроїв оцінки майбутнього інтерфейсу є забезпечення повноцінної роботи з компютером таким категоріям:
Метод “вказати та клікнути” (у WIMP-інтерфейсі) став частиною сучасної культури.
Виникла нова спеціальність дизайну інтерфейсу користувача на предмет зручності та стійкості, стало необхідною частиною розробки цього додатку.
Тобто WIMP став стандартним. Він забезпечує відносну простоту у вивченні і застосуванні, легкість переносу знань отриманих від використання інших додатків, де дана можливість це звільнення від вивчення документації.
Недоліки WIMP інтерфейсів
Кожна особливісь взята окремо може бути простою, але при формуванні в один додаток вони утворюють одну складність.
для професіоналів.
Якщо додаток за суттю є 3-D, то робота з ним за допомогою 2D-віджетів стане складною.
3D мають набагато складнішу візуальну складність, ніж двовимірні, що ще більше ускладнюють використання WIMP в таких випадках.
Головний недолік, не використовуються такі канали взаємодії як мова, слух, дотик, хоча основним каналом є зір, без якого спілкування з фізичним світом не може бути повноцінним.
Таким чином маємо один, який не розділяється в часі напівдуплексний канал взаємодії.
Система реагує на кожну дискретну подію вводу і ці події можуть бути простими кліками на клавіші та вибір за допомогою миші. Найбільш складний ввід, який представляє шлях, який малюється на екрані.
Пост WIMP інтерфейс.
Це такий інтерфейс, який включає в себе один метод взаємодії, який непритаманний 2D віджетам, таким як меню та піктограми як результат він повинен включати діючі паралельно сенсорні канали комунікації за допомогою природньої мови, і все це в середовищі багатьох користувачів, наприклад пристрої розпізнавання рухів або жестів , які малюються пером.
Тренажери з кермом, з перемикачем передач і відеоімітації та інше.
3D-віджети - це обєкти, які інкапсулюють 3D геометрію і призначені для керування іншими обєктами в сценах, в задачах. Вони є частиною 3D сцени, що дозволяє не застосовувати 2D віджети, які накладаються на 3D сцени. Універсальні 3D віджети це блоки маштабування та обертання.
Інтерфейс “Пряме обличчя”
Це так зване “marking menu” -багаторівневе радіальне меню в якому користувач може використовувати мязову пам'ять і виконувати вибір з затиснутою в руці мишею.
Ввід за допомогою двох рук, при якому одна рука керує грубими рухами, а інша виконує точну роботу.
Тактильні пристрої, навідміну від інших інтерактивних пристроїв, мають властивість, як відчувати так і керувати інформацією, тобто є такі явища:
Перспективи:
Потужність компютерів буде такою, що може забезпечувати керування великої кількості інформації, яка надходить одночасно від багатьох каналів вводу із симулюванням поведінки автономних обєктів в реальному часі. Нарешті стане зрозумілою, як використовувати сертифіковані агенти.
Всі інтерфейси були „сліпі”. Пересилка інформації між фізичними процесами вв/вив і користувачем полягають у простому переміщенні:
Фізичний процес вводу/
виводу
Процес діалогу «Сліпі»
Перетворення
Робочі процеси
Процес діалогу діє як пасивний посередник, незалежно від вибраної структури діалогу, вхідні повідомлення, які отримуються через процеси вводу, перетворюються у форму зручну для робочого процесу. Вихідні повідомлення з робочого процесу перетворюються у зворотному напрямку. Якщо діалог підтримує різні режими роботи попереднє вхідне повідомлення може встановлювати контекст діалогу, який впливає на те, як повинна інтерпретуватись вхідна послідовність, але все одно ця інтерпретація носить механічний характер.
Інтерфейс не розуміє вмісту повідомлення в момент виконання перетворення. Інтерфейсу не потрібна інформація про характер повідомлення користувача, про внутрішню структуру процесів, про дані з якими вони маніпулюють. Йому потрібні деякі правила перетворення.
Розглянуті адаптивні засоби забезпечують розширення цих механізмів. Розглянемо новий тип інтерфейсів, якому властиві характеристики інтелектуальні.
Перша відмінність:
Фізичний процес вводу/
виводу
Процес діалогу перетворення у відповідному контексті в «модель світу» для контексту співставлення
Робочі процеси
Аналогічно відбувається спілкування між людьми. Люди вдосконалюють свої знання, „модель світу”. Вони інтерпретують отриману інформацію у відповідності з моделлю і словами висловлюють те, що хочуть сказати в контексті цієї моделі. Процес за допомогою якого це робиться можна описати у формі розпізнавання образів. Інформація яка надходить, співставляється зі зразками. Які є у моделі світу, щоб визначити яка є краще. Чим більша модель, тим більше інтерпретацій.
Відмінність в тому, як вони використовують форму розпізнавання образів для інтерпретації вхідних повідомлень від користувача у світлі існуючої моделі світу.
Виникає 2 проблеми:
Необхідність процесора з великими потужностями. Якщо вона забезпечена, то залишається проблема представлення зразків в системній моделі і отримання нових зразків, і вдосконалення старих. Як треба запрограмувати компютер, щоб він сам навчався, тобто як компютер може створити модель світу в предметній області, як в користувача.
ЗМІСТ
1 Інтерфейс користувача
1 Елементи ІК
1 Напрями в проблемі створення ІК
1 ІНТЕРФЕЙС КОМАНДНОГО РЯДКА
2 ПОВНОЕКРАННИЙ (ТЕКСТОВИЙ) ІНТЕРФЕЙС (TUI TEXT USER INTERFACE)
2 ВІКОННИЙ ІНТЕРФЕЙС
2 ГРАФІЧНИЙ ІНТЕРФЕЙС КОРИСТУВАЧА (GUI GRAPHICAL USER INTERFACE)
2 ЕРГОНОМІКА
3 USABILITY
3 МОВА РОЗМІТКИ ІНТЕРФЕЙСІВ КОРИСТУВАЧА (UIML USER INTERFACE MARKUP LANGUAGE)
3 МАТЕРІАЛЬНИЙ ІНТЕРФЕЙС КОРИСТУВАЧА (СЕНСОРНИЙ)
3 РОЗЧЕРКО-ОРІЄНТОВАНИЙ ІНТЕРФЕЙС
4 ПРОЕКТУВАНЯ
4 Принципи проектування інтерфейсу користувача
5 Взаємодія із користувачем
7 Представлення інформації
7 Структура підходу відокремлення представлення даних від самих даних
8 Фактори, які впливають на відчуття комфорту
9 Труднощі, які виникають при проектування інтерфейсу користувача
9 Стратегія розробки інтерфейсу користувача
10 Оцінка проекту
11 Складові частини інтерфейсу «Людина-компютер»
11 Процеси вводу-виводу
12 Фактори, які треба враховувати при виборі пристроїв
12 Процес діалогу
12 Задачі процесу діалогу:
13 Варіанти граматики діалогу
14 Висновки
15 Правила, яким повинен відповідати діалог
15 Процеси вводу-виводу
15-19 Класифікація пристроїв вводу/виводу та їх опис (природність, послідовність, стислість, ступінь підтримки користувача, гнучкість)
19 Висновки
19 Діалоги в інтерфейсі “Людина-компютер”
19 Критерії для оцінки прийнятності структури
21 ДІАЛОГ ТИПУ “ПИТАННЯ-ВІДПОВІДЬ” (Q&A)
21 Критерії розробки
22 Реалізація структури
22 Висновки до структури “питання -відповідь” (Q&A).
23 СТРУКТУРА ДІАЛОГУ ТИПУ “МЕНЮ”
23 Формати представлення меню на екрані
23 Критерії розробки
24 Реалізація структури
25 Висновки
25 СТРУКТУРА ДІАЛОГУ НА ОСНОВІ ЕКРАННОЇ ФОРМИ
25 Можливості цієї структури
26 Критерії розробки
26 Реалізація структури
26 Висновки
27 СТРУКТУРА ДІАЛОГУ НА ОСНОВІ КОМАНДНОЇ МОВИ
27 Критерії розробки
27 Реалізація структури
27-28 Висновки (+ до всіх структур)
28 ОПИС ДІАЛОГІВ
28 Сітка переходів (діаграма станів)
29 Сітка переходів для діалогу структур типу Q&A
30 Сітка переходів для діалогу типу «menu»
31 Субсітка
32 Обробка діалогу у вершинах сітки
32 Різниця між вершинами 2-го і 3-го типів
33 ПРИНЦИПИ РОЗРОБКИ ДІАЛОГУ
33 Представлення та керування
34 Монітор повідомлень
34 Системи керування інтерфейсом користувача (СКІК)
34 ФОРМАТУВАННЯ ЕКРАНУ
35 Загальні принципи розташування інформації на екрані
35-36 Яка інформація повинна виводитись на екрані
36 Шаблони для розміщення даних на екрані
37 Розміщення повідомлення про помилки
38 Засоби виділення інформації на екрані
38 Правила використання кольорів
39 Обєктивні критерії розміщення даних на екрані
39 Фіксована адаптація
40 Повна адаптація
40 Косметична адаптація:
40 Співпадіння скорочень
41 Часткове співпадіння
41 Перетворення імен в Sound Dex
42 Крнцепція синонімів
42 Застосування концепції замовчування
42 Випереджуючий ввід символів та відповідей
43 БАГАТОВІКОННІ WIMP-ІНТЕРФЕЙСИ
43 Вимоги до робочих станцій
43 Метафори
44 Вікна
45 Вікна та додаткові буфери
46 Функції системи керування відображенням
47 ІНТЕРФЕЙСИ НОВОЇ ГЕНЕРАЦІЇ
47 Недоліки WIMP-інтерфейсів
48 Пост-WIMP інтерфейс
48 3D-віджети
48 Інтерфейс «Пряме обличчя»
48 Тактильні пристрої
48 Перспективи
49 ІНТЕЛЕКТУАЛЬНІ ІНТЕРФЕЙСИ
49 Основні відмінності інтелектуального інтерфейсу