Эволюция технологии общения с компьютером и видов пользовательского интерфейса

 

Министерство  образования и науки Российской Федерации

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ БЮДЖЕТНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

 

 

 

 

Кафедра  менеджмента

 

 

 

 

КУРСОВОЙ ПРОЕКТ

 

По дисциплине: Информационные технологии управления

 

Тема: Эволюция технологии общения с компьютером и видов пользовательского интерфейса

 

Выполнил:

 Студент 3 курса

 дневного отделения

 группы № МО-34  

Подпись    _______________

 

 

Научный руководитель:

                         Старший  преподаватель 

кафедры менеджмента

 Оценка    _________________

Дата       _________________

Подпись  _________________

 

 

 

 

 

 

 

 

 

 

2011

 

Содержание

стр

 

 

 

 

 

 

 

 

 

 

Введение

Как известно, процесс проникновения информационных технологий практически во все сферы человеческой деятельности продолжает развиваться и углубляться. Помимо уже привычных и широко распространенных персональных компьютеров, становится все больше и встроенных средств вычислительной техники, расширяются возможности мобильных телефонов, появляются смартфоны, планшетные и карманные компьютеры.

Пользователей всей этой разнообразной вычислительной техники  становится все больше, причем наблюдается развитие двух вроде бы противоположных тенденций. С одной стороны, информационные технологии все усложняются, и для их применения, и тем более дальнейшего развития, требуется иметь очень глубокие познания. С другой стороны, упрощаются интерфейсы взаимодействия пользователей с компьютерами. Компьютеры и информационные системы становятся все более дружественными и понятными даже для человека, не являющегося специалистом в области информатики и вычислительной техники1. Это стало возможным, прежде всего, потому, что пользователи и их программы взаимодействуют с вычислительной техникой посредством специального (системного) программного обеспечения - через операционную систему. Операционная система предоставляет интерфейсы и для выполняющихся приложений, и для пользователей.2

В связи с развитием современных технологий и стремительного совершенствования различных интерфейсов, на наш взгляд актуально рассмотреть современные виды пользовательских интерфейсов, историю их создания и развития, а также проследить тенденции их изменения в будущем.

Целью данного курсового проекта является рассмотрение и анализ эволюции технологии общения с компьютером и видов пользовательского интерфейса.

Задачи работы включают в себя следующее: 
 1) раскрыть  понятия «интерфейс пользователя»;

2) рассмотреть виды  интерфейсов пользователя;

3) проследить эволюцию  видов интерфейсов пользователя  до настоящего времени;

4) рассмотреть типы  интерфейсов пользователя;

5) описать автоматизированное  рабочее место менеджера, его  программное и информационное обеспечение;

6) создать базу данных и описать алгоритм её создания.

Объектом данной работы является пользовательский интерфейс.

Предметом курсового проекта является эволюция технологии общения с компьютером и видов пользовательского интерфейса.

Курсовой проект состоит  из введения, основной части, которая, в свою очередь, разбивается на 2 главы:  «Эволюция пользовательского интерфейса» и «Автоматизированное рабочее место менеджера», и заключения.

 

 

 

Глава 1. Эволюция пользовательского  интерфейса

1.1 Понятие интерфейса пользователя

Интерфейс - совокупность технических, программных и методических (протоколов, правил, соглашений) средств сопряжения в вычислительной системе пользователей с устройствами и программами, а также устройств с другими устройствами и программами.

Интерфейс - в широком смысле слова, это способ (стандарт) взаимодействия между объектами. Интерфейс в техническом смысле слова задаёт параметры, процедуры и характеристики взаимодействия объектов. Различают:

Интерфейс пользователя - набор методов взаимодействия компьютерной программы и пользователя этой программы.

Программный интерфейс - набор методов для взаимодействия между программами.

Физический интерфейс - способ взаимодействия физических устройств. Чаще всего речь идёт о компьютерных портах.3

Пользовательский интерфейс является диалоговым компонентом системы и представляет собой программные и аппаратные средства, которые обеспечивают взаимодействие пользователя с системой.4 Основу такого взаимодействия составляют диалоги. Под диалогом в данном случае понимают регламентированный обмен информацией между человеком и компьютером, осуществляемый в реальном масштабе времени и направленный на совместное решение конкретной задачи. Каждый диалог состоит из отдельных процессов ввода / вывода, которые физически обеспечивают связь пользователя и компьютера. Обмен информацией осуществляется передачей сообщения.

 

Рис.1. Взаимодействие пользователя с компьютером.

 

В основном пользователь генерирует сообщения следующих типов:

- запрос информации,

- запрос помощи,

- запрос операции или функции,

- ввод или изменение информации.

В ответ пользователь получает подсказки или справки, информационные сообщения, требующие ответа, приказы, требующие действия, сообщения об ошибках и другую информацию.5

Интерфейс пользователя компьютерного приложения включает:

- средства отображения информации, отображаемую информацию, форматы и коды;

- командные режимы, язык "пользователь - интерфейс";

- устройства и технологии ввода данных;

- диалоги, взаимодействие и транзакции между пользователем и компьютером, обратную связь с пользователем;

- поддержку принятия решений в конкретной предметной области;

- порядок использования программы и документацию на неё.

Пользовательский интерфейс (далее ПИ) часто понимают только как внешний вид программы. Однако на деле пользователь воспринимает через него всю программу в целом, а значит, такое понимание является слишком узким. В действительности, ПИ объединяет в себе все элементы и компоненты программы, которые способны оказывать влияние на взаимодействие пользователя с программным обеспечением (далее ПО).

Это не только экран, который  видит пользователь. К этим элементам  относятся:

- набор задач пользователя, которые он решает при помощи системы;

- используемая системой метафора (например, рабочий стол в MS Windows);

- элементы управления системой;

- навигация между блоками системы;

- визуальный (и не только) дизайн экранов программы;

- средства отображения информации, отображаемая информация и форматы;

- устройства и технологии ввода данных;

- диалоги, взаимодействие и транзакции между пользователем и компьютером;

- обратная связь с пользователем;

- поддержка принятия решений в конкретной предметной области;

- порядок использования программы и документация на нее.

1.2 Виды интерфейсов пользователя.

Интерфейс - это, прежде всего, набор правил. Как любые правила, их можно обобщить, собрать в "кодекс", сгруппировать по общему признаку. Таким образом, мы приходим к понятию "вид интерфейса" как объединение по схожести способов взаимодействия человека и компьютеров.

Современными видами интерфейсов являются:

1) Командный интерфейс.  Командный интерфейс называется  так по тому, что в этом виде  интерфейса человек подает "команды"  компьютеру, а компьютер их выполняет и выдает результат человеку. Командный интерфейс реализован в виде пакетной технологии и технологии командной строки.

2) Графический, WIMP - интерфейс (Window - окно, Image - образ, Menu - меню, Pointer - указатель). Характерной особенностью этого вида интерфейса является то, что диалог с пользователем ведется не с помощью команд, а с помощью графических образов - меню, окон, других элементов. Хотя и в этом интерфейсе подаются команды машине, но это делается "опосредованно", через графические образы. Этот вид интерфейса реализован на двух уровнях технологий: простой графический интерфейс и "чистый" WIMP - интерфейс.

3) SILK - интерфейс (Speech - речь, Image - образ, Language - язык, Knowlege - знание). Этот вид интерфейса наиболее  приближен к обычной, человеческой форме общения. В рамках этого интерфейса идет обычный "разговор" человека и компьютера. При этом компьютер находит для себя команды, анализируя человеческую речь и находя в ней ключевые фразы. Результат выполнения команд он также преобразует в понятную человеку форму. Этот вид интерфейса наиболее требователен к аппаратным ресурсам компьютера, и поэтому его применяют в основном для военных целей.

Командный интерфейс. Исторически, первой появилась пакетная технология. Она существовала уже на релейных машинах Зюса и Цюзе (Германия, 1937 год). Идея ее проста: на вход компьютера подается последовательность символов, в которых по определенным правилам указывается последовательность запущенных на выполнение программ. После выполнения очередной программы запускается следующая и т.д. Машина по определенным правилам находит для себя команды и данные. В качестве этой последовательности может выступать, например, перфолента, стопка перфокарт, последовательность нажатия клавиш электрической пишущей машинки (типа CONSUL). Машина также выдает свои сообщения на перфоратор, алфавитно-цифровое печатающее устройство (АЦПУ), ленту пишущей машинки. Такая машина представляет собой "черный ящик" (точнее "белый шкаф"), в который постоянно подается информация и которая также постоянно "информирует" мир о своем состоянии (см. рис. 2). Человек здесь имеет малое влияние на работу машины - он может лишь приостановить работу машины, сменить программу и вновь запустить ЭВМ. Впоследствии все более становилась очевидной низкая производительность и скорость работы таких машин. К тому же вычислительные центры, вслед за газетами, стали вторым крупным "производителем" макулатуры. Поэтому с появлением алфавитно-цифровых дисплеев началась эра по-настоящему пользовательской технологии - командной строки.

 

Рис.2. Вид большой ЭВМ  серии ЕС ЭВМ

 

Технология командной строки. При  этой технологии в качестве единственного способа ввода информации от человека к компьютеру служит клавиатура, а компьютер выводит информацию человеку с помощью алфавитно-цифрового дисплея (монитора). Эту комбинацию (монитор + клавиатура) стали называть терминалом, или консолью. Команды набираются в командной строке. Командная строка представляет собой символ приглашения и мигающий прямоугольник - курсор. При нажатии клавиши на месте курсора появляются символы, а сам курсор смещается вправо. Это очень похоже на набор команды на пишущей машинке. Однако, в отличие от нее, буквы отображаются на дисплее, а не на бумаге, и неправильно набранный символ можно стереть. Команда заканчивается нажатием клавиши Enter (или Return). После этого осуществляется переход в начало следующей строки. Именно с этой позиции компьютер выдает на монитор результаты своей работы. Затем процесс повторяется. Технология командной строки уже работала на монохромных алфавитно-цифровых дисплеях. Поскольку вводить позволялось только буквы, цифры и знаки препинания, то технические характеристики дисплея были не существенны. В качестве монитора можно было использовать телевизионный приемник и даже трубку осциллографа.6

Обе эти технологии реализуются  в виде командного интерфейса - машине подаются на вход команды, а она как бы "отвечает" на них.

Преобладающим видом файлов при работе с командным интерфейсом стали текстовые файлы - их и только их можно было создать при помощи клавиатуры. На время наиболее широкого использования интерфейса командной строки приходится появление операционной системы UNIX и появление первых восьмиразрядных персональных компьютеров с многоплатформенной операционной системой CP/M (Control Program/Monitor).

Рис. 3. Интерпретатор командной строки (command line interpreter) в Windows 7

 

Графический интерфейс. Идея графического интерфейса зародилась в середине 70-х годов, когда в исследовательском центре Xerox Palo Alto Research Center7 (PARC) была разработана концепция визуального интерфейса. Предпосылкой графического интерфейса явилось уменьшение времени реакции компьютера на команду, увеличение объема оперативной памяти, а также развитие технической базы компьютеров. Аппаратным основанием концепции, конечно же, явилось появление алфавитно-цифровых дисплеев на компьютерах, причем на этих дисплеях уже имелись такие эффекты, как "мерцание" символов, инверсия цвета (смена начертания белых символов на черном фоне обратным, то есть черных символов на белом фоне), подчеркивание символов. Эти эффекты распространились не на весь экран, а только на один или более символов. Следующим шагом явилось создание цветного дисплея, позволяющего выводить, вместе с этими эффектами, символы в 16 цветах на фоне с палитрой (то есть цветовым набором) из 8 цветов. После появления графических дисплеев, с возможностью вывода любых графических изображений в виде множества точек на экране различного цвета, возможности использования экрана стали практически безграничными.

 Первая система с графическим  интерфейсом 8010 Star Information System группы PARC появилась за четыре месяца до выхода в свет первого компьютера фирмы IBM8 в 1981 году. Первоначально визуальный интерфейс использовался только в программах. Постепенно он стал переходить и на операционные системы, используемых сначала на компьютерах Atari и Apple Macintosh9, а затем и на IBM - совместимых компьютерах.

С более раннего времени, и под влиянием также и этих концепций, проходил процесс по унификации в использовании клавиатуры и мыши прикладными программами. Слияние этих двух тенденций и привело к созданию того пользовательского интерфейса, с помощью которого, при минимальных затратах времени и средств на переучивание персонала, можно работать с любыми программным продуктом.  

Простой графический интерфейс. На первом этапе графический интерфейс очень походил на технологию командной строки. Отличия от технологии командной строки заключались в следующим:

1. При отображении символов допускалось  выделение части символов цветом, инверсным изображением, подчеркиванием  и мерцанием. Благодаря этому  повысилась выразительность изображения.

2. В зависимости от конкретной  реализации графического интерфейса курсор может представляться не только мерцающим прямоугольником, но и некоторой областью, охватывающей несколько символов и даже часть экрана. Эта выделенная область отличается от других, невыделенных частей (обычно цветом).

3. Нажатие клавиши Enter не всегда приводит к выполнению команды и переходу к следующей строке. Реакция на нажатие любой клавиши во многом зависит от того, в какой части экрана находился курсор.

4. Кроме клавиши Enter, на клавиатуре все чаще стали использоваться клавиши управления курсором.

5. Уже в этой редакции графического  интерфейса стали использоваться  манипуляторы (типа мыши, трекбола  и т.п. - см. рис.4) Они позволяли быстро выделять нужную часть экрана и перемещать курсор.

Рис.4. Манипуляторы

Подводя итоги, можно  привести следующие отличительные  особенности этого интерфейса.

1) Выделение областей  экрана.

2) Переопределение клавиш  клавиатуры в зависимости от контекста.

3) Использование манипуляторов  и клавиш клавиатуры для управления  курсором.

4) Широкое использование  цветных мониторов.

Появление этого типа интерфейса совпадает с широким  распространением операционной системы MS-DOS. Именно она внедрила этот интерфейс в массы, благодаря чему 80-е годы прошли под знаком совершенствования этого типа интерфейса, улучшения характеристик отображения символов и других параметров монитора10.

Типичным примером использования  этого вида интерфейса является файловая оболочка Nortron Commander11 и текстовый редактор Multi-Edit12. А текстовые редакторы Лексикон, ChiWriter и текстовый процессор Microsoft Word for Dos являются примером, как этот интерфейс превзошел сам себя. 

WIMP - интерфейс. Вторым этапом в развитии графического интерфейса стал "чистый" интерфейс WIMP13, Этот подвид интерфейса характеризуется следующими особенностями.

1. Вся работа с программами,  файлами и документами происходит  в окнах - определенных, очерченных, рамкой частях экрана.

2. Все программы, файлы, документы, устройства и другие объекты представляются в виде значков - иконок. При открытии иконки превращаются в окна.

3. Все действия с  объектами осуществляются с помощью  меню. Хотя меню появилось на  первом этапе становления графического интерфейса, оно не имело в нем главенствующего значения, а служило лишь дополнением к командной строке. В чистом WIMP - интерфейсе меню становится основным элементом управления.

4. Широкое использование  манипуляторов для указания на  объекты. Манипулятор перестает быть просто игрушкой - дополнением к клавиатуре, а становится основным элементом управления. С помощью манипулятора указывают на любую область экрана, окна или иконки, выделяют ее, а уже потом через меню или с использованием других технологий осуществляют управление ими.14

Следует отметить, что WIMP требует для своей реализации цветной растровый дисплей с  высоким разрешением и манипулятор. Также программы, ориентированные на этот вид интерфейса, предъявляют повышенные требования к производительности компьютера, объему его памяти, пропускной способности шины и т.п. Однако этот вид интерфейса наиболее прост в усвоении и интуитивно понятен. Поэтому сейчас WIMP - интерфейс стал стандартом де-факто.

Ярким примером программ с графическим интерфейсом является операционная система Microsoft Windows15.

Речевая технология. С середины 90-х годов, после появления недорогих звуковых карт и широкого распространения технологий распознавания речи, появился так называемая "речевая технология" SILK - интерфейса. При этой технологии команды подаются голосом путем произнесения специальных зарезервированных слов - команд. Основными такими командами (по правилам программы распознавания речи  Dragon Dictates, русский модуль "Горыныч") являются16:

"Проснись" - включение  голосового интерфейса.

"Отдыхай" - выключение  речевого интерфейса.

"Открыть" - переход  в режим вызова той или иной  программы. Имя программы называется  в следующем слове.

"Буду диктовать" - переход из режима команд  в режим набора текста голосом.

"Режим команд" - возврат в режим подачи команд голосом, и некоторые другие.

Слова должны выговариваться четко, в одном темпе. Между словами  обязательна пауза. Из-за неразвитости алгоритма распознавания речи такие  системы требует индивидуальной предварительной настройки на каждого конкретного пользователя.

"Речевая" технология  является простейшей реализацией  SILK - интерфейса.

Семантический (общественный) интерфейс. Этот вид интерфейса возник в конце 70-х годов XX века, с развитием искусственного интеллекта. Его трудно назвать самостоятельным видом интерфейса - он включает в себя и интерфейс командной строки, и графический, и речевой, и мимический интерфейс. Основная его отличительная черта - это отсутствие команд при общении с компьютером. Запрос формируется на естественном языке, в виде связанного текста и образов. По своей сути это трудно называть интерфейсом - это уже моделирование "общения" человека с компьютером. С середины 90-х годов XX века публикации, относящихся к семантическому интерфейсу, уже не встречались. Похоже, что в связи с важным военным значением этих разработок (например, для автономного ведения современного боя машинами - роботами, для "семантической" криптографии) эти направления были засекречены. Информация, что эти исследования продолжаются, иногда появляется в периодической печати (обычно в разделах компьютерных новостей). 

Биометрическая технология. Эта технология возникла в конце 90-х годов XX века. Для управления компьютером используется выражение лица человека, положение тела, жесты, направление взгляда, размер зрачка и другие признаки. Для идентификации пользователя используется рисунок радужной оболочки его глаз, отпечатки пальцев и другая уникальная информация.17 Изображения считываются с цифровой видеокамеры, а затем с помощью специальных программ распознавания образов из этого изображения выделяются команды.

Настоящим прорывом в данной области стала выпущенная в ноябре 2010 года корпорацией Майкрософт технология Kinect18 (ранее известная как Project Natal). Основанный на добавлении периферийного устройства к игровой приставке Xbox 360, Kinect позволяет пользователю взаимодействовать с ней без помощи игрового контроллера через устные команды, позы тела, жесты, мимику и показываемые объекты или рисунки. 

Kinect представляет из себя устройство (см. рис. 5), состоящее из двух сенсоров глубины, цветной видеокамеры и микрофонной решетки. Проприетарное программное обеспечение осуществляет полное 3-х мерное распознавание движений тела, мимики лица и голоса. Микрофонная решетка позволяет производить локализацию источника звука и подавление шумов, что дает возможность говорить без наушников и микрофона. Датчик глубины состоит из инфракрасного проектора, объединенного с монохромной КМОП-матрицей, что позволяет датчику Kinect получать трёхмерное изображение при любом естественном освещении. Диапазон глубины и программа проекта позволяет автоматически калибровать датчик с учётом условий игры и окружающих условий, например мебели, находящейся в комнате

Рис. 5. Microsoft Kinect

1.3 Типы интерфейсов

Интерфейсы пользователя бывают двух типов:

1) процедурно-ориентированные: консольные,  меню и со свободной навигацией.

2) объектно-ориентированные: прямого манипулирования.

Процедурно-ориентированный  интерфейс использует традиционную модель взаимодействия с пользователем, основанную на понятиях "процедура" и "операция". В рамках этой модели программное обеспечение предоставляет пользователю возможность выполнения некоторых действий, для которых пользователь определяет соответствие данных и следствием выполнения которых является получение желаемого результата.19 Особенности процедурно-ориентированных интерфейсов:

1) Обеспечивают пользователю  функции, необходимые для выполнения задач;

2) Акцент делается  на задачи;

3) Пиктограммы представляют  приложения, окна или операции;

4) Содержание папок  и справочников отражается с  помощью таблицы-списка.

Консольным называют интерфейс, который организует взаимодействие с пользователем на основе последовательного ввода и вывода информации в текстовом режиме по принципу «вопрос-ответ». Обычно такой интерфейс реализует конкретный сценарий работы, например: ввод данных – решение задачи – вывод результата (рис.6). Единственное отклонение от последовательного процесса, которое обеспечивается данным интерфейсом, заключается в организации цикла для обработки нескольких наборов данных (рис.7). Подобные интерфейсы в настоящее время используют только в процессе обучения программированию или в тех случаях, когда вся программа реализует одну функцию, например, в некоторых системных утилитах.20

 

Рис. 6. Структура программы

с консольным интерфейсом

Рис. 7. Структура программы

с консольным интерфейсом

с организацией цикла


Интерфейс-меню, в отличие от консольного интерфейса, позволяет пользователю выбирать необходимые операции из специального списка, выводимого ему программой. В этом типе интерфейсов последовательность действий выбирается самим пользователем (рис. 8). Различают одноуровневые и иерархические меню. Первые используют для сравнительно простых случаев, когда  вариантов немного (не более 5–7), и они включают операции одного типа, например, Создать, Открыть, Закрыть и т.п. Вторые применяются при большом количестве вариантов или их очевидных различиях, например, операции с файлами и операции с данными, хранящимися в этих файлах.

Рис. 8. Структура программы с интерфейсом-меню

 

Алгоритм программы  с многоуровневым меню обычно строится по уровням, причем выбор команды на каждом уровне осуществляется так же, как для одноуровневого меню.21

Интерфейс-меню предполагает, что программа в любой момент времени находится либо в состоянии обслуживания меню (ожидания выбора со стороны пользователя), либо в состоянии выполнения операции. Пользователь, как правило, вынужден ожидать, пока выполняется выбранное им действие.

Меню может быть построено  различными способами. Простейший вариант реализации меню – вывод списка пунктов и предложение ввести номер пункта из этого списка. Более сложный вариант – список, по которому можно перемещаться с помощью клавиш (обычно клавиши управления курсором). Достоинства этого способа в том, что он удобнее, привлекательнее выглядит, не требует от пользователя соотнесения текста меню с номером пункта и уменьшает вероятность ошибки при выборе за счет того, что текущий пункт меню «подсвечивается».

Интерфейс со свободной навигацией поддерживает концепцию интерактивного взаимодействия с ПО, визуальную обратную связь с пользователем и возможность прямого манипулирования объектом (кнопки, индикаторы, строки состояния). В отличие от интерфейса Меню, интерфейс со свободной навигацией обеспечивает возможность осуществления любых допустимых в конкретном состоянии операций, доступ к которым возможен через различные интерфейсные компоненты ("горячие" клавиши и т.д.).

На данный момент сформировался стандартный набор компонент пользовательского интерфейса, которые широко применяются в самых разнообразных программах и поддерживаются многими операционными системами и библиотеками. Поскольку даже разные реализации этих компонент подчиняются некоторым общим принципам управления, интерфейсы, построенные на их основе, привычны и понятны любому пользователю.

Существенной особенностью интерфейсов со свободной навигацией является способность изменяться в процессе взаимодействия с пользователем, предлагая выбор только тех операций, которые имеют смысл в конкретной ситуации (например, блокируя ввод в те или иные поля).

Объектно-ориентированные интерфейсы используют модель взаимодействия с пользователем, ориентированную на манипулирование объектами предметной области. В рамках этой модели пользователю предоставляется возможность напрямую взаимодействовать с каждым объектом и инициировать выполнение операций, в процессе которых взаимодействуют несколько объектов. Задача пользователя формулируется как целенаправленное изменение некоторого объекта. Объект понимается в широком смысле слова - модель БД, системы и т.д. Объектно-ориентированный интерфейс предполагает, что взаимодействие с пользователем осуществляется посредством выбора и перемещения пиктограмм соответствующей объектно-ориентированной области. Различают однодокументные (SDI) и многодокументные (MDI) интерфейсы. Особенности объектно-ориентированных интерфейсов: