Стандартизация пользовательского интерфейса

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

Длительное время основной формой общения пользовате­ля с компьютером оставался диалог в форме «вопрос-ответ». Но, возможно, имен­но потому, что компьютер выступал в роли собеседника, очень быстро возникла необходимость исследования психологических аспектов общения человека с ком­пьютером. Результаты этих исследований заставили вспомнить об эргономике ра­бочего места. В настоящее время уже ни одна серьезная публикация, посвященная пользовательскому интерфейсу, не обходится без ссылок на результаты, полученные в таких областях знаний, как психология, эргономика, математическая лингвистика, кибернетика и т.д.

В качестве иллюстрации того, насколько серьезно относятся «законодатели моды» в области компьютерных технологий к проблемам интерфейса, можно отметить следующий факт. Американский Национальный институт стандартов (ANSI) име­ет по данному направлению специальную консультативную группу — Комитет по стандартам интерфейса «человек-компьютер» (The Human-Computer Interface Standard Committee). Существуют подобные организации не только в США, но и в других странах; более того, имеются также международные исследовательские груп­пы, работающие в этом направлении, например, Международный консультативный комитет по телеграфии и телефонии (International Telegraph and Telephone Consultation Committee), изучающий особенности интерактивных элементов ин­терфейса.

Многими из этих организаций или рабочих групп, в свое время, были подготов­лены проекты документов по стандартизации пользовательских интерфейсов, со­держанию принципы их проектирования и реализации. Так, в 1986 году было опуб­ликовано «Руководство по разработке программного пользовательского интерфейса», содержащее 944 принципа, касающихся ввода и отображения дан­ных, поддержки пользователя, защиты данных и т.д. Однако ни один из этих проек­тов не получил статуса официального документа, поскольку все они имели общий недостаток (тот же, что и первые исследования в этой области): в них не учитыва­лись технологические возможности инструментальных средств, имевшихся в рас­поряжении разработчиков программного обеспечения.

Ситуация коренным образом изменилась в 1987 г., когда корпорация IBM объя­вила о намерении создать единую среду разработки приложений (Systems Application Architecture — SAA).

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

Целями проекта являются:

1. Повышение производительности труда программистов и конечных пользователей.

2. Облегчение эксплуатации и сопровождения программного обеспечения.

3. Повышение эффективности распределенной обработки информации.

4. Увеличение отдачи инвестиций в разработку информационных систем.

Проект SAA содержит 4 компонента:

· Соглашения по интерфейсу пользователя (Common User Access — CUA);

· Соглашения по программному интерфейсу (Common Programming Interface — CPI);

· Соглашения по разработке приложений (Common Applications — СА);

· Соглашения по коммуникациям (Common Communications Support — CCS).

В качестве технологической базы для реализации соглашений по пользова­тельскому интерфейсу было предложено конкретное инструментальное средство — Programming Toolkit для операционной системы OS/2. При его создании был учтен накопленный к тому времени опыт разработки интерфейсов, а также после­дние достижения в данной области, в первую очередь — появление графических интерфейсов.

Исследованиями и практической реализацией графических интерфейсов в то время уже занимались такие фирмы как Xerox, Apple, Digital Research и Microsoft. В результате их деятельности были определены основные концепции построения графических пользовательских интерфейсов:

• использование единой рабочей среды пользователя в виде так называемого Рабочего стола;

• объектно-ориентированный подход к описанию заданий пользователей;

• использование графических окон в качестве основной формы отображения данных;

• применение средств неклавиатурного ввода, основанного на выборе и указа­нии с помощью манипулятора «мышь».

В силу различных причин фирма IBM при реализации проекта SAA наиболее тесно сотрудничала с фирмой Microsoft, в результате чего была создана графичес­кая оболочка Microsoft Windows IBM Top View. PI хотя впоследствии пути двух гигантов компьютерного бизнеса несколько разошлись, основные положения про­екта SAA живы и успешно развиваются: корпорацией IBM — применительно к OS/2, а фирмой Microsoft — в рамках семейства ОС Windows.

В марте 1997 года фирма Microsoft выпустила пакет Visual Studio 97, в который вошли все созданные ею инструментальные средства разработки приложений, а также средства автоматизации сопровождения программных продуктов (Visual SourceSafe). Это событие можно рассматривать как очередной шаг в направлении практической реализации идей проекта SAA.

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

Справедливости ради следует отметить, что для UNIX-систем, в определенном смысле являющихся конкурентом Windows, существует аналогичный «почти стан­дарт», представленный архитектурой XWindow.

Итак, стремление к стандартизации пользовательского интерфейса налицо, и оно обусловлено не только коммерческими интересами ведущих производителей ПО. Вместе с тем, единого официально утвержденного стандарта пока нет, но уже сейчас хотелось бы знать, по каким параметрам может оцениваться «степень стан­дартизации» пользовательского интерфейса.

На наш взгляд, стандартизованный интерфейс (именно стандартизованный, а не стандартный) должен отвечать двум основным требованиям:

• обладать перечисленными в предыдущем разделе свойствами (естественнос­ти, согласованности и т.д.);

• быть узнаваемым (или предсказуемым, что в данном случае одно и то же).

Второе требование, в свою очередь, предполагает, что интерфейс содержит толь­ко стандартные базовые элементы; каждый такой элемент должен иметь «узаконен­ное» название и определенный перечень свойств. Например, нельзя называть меню «списком» и при этом использовать его для вывода результатов расчетов.

На первый взгляд может показаться, что стандартизация интерфейса ведет к убогому однообразию внешнего облика программных продуктов. Но ведь и Моцарт, и автор «Мурки» пользовались одними и теми же семью нотами... А програм­мисты, знакомые с алгоритмизацией, знают, что любой, сколь угодно сложный алгоритм содержит всего три-четыре базовые алгоритмические конструкции. Так что и при создании стандартизованного интерфейса результат будет зависеть в первую очередь от «композитора» — разработчика.

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: