Download - Юзабилити. Кратко о фактах

Transcript
Page 1: Юзабилити. Кратко о фактах

PDF создан с использованием инструмента с открытым исходным кодом mwlib. См. http://code.pediapress.com/ для получения болееподробной информации.

PDF generated at: Tue, 23 Mar 2010 11:37:59 UTC

ЮзабилитиКратко о фактах

Page 2: Юзабилити. Кратко о фактах

СодержимоеСтатьиЮзабилити 1

Юзабилити 1Юзабилити- тестирование 3Эргономика 5Человеко- компьютерное взаимодействие 8Проектирование взаимодействия 9

Интерфейсы 10

Интерфейс 10Элемент интерфейса 12Интерфейс пользователя 14Графический интерфейс пользователя 17Web- ориентированный интерфейс 19Текстовый интерфейс пользователя 21Оконный интерфейс 23Интерфейс командной строки 25WIMP (графический интерфейс) 29Масштабируемый интерфейс пользователя 31Материальный интерфейс пользователя 32

Приожения 34

Список языков описания пользовательских интерфейсов 34

СноскиИсточники и основные авторы 39Источники, Лицензии и Владельцы(?) изображения. 40

Лицензии статей.Лицензия 41

Page 3: Юзабилити. Кратко о фактах

1

Юзабилити

ЮзабилитиЮзаби́лити (англ. usability — дословно «возможность использования», «способность быть использованным»,«полезность» ) — понятие в микроэргономике, обозначающее итоговый уровень удобности предмета дляиспользования в заявленных целях. Термин имеет связь с понятием «эргономи́чность», но в отличие отпоследнего меньше ассоциируется с технической эстетикой, с внешним видом и более привязан кутилитарности «юзабельного» объекта.

Официальное определениеМеждународный стандарт ISO 9241-11 определяет юзабилити как «степень, с которой продукт может бытьиспользован определёнными пользователями при определённом контексте использования для достиженияопределённых целей с должной эффективностью, продуктивностью и удовлетворённостью» (англ. «the extent towhich a product can be used by specified users to achieve specified goals with effectiveness, efficiency andsatisfaction in a specified context of use»). При этом относительная важность всех трёх аспектов определяетсяэтим самым контекстом.

Особенности при употреблении в русском языкеКак и многие иностранные термины, которые в новейшее время вошли в обиход на «постсоветскомпространстве», слово «юзабилити» нередко используется без учёта его значения в исходном английском и внесвязи с международными стандартами инженерной терминологии. Как правило это происходит из-за того, чтоигнорируется ключевой для контекста момент «определённости». Поэтому часто происходит так, что«интуитивная понятность» для разработчиков не является таковой для конечных пользователей.При разработке пользовательских интерфейсов словом юзабилити обозначают общую концепцию их удобствапри использовании программного обеспечения, логичность и простоту в расположении элементов управления.Однако при этом нередко происходит подмена понятий — утилитарных эстетическими. Тогда чётко неопределённая в целях и не обоснованная в деталях полезность конкретного решения для пользователя,считается сама собой разумеющейся, вытекающей из оригинальности внешнего вида.Термин «юзабилити» можно рассматривать как синоним слова «эргономичность» с той разницей, чтопоследняя определяет минимальность конкретных физических усилий при пользовании вещью, а первая —конечную суммарную степень удобства, меру интеллектуального усилия необходимого для полученияполезных качеств этой вещи и скорость достижения положительного результата при управлении ею. Поэтомуприменительно к таким продуктам, как бытовая электроника или средства связи, чаще используют понятие«эргономичность» относительно формы, компоновки узлов и веса, к примеру, а «юзабилити» —применительно к понятности элементов управления и режимов работы, к количеству и нужности функций.В более широком значении также употребляется слово «юзабельность» — для определения степениполезности вещи вообще и специфических задач в особенности. Например для механических приспособленийи инструментов (таких как дверная ручка или молоток) эргономичность формы будет повышать юзабельностьвещи (т.е. «удобство применения», «дружественность и простоту при пользовании», «практичность» и вообще«применимость»).

Page 4: Юзабилити. Кратко о фактах

Юзабилити 2

См. также• Юзабилити-тестирование• Эргономика• Эргономика программного обеспечения• Эргономика рабочего места• Человеко-компьютерное взаимодействие• Проектирование взаимодействия• Интерфейс пользователя• UserExperience

Ссылки

Статьи по теме• Блог-центр «GUI.RU — Хроники Юзабилити» [1].• Юзабилити в России [2].• Юзабилити в Беларуси [3].• Статьи Якоба Нильсена [4] — подборка из более чем пятидесяти статей на сайте «Webmascon».• Статья "Юзабилити" на Google Knol [5]

• Обзор простых и доступных инструментов для юзабилити-тестирования [6]

Периодика по теме• Анонсы свежих материалов о юзабилити [7].• Юзабилити Бюллетень [8].

Профессиональные ассоциации и интернет-сообщества• Special Interest Group on Computer-Human Interaction (SIGCHI) [9]

• Российское отделение ACM SIGCHI [10]

• The Usability Professionals' Association (UPA) [11]

• Российское отделение UPA [12]

• User Centered Design’s Journal — сообщество в ЖЖ [13].

Конференции и события• Всемирный День Юзабилити в России [14].• Ежегодная конференция по юзабилити [15].• Всемирный День Юзабилити в Беларуси [16].

Литература• Влад В. Головач. Дизайн пользовательского интерфейса2. Искусство мыть слона [17]. — 2009. — 94 с.• Якоб Нильсен, Хоа Лоранжер. Web-дизайн: удобство использования Web-сайтов = Prioritizing Web

Usability. — М.: «Вильямс», 2007. — 368 с. — ISBN 0-321-35031-6• Стив Круг. Веб-дизайн: книга Стива Круга или «не заставляйте меня думать!» = Don't make me think!. —

М.: Символ-плюс.• Джеф Раскин. Интерфейс: новые направления в проектировании компьютерных систем. — Символ-Плюс.

— 2004. — ISBN 5-93286-030-8

Page 5: Юзабилити. Кратко о фактах

Юзабилити 3

• Алан Купер. Психбольница в руках пациентов или Почему высокие технологии сводят нас с ума и каквосстановить душевное равновесие = The Inmates are Running the Asylum. — Символ-Плюс, 2004. — ISBN5-93286-071-5

• Магазанник В. Д., Львов В. М. Человеко-компьютерное взаимодействие: Учебное пособие для вузов. —Тверь: Триада, 2005. — С. 200. — ISBN 5-94789-119-0

• Гарретт Д. Веб-дизайн: книга Джесса Гарретта. Элементы опыта взаимодействия = The Elements of UserExperience: User-Centered Design for the Web. — Символ-Плюс, 2008. — С. 192. — ISBN 5-93286-108-8

Сноски[1] http:/ / gui. ru[2] http:/ / usability. ru/[3] http:/ / usability. by/[4] http:/ / www. webmascon. com/ archive/ topic. asp?id=22[5] http:/ / knol. google. com/ k/ uidg-knols/ -/ 1v7gf5f4q1h68/ 2#[6] http:/ / www. smashingjournal. ru/ ?p=732#[7] http:/ / fresh. gui. ru[8] http:/ / groups. google. com/ group/ usabilitybulletin[9] http:/ / www. sigchi. org/[10] http:/ / www. sigchi. ru/ index_ru. htm[11] http:/ / www. usabilityprofessionals. org/[12] http:/ / www. usabilityprofessionals. ru/[13] http:/ / livejournal. com/ community/ ru_ucdesign/[14] http:/ / wud. ru[15] http:/ / userexp. ru[16] http:/ / wud. usability. by[17] http:/ / uibook2. usethics. ru/

Юзабилити- тестированиеЮзабилити-тестирование — эксперимент, выполняемый с целью определения, насколько хорошо людимогут использовать некоторый искусственный объект (такой как веб-страница, пользовательский интерфейсили устройство) для его предполагаемого применения, то есть юзабилити-тестирование измеряет юзабилитиобъекта. Юзабилити-тестирование сосредоточено на определённом объекте или небольшом наборе объектов, вто время как исследования взаимодействия человек-компьютер в целом — формулируют универсальныепринципы.Юзабилити-тестирование — метод оценки удобства продукта в использовании, основанный на привлечениипользователей в качестве тестировщиков, испытателей и суммировании полученных от них выводов.

ПроцессПри испытании многих продуктов пользователю предлагают в «лабораторных» условиях решить основныезадачи, для выполнения которых этот продукт разрабатывался, и просят высказывать во время выполненияэтих тестов свои замечания.Процесс тестирования фиксируется в протоколе (логе) и/или на аудио- и видеоустройства — с цельюпоследующего более детального анализа.Если юзабилити-тестирование выявляет какие-либо трудности (например сложности в понимании инструкций,выполнении действий или интерпретации ответов системы), то разработчики должны доработать продукт иповторить тестирование.

Page 6: Юзабилити. Кратко о фактах

Юзабилити-тестирование 4

Наблюдение за тем, как люди взаимодействуют с продуктом, нередко позволяет найти для него болееоптимальные решения. Если при тестировании используется модератор, то его задача — держать респондентасфокусированным на задачах (но при этом не „помогать“ ему решать эти задачи).Основную трудность после проведения процедуры юзабилити-тестирования нередко представляют большиеобъёмы и беспорядочность полученных данных. Поэтому для последующего анализа важно зафиксировать:1. Речь модератора и респондента;2. Выражение лица респондента (снимается на видеокамеру);3. Изображение экрана компьютера, с которым работает респондент;4. Различные события, происходящие на компьютере, связанные с действиями пользователя:

• Перемещение курсора и нажатия на клавиши мыши;• Использование клавиатуры;• Переходы между экранами (браузера или другой программы).

Все эти потоки данных должны быть синхронизированы по тайм-кодам, чтобы при анализе их можно было бысоотносить между собой.Наряду с модератором в тестировании нередко участвуют наблюдатели. По мере обнаружения проблем ониделают свои заметки о ходе тестирования так, чтобы после можно было синхронизировать их с основнойзаписью. В итоге каждый значимый фрагмент записи теста оказывается прокомментирован в заметкахнаблюдателя. В идеале ведущий (т.е. модератор) представляет разработчика, наблюдатели — заказчика(например издателя, дистрибютора), а испытатели — конечного пользователя (например покупателя).Кроме вышеизложенного существует еще один подход к usability-тестированию: Для решения задачипредложенной пользователю разрабатывается "идеальный" сценарий решения этой задачи. Как правило, этосценарий, на который ориентировался разработчик. При выполнении задачи пользователями регистрируютсяих отклонения от задуманного сценария для последующего анализа. После нескольких итераций доработкипрограммы и последующего тестирования можно получить удовлетворительный с точки зрения пользователяинтерфейс .

См. также• Юзабилити• Автоматическое тестирование• Эргономика• Функциономика• Человек-оператор

Ссылки• 15 тезисов о юзабилити тестировании веб-сайтов [1]

• Дмитрий Сатин. Юзабилити лаборатория: смысл жизни за стеклом [2]

• Влад В. Головач. Юзабилити-тестирование по дешевке [3]

• Платон Днепровский. О месте юзабилити-тестирований [4]

• Влияние количества пользователей и охвата задач на результаты тестирования [5]

• Что лучше юзабилити-тестирование или экспертная оценка сайта [6]

• Список методов с подробным описанием, в т.ч. юзабилити-тестирование (на англ.яз.) [7]

Page 7: Юзабилити. Кратко о фактах

Юзабилити-тестирование 5

Литература• Якоб Нильсен, Хоа Лоранжер Web-дизайн: удобство использования Web-сайтов = Prioritizing Web

Usability. — М.: «Вильямс», 2007. — С. 368. — ISBN 0-321-35031-6

Сноски[1] http:/ / habrahabr. ru/ blog/ usabilitylab/ 36096. html[2] http:/ / www. usabilitylab. ru/ blog/ tabid/ 67/ BlogID/ 6/ Default. aspx?EntryID=25[3] http:/ / www. usethics. ru/ lib/ testing_by_the_cheap. html[4] http:/ / www. gui. ru/ platon/ ?p=27[5] http:/ / designformasters. info/ posts/ usability-testing-what-have-we-overlooked/[6] http:/ / usabilist. com. ua/ 2009/ 02/ ekspertnaya-ocenka-usability-ili-usability-testirovanie/[7] http:/ / www. usabilitynet. org/ tools/ list. htm

ЭргономикаЭргономика — наука о правильной организации человеческой деятельности.Эргоно́мика (от др.-греч. ἔργον — работа и νόμος — закон) — соответствие труда физиологическим ипсихическим возможностям человека, обеспечение наиболее эффективной работы, не создающей угрозы дляздоровья человека и выполняемой при минимальной затрате биологических ресурсов. Эргоно́мика — этонаучная дисциплина, комплексно изучающая человека в конкретных условиях его деятельности всовременном производстве. Основной объект исследования эргономики — система «человек — машина —среда».

ИсторияЭргономика возникла в 1920-х годах в связи со значительным усложнением техники, которой долженуправлять человек в своей деятельности. Первые исследования по эргономике начали проводиться вВеликобритании, США и Японии. Термин «эргономика» был принят в Великобритании в 1949 году, когдагруппа английских учёных положила начало организации Эргономического исследовательского общества. ВСССР в 20-е годы предлагалось название «эргология», в США раньше имелось собственное наименование —исследование человеческих факторов, а в ФРГ — антропотехника, но в настоящее время наибольшеераспространение получил английский термин.

СовременностьВ последнее время эргономика отходит от классического определения и перестаёт быть строго связана спроизводственной деятельностью. Определение, принятое Международной эргономической ассоциацией (IEA)в 2007 году: «Эргономика — это область приложения научных знаний о человеке к проектированиюпредметов, систем и окружений, используемых им».

Разделы эргономикиЭргономика изучает действия человека в процессе работы, скорость освоения им новой техники, затраты егоэнергии, производительность и интенсивность при конкретных видах деятельности. Современная эргономикаподразделяется на микроэргономику, мидиэргономику и макроэргономику• Ми́кроэргономика (иногда её неверно упоминают как миниэргономику) занимается исследованием и

проектированием систем «человек — машина». В частности, проектирование интерфейсов программныхпродуктов находится в ведении микроэргономики.

Page 8: Юзабилити. Кратко о фактах

Эргономика 6

• Ми́диэргономика занимается изучением и проектированием систем «человек — коллектив», «коллектив— организация», «коллектив — машина», «человек — сеть». Именно мидиэргономика исследуетпроизводственные взаимодействия на уровне рабочих мест и производственных задач. К ведениюмидиэргономики, в частности, относится проектирование структуры организации и помещений;планирование и установление расписания работ; гигиена и безопасность труда.

• Ма́кроэргономика исследует и проектирует более общие системы, такие как «человек — общество»,«организация — система организаций».

Виды совместимости среды «человек-машина»• Антропометрическая совместимость — учёт размеров тела человека, возможности обзора внешнего

пространства, положения оператора при работе.• Сенсомоторная совместимость — учёт скорости моторных операций человека и его сенсорных реакций на

различные виды раздражителей.• Энергетическая совместимость — учёт силовых возможностей человека при определении усилий,

прилагаемых к органам управления.• Психофизиологическая совместимость — учёт реакции человека на цвет, цветовую гамму, частотный

диапазон подаваемых сигналов, форму и другие эстетические параметры машины.

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

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

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

Page 9: Юзабилити. Кратко о фактах

Эргономика 7

Пространственная компоновка рабочего местаКонструкция рабочего места должна обеспечивать выполнение трудовых операций в зонах моторного поля взависимости от требуемой точности и частоты действия:• выполнение трудовых операций «очень часто» (2 и более операций в минуту) и часто (менее 1 операции в

минуту) должно производиться в пределах зоны легкой досягаемости и оптимальной зоны моторного поля;• выполнение редких трудовых операций допускается в пределах зоны досягаемости моторного поля.

Размерные характеристики рабочего местаКонструкция рабочего места должна обеспечивать оптимальное положение работающего, которое достигаетсярегулированием:• высоты рабочей поверхности;• высоты сиденья;• высоты пространства для ног;• высоты подставки для ног.

Взаимное расположение рабочих местВзаимное расположение и компоновка рабочих мест должны обеспечивать безопасный доступ на рабочееместо и возможность быстрой эвакуации в случае опасности.

Размещение технологической и организационной оснастки• на рабочем месте не должно быть ничего лишнего, все необходимое для работы должно находиться в

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

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

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

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

• рабочее место не должно загромождаться заготовками и готовыми деталями.

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

Литература и ссылки• Раздорожный А. А. Охрана труда и производственная безопасность: Учебно-методическое пособие —

Москва: Изд-во «Экзамен», 2005. — 512 с. (Серия «Документы и комментарии»)• В. М. Мунипов, В. П. Зинченко Эргономика. — Логос, 2001. — С. 356. — ISBN 5-94010-043-0• Эргономическое обеспечение Web-дизайна [1] — Венедикт Кляуззе. Журнал «Мир ПК» № 05 за 2002 год.• Компьютерная Эргономика [2] — компьютерно-зрительный, карпально-туннельный, позвоночный, грудной,

ножной синдромы.• Шульц Д., Шульц С. "Психология и работа"

Page 10: Юзабилити. Кратко о фактах

Эргономика 8

См. также• Юзабилити• Эргономика программного обеспечения• Социальная инженерия• Техническая эстетика

Ссылки• Эргономика труда [3]

• Novus Ergonomics [4]

Сноски[1] http:/ / www. osp. ru/ pcworld/ 2002/ 05/ 163334/[2] http:/ / www. ergonomikapc. ru[3] http:/ / chernykh. net/ content/ view/ 164/[4] http:/ / www. novus. de/ mps/ Ergonomics. 112. 0. html?& L=1

Человеко- компьютерное взаимодействиеЧеловеко-компьютерное взаимодействие (HCI [human-computer interaction] или CHI [computer-humaninteraction]) — полидисциплинарное научное направление, существующее и развивающееся в целяхсовершенствования методов разработки, оценки и внедрения интерактивных компьютерных систем,предназначенных для использования человеком, а также в целях исследования различных аспектов этогоиспользования[1] .

ИсторияЧеловеко-компьютерное взаимодействие получило развитие в контексте разнонаправленных научныхвекторов (компьютерная графика, инженерная психология, эргономика, теория организации, когнитивнаянаука, информатика и многие др.)Началом эргономической фазы человеко-компьютерного взаимодействия можно считать диссертациюСазерленда (Sutherland, 1963), которая определила развитие компьютерной графики как науки. При этомкомпьютерная графика нуждалась в эргономических проектах с целью эффективного управления сложнымимоделями CAD/CAM систем. Исследования в этой области были продолжены в работах «Man-machinesymbiosis» (Licklider, 1960), «Augmentation of human intellect» (Engelbart, 1963) и «Dynabook» (Кей и Голдберг,1977). В результате научных исследований получили развитие те инструменты, без которых труднопредставить сейчас работу с компьютером: «мышь», поэлементно-адресуемое (bitmap) отображение, «окно»,метафора рабочего стола, point-and-click редакторы.Так же проблематика производимых человеком операций за компьютером была естественным продолжениемклассических целей инженерной психологии, за исключением того, что новые проблемы имели существенныйкогнитивный, коммуникационный и интерактивный характер, ранее не рассматриваемый в инженернойпсихологии и способствовали продвижению, таким образом, инженерной психологии в этом направлении.Эргономические исследования также подчёркивали связь условий работы с явлениями, вызывающиминапряжение (стресс), такими, как: рутинная работа, сидячее положение, зрительное восприятие визуальныхобразов на дисплеях и многими другими, до этого не рассматриваемые как взаимосвязанные.

Page 11: Юзабилити. Кратко о фактах

Человеко-компьютерное взаимодействие 9

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

Литература• Special Interest Group on Computer-Human Interaction. ACM SIGCHI Curricula for Human-Computer

Interaction. New York: Association for Computing Machinery, 1992—162. ISBN 0-89791-474-0 (Last updated:2004-06-03) [2]

• Shackel B. Ergonomics for a computer // Design 120. — 1959. — P.36 — 39.• Пископпель А. А., Щедровицкий А. П. Инженерная психология и эргономика. Справочник-обзор.

1958—1991. — М.: Путь, 1996—207 с — ISBN 5-89260-001-7

Примечания[1] CHAPTER 2.1 Definition of HCI from a Curricula for Human-Computer Interaction by ACM Special Interest Group on Computer-Human

Interaction Curriculum Development Group (http:/ / sigchi. org/ cdg/ cdg2. html#2_1)[2] http:/ / sigchi. org/ cdg/

Проектирование взаимодействияПроектирование взаимодействия (Interaction Design, IxD) — область знаний, направленная напроектирование поведения продуктов и систем, с которыми осуществляется взаимодействие пользователем.Данная дисциплина, как правило, используется при разработке сложных систем — программного обеспечения,бытовой техники, сложных инструментов и т. д. Однако иногда проектирование взаимодействиярассматривают и для других типов продуктов, даже достаточно простых.Основой проектирования взаимодействия служат базовые принципы когнитивной психологии. К нимотносятся: ментальные модели, отображения, метафоры интерфейсов и т. н. «аффорданс». Многие из этихпринципов были впервые сформулированы Дональдом Норманом в книге «Дизайн привычных вещей».Проектировщики взаимодействия — специалисты в области проектирования взаимодействия — получаютинформацию для разработок с помощью итеративных опросов существующих или потенциальныхпользователей системы. При этом используются целый ряд техник — метод персон, фокус-группы и т. д.Основным критерием успешности продукта с позиций проектирования взаимодействия являютсяудовлетворение целям пользователя, эмоциональное удовлетворение от работы с продуктом.

ЛитератураСтатья "Проектирование взаимодействия" на Google Knol [1]

Сноски[1] http:/ / knol. google. com/ k/ uidg-knols/ -/ 1v7gf5f4q1h68/ 3

Page 12: Юзабилити. Кратко о фактах

10

Интерфейсы

ИнтерфейсИнтерфе́йс (от англ. interface — поверхность раздела, перегородка) — совокупность средств и методоввзаимодействия между элементами системы.В зависимости от контекста, понятие применимо как к отдельному элементу (интерфейс элемента), так и ксвязкам элементов (интерфейс сопряжения элементов).Примеры:

• вожжи — главный элемент интерфейса между лошадью и кучером (вожжи — интерфейс системы«лошадь — кучер»). Или же вожжи — интерфейс (управления) лошади;

• руль, педали газа и тормоза, ручка КПП — интерфейс (управления) автомобиля, или же интерфейссистемы «водитель — автомобиль». Для автомеханика же интерфейсными элементами являются совсемдругие устройства — щуп уровня масла, например;

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

• клавиатура и мышь — являются интерфейсом компьютера в контексте «пользователь — ЭВМ»;• адрес электронной почты — является коммуникационным интерфейсом пользователя интернет;• английский язык — основной коммуникационный интерфейс между пользователями интернета;• протокол передачи данных — часть интерфейса клиент-серверной архитектуры;• предоставление резюме и собеседование — части системы «процесс трудоустройства»;

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

Интерфейсы в вычислительной техникеИнтерфейсы являются основой взаимодействия всех современных информационных систем. Если интерфейскакого-либо объекта (персонального компьютера, программы, функции) не изменяется (стабилен,стандартизирован), это даёт возможность модифицировать сам объект, не перестраивая принципы еговзаимодействия с другими объектами.Например, научившись работать с одной программой под Windows, пользователь с легкостью освоит идругие — потому, что они имеют одинаковый интерфейс.В вычислительной системе взаимодействие может осуществляться на пользовательском, программном иаппаратном уровнях. В соответствии с этой классификацией можно выделить:Интерфейс пользователяСовокупность средств, при помощи которых пользователь общается с различными устройствами.

Page 13: Юзабилити. Кратко о фактах

Интерфейс 11

• Интерфейс командной строки: инструкции компьютеру даются путём ввода с клавиатуры текстовых строк(команд).

• Графический интерфейс пользователя: программные функции представляются графическими элементамиэкрана.

• Диалоговый интерфейс• Естественно-языковой интерфейс: пользователь «разговаривает» с программой на родном ему языке.Способ взаимодействия физических устройств. Чаще всего речь идёт о компьютерных портах.• Сетевой интерфейс• Шлюз (телекоммуникации) — устройство, соединяющее локальную сеть с более крупной, например,

Интернетом• Шина (компьютер)• Нейро-компьютерный интерфейс (англ. brain-computer interface): отвечает за обмен между нейронами и

электронным устройством при помощи специальных имплантированных электродов.Интерфейсы в программировании• Интерфейс функции• Интерфейс программирования приложений (API): набор стандартных библиотечных методов, которые

программист может использовать для доступа к функциональности другой программы.• Вызов удалённых процедур• COM-интерфейс• Интерфейс (ООП)

Интерфейсы в естественных науках• Интерфейс (химия)• Интерфейс (физика)

См. также• Интерфейс пользователя (пользовательский интерфейс)• Протокол• Стандарт• Спецификация• Шаблон• Модель• Эталон

Page 14: Юзабилити. Кратко о фактах

Элемент интерфейса 12

Элемент интерфейса

Кросс платформенный редактор элементов интерфейса Qt designer

Элеме́нт интерфе́йса — примитивграфического интерфейса пользователя,имеющий стандартный внешний вид ивыполняющий стандартные действия.

Другие названия: ви́джет (англ. widget),контро́л (control) и элемент управления.

Происхождение терминаВиджет

Слово «widget» впервые фиксируется в1926 году в том же значении, что иgadget — «приспособление, штуковина».Предполагают, что на его форму повлиялоgadget, а происходит он из which it —«этот, как его».

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

Типовые элементы интерфейсаВ большинстве существует стандартный набор элементов интерфейса, включающий следующие элементыуправления:• кнопка (button)• список (list box)• раскрывающийся список (combo box)• флажок/переключатель (check box)• радио-кнопка (radio button)• поле редактирования (textbox, edit field)• значок (icon)• панель инструментов (toolbar)• панель (строка) статуса (status bar)• всплывающая подсказка (tooltip, hint)• полоса прокрутки (scrollbar)• вкладка (tab)• элемент для отображения табличных данных (grid view)• меню (menu)

• главное меню окна (main menu)• контекстное меню (popup menu)

• окно (window)• панель (panel)• диалоговое окно (dialog box)

Page 15: Юзабилити. Кратко о фактах

Элемент интерфейса 13

• модальное окно (modal window)• дерево — элемент для отображения иерархии (tree view)

Библиотеки элементов интерфейсаВ каждой оконной системе существует свой набор «родных» элементов, с интерфейсом для работы с ними —на низком уровне. Одни библиотеки элементов управления — это высоко-уровневые «обертки» к стандартнымконтролам, упрощающие работу с ними и расширяющие их функциональность, некоторые из нихпредоставляют единый программный интерфейс для программирования интерфейса пользователя внескольких платформах или оконных системах, и с целью обеспечения кросс-платформенности приводят их кединому для всех платформ API. Другие предоставляют кросс-платформенные возможности за счётсобственной, платформо-независимой, реализации элементов управления.• Кросс-платформенные, на основе Java

• SWT (Standard Widget Toolkit) — в составе проекта Eclipse• Swing — разработка Sun, компонента Java Foundation Classes (JFC) на основе AWT• AWT — частично устаревший Abstract Windowing Toolkit (Sun, 1995)

• Кросс-платформенные, на основе C/C++, с возможностью использования в других языках• Tk• GTK+• Qt• FOX toolkit• wxWidgets (wxWindows)

• Кросс-платформенные, на основе Pascal• LCL• CLX — адаптация интерфейса Qt для Borland Delphi & Kylix

• Кросс-платформенные, на основе Ajax• Dojo• ExtJS

• Под AmigaOS• Intuition• Reaction• MUI (Magic User Interface)

• Под AROS• Zune

• Под DOS• Turbo Vision — в составе Borland/Turbo Pascal 6.0/7.0, текстовый интерфейс

• Под Microsoft Windows• Windows API• MFC (Microsoft Foundation Classes)• WTL (Windows Template Library)• OWL (Object Windows Library, Borland Pascal 7.0, графический интерфейс)• VCL (Visual Components Library, Borland Delphi)• Windows Forms• WPF (Windows Presentation Foundation или Avalon)

• Под UNIX — для X Window System• Xaw

Page 16: Юзабилити. Кратко о фактах

Элемент интерфейса 14

• Motif (Open Motif, LessTif)• Под BREW

• BUIW• Графический интерфейс для игр

• MyGUI

См. также• Гаджет

Ссылки• Веб виджет переводчик [1]

• Eclipse Nebula [2]

• Fox-Toolkit [3]

• Мобильные виджеты iDea Widgets [4]

• Виджет-лаборатория ВидПро [5], создатели toolwi.com, muzicons.com

Сноски[1] http:/ / www. yandex. ru/ ?edit=1& add=3457[2] http:/ / www. eclipse. org/ nebula/[3] http:/ / www. fox-toolkit. org/[4] http:/ / ideawidgets. ru/[5] http:/ / widpro. com/

Интерфейс пользователяИнтерфе́йс по́льзователя, он же по́льзовательский интерфейс (UI — англ. user interface) — разновидностьинтерфейсов, в котором одна сторона представлена человеком (пользователем), другая —машиной/устройством. Представляет собой совокупность средств и методов, при помощи которыхпользователь взаимодействует с различными, чаще всего сложными, с множеством элементов, машинами иустройствами. Интерфейс двунаправленный — устройство, получив команды от пользователя и исполнив их,выдаёт информацию обратно, наличествующими у неё средствами (визуальными, звуковыми и т.п.), принявкоторую, пользователь выдаёт устройству последующие команды предоставленными в его распоряжениесредствами (кнопки, переключатели, регуляторы, сенсоры, голосом, и т.д.).Чаще всего термин применяется по отношению к компьютерным программам (приложениям). Но вообще подпользовательским интерфейсом подразумевается любая система взаимодействия с устройствами,способными к интерактивному взаимодействию с пользователем:• меню на экране телевизора плюс пульт дистанционного управления им же;• дисплей электронного аппарата (автомагнитола, часы, проигрыватель) и набор кнопок и переключателей

для его настройки и управления;• приборная панель автомобиля/самолёта и её тумблеры и рычаги управления режимами;• и так далее.Поскольку интерфейс есть совокупность, то он состоит из элементов, которые, сами по себе, также могутсостоять из элементов (так, окно дисплея может содержать в себе другие окна, которые, в свою очередь, могутсодержать панели, кнопки и прочие интерфейсные элементы).

Page 17: Юзабилити. Кратко о фактах

Интерфейс пользователя 15

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

СоставляющиеПод совокупностью средств и методов интерфейса пользователя подразумеваются• средства:

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

• ввода информации/команд пользователем в устройство — множество всевозможных устройств дляконтроля состояния человека — кнопки, переключатели, потенциометры, датчики положения идвижения, сервоприводы, даже устройства съёма мозговой активности.

(по наличию тех или иных средств ввода, интерфейсы разделяются на типы — жестовый, голосовой, брэйн итд., возможны смешанные варианты). Средства эти должны быть необходимыми и достаточными, бытьудобными и практичными, расположеными и скомпоноваными разумно и понятно, соответствоватьфизиологии человека, не должны приводить к негативным последстиям для организма пользователя (всё этовходит в понятие эргономики).• методы:набор правил, заложенных разработчиком устройства, согласно которым совокупность действий пользователядолжна привести к необходимой реакции устройства и выполнения требуемой задачи — т.н. логическийинтерфейсПравила эти должны быть достаточно ясны для понимания, естественны и легки для запоминания (всё этовходит в понятие юзабилити)Увеличение в устройстве (при равной функциональности) средств ввода-вывода даёт упрощение построенияметодов управления и упрощение правил пользования, но зато приводит к сложности восприятия информациипользователем — интерфейс становится перегруженным.Наоборот — уменьшение средств отображения и контроля приводит к усложнению правил управления —каждый элемент несёт на себе слишком много функций.Потому проектировщики интерфейсов стараются принять компромиссное решение между этими двумякрайностями в каждом отдельном случае.

Компьютерные программыИнтерфейс пользователя компьютерного приложения включает:• средства отображения информации, отображаемую информацию, форматы и коды;• командные режимы, язык «пользователь — интерфейс»;• устройства и технологии ввода данных;• диалоги, взаимодействие и транзакции между пользователем и компьютером, обратную связь с

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

Page 18: Юзабилити. Кратко о фактах

Интерфейс пользователя 16

который видит пользователь.К этим элементам относятся:• набор задач пользователя, которые он решает при помощи системы;• используемая системой метафора (например, рабочий стол в MS Windows®);• элементы управления системой;• навигация между блоками системы;• визуальный (и не только) дизайн экранов программы;• средства отображения информации, отображаемая информация и форматы;• устройства и технологии ввода данных;• диалоги, взаимодействие и транзакции между пользователем и компьютером;• обратная связь с пользователем;• поддержка принятия решений в конкретной предметной области;• порядок использования программы и документация на нее.Для упрощения восприятия функции программы пользователем при разработке пользовательского интерфейсажелательно использовать метафоры.

См. также• Интерфейс• Элемент интерфейса• Текстовый интерфейс пользователя, в частности интерфейс командной строки• Графический интерфейс пользователя

• Оконный интерфейс• WIMP (графический интерфейс)• Web-ориентированный интерфейс• Индуктивный пользовательский интерфейс• Масштабируемый интерфейс пользователя

• Тактильный интерфейс• Жестовый интерфейс• Голосовой интерфейс• Материальный интерфейс пользователя• Сенситивные интерфейсы• Хаптика• Эргономика• Юзабилити• UIML — язык разметки пользовательских интерфейсов

Page 19: Юзабилити. Кратко о фактах

Интерфейс пользователя 17

Ссылки• Метафоры пользовательского интерфейса [1]

• Библиотека [2] на usethics.ru• Хроники юзабилити [3] портал на GUI.RU• Статьи об информационном дизайне [4] от Артема Горбунова• Дизайн пользовательских интерфейсов и юзабилити [5] на Хабрахабр.ру

Сноски[1] http:/ / toader. chat. ru/ a11. htm[2] http:/ / www. usethics. ru/ lib/[3] http:/ / gui. ru/[4] http:/ / artgorbunov. ru/ bb/[5] http:/ / habrahabr. ru/ blog/ ui_design_and_usability/

Графический интерфейс пользователяГрафи́ческий интерфе́йс по́льзователя (ГИП), графический пользовательский интерфейс (ГПИ) (англ.Graphical user interface, GUI; сленг. ГУИ, ГУЙ) — разновидность пользовательского интерфейса, в которомэлементы интерфейса (меню, кнопки, значки, списки и т. п.), представленные пользователю на дисплее,исполнены в виде графических изображений.В отличие от интерфейса командной строки, в ГПИ пользователь имеет произвольный доступ. С помощьюустройств ввода (клавиатуры, мыши и т. п.), ко всем видимым экранным объектам (элементам интерфейса) иосуществляется непосредственное манипулирование ими. Чаще всего элементы интерфейса в ГУИреализованы на основе метафор и отображают их назначение и свойства, что облегчает понимание и освоениепрограмм пользователями.

ИсторияВпервые концепция ГИП была предложена учеными из исследовательской лаборатории Xerox PARC в 1970-х.В 1973 году в лаборатории Xerox PARC собрали молодых учёных и дали свободу исследований. В результате,кроме всего прочего, на свет появляется концепция графического интерфейса WIMP (Windows, Icons, Menus,Point-n-Click).[1] В рамках этой концепции создаётся компьютер Alto.В 1979 году Three Rivers Computer Company выпускает рабочую станцию PERQ, похожую по принципампостроения на Alto. В 1981 году Xerox выпускает продолжение Alto — Star.Коммерческое воплощение концепция ГИП получила в продуктах корпорации Apple Computer. Воперационной системе AmigaOS ГИП с многозадачностью был использован в 1985 году. В настоящее времяГИП является стандартной составляющей большинства доступных на рынке операционных систем иприложений.Примеры систем, использующих ГИП: Mac OS, Solaris, GNU/Linux, Microsoft Windows, NeXTSTEP, OS/2,BeOS.

Page 20: Юзабилити. Кратко о фактах

Графический интерфейс пользователя 18

КлассификацияМожно выделить следующие виды ГИП:[источник не указан 309 ]

• простой: типовые экранные формы и стандартные элементы интерфейса, обеспечиваемые самойподсистемой ГИП;

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

• трёхмерный: на данный момент слабо классифицирован.

DWIMОдним из требований к хорошему графическому интерфейсу программной системы является концепция«делай то, что я имею в виду» или DWIM (англ. Do What I Mean). DWIM требует, чтобы система работалапредсказуемо, чтобы пользователь заранее интуитивно понимал, какое действие выполнит программа послеполучения его команды.

См. также• Интерфейс пользователя• Оконный интерфейс• Юзабилити• Front-end и back-end• IBM Common User Access

Ссылки• Guidebook [2] — галерея графических интерфейсов• Графический интерфейс пользователя [3] — приёмы описания GUI в руководствах пользователя

Сноски[1] Евгений Патий. 19 ступеней вверх, или История графических пользовательских интерфейсов (http:/ / smoking-room. ru/ data/ pnp/

gui_history/ ) IT News № 18/2005[2] http:/ / www. guidebookgallery. org/[3] http:/ / tdocs. su/ 1808

Page 21: Юзабилити. Кратко о фактах

Web-ориентированный интерфейс 19

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

Технические особенностиСущественное преимущество построения Web приложений для поддержки стандартных функций браузеразаключается в том, что функции должны выполняться независимо от операционной системы данного клиента.Вместо того чтобы писать различные версии для Microsoft Windows, Mac OS X, GNU/Linux и другихоперационных систем, приложение создается один раз для произвольно выбранной платформы и на нейразворачивается. Однако различная реализация HTML, CSS, DOM и других спецификаций в браузерах можетвызвать проблемы при разработке веб-приложений и последующей поддержке. Кроме того, возможностьпользователя настраивать многие параметры браузера (например, размер шрифта, цвета, отключениеподдержки сценариев) может препятствовать корректной работе приложения.Другой (менее универсальный) подход заключается в использовании Adobe Flash или Java-апплетов дляполной или частичной реализации пользовательского интерфейса. Поскольку большинство браузеровподдерживает эти технологии (как правило, с помощью плагинов), Flash- или Java-приложения могутвыполняться с легкостью. Так как они предоставляют программисту больший контроль над интерфейсом, ониспособны обходить многие несовместимости в конфигурациях браузеров, хотя несовместимость между Javaили Flash реализациями на стороне клиента может приводить к различным осложнениям. В связи сархитектурным сходством с традиционными клиент-серверными приложениями, в некотором роде «толстыми»клиентами, существуют споры относительно корректности отнесения подобных систем к веб-приложениям;альтернативный термин «Богатое Интернет приложение» (англ. Rich Internet Applications).

Устройство веб-приложенийВеб-приложение получает запрос от клиента и выполняет вычисления, после этого формирует веб-страницу иотправляет её клиенту по сети с использованием протокола HTTP. Само веб-приложение может выступать вкачестве клиента других служб, например, базы данных или другого веб-приложения, расположенного надругом сервере. Ярким примером веб-приложения является система управления содержимым статейВикипедии: множество её участников могут принимать участие в создании сетевой энциклопедии, используядля этого браузеры своих операционных систем (будь то Microsoft Windows, GNU/Linux или любая другаяоперационная система) и не загружая дополнительных исполняемых модулей для работы с базой данныхстатей.В настоящее время набирает популярность новый подход к разработке веб-приложений, называемый Ajax.При использовании Ajax страницы веб-приложения не перезагружаются целиком, а лишь догружаютнеобходимые данные с сервера, что делает их более интерактивными и производительными.Для создания веб-приложений на стороне сервера используются разнообразные технологии и языкипрограммирования

Page 22: Юзабилити. Кратко о фактах

Web-ориентированный интерфейс 20

Название Лицензия Веб-сервер

ASP проприетарная специализированный

ASP.NET проприетарная специализированный

Java свободная множество, в том числе свободных

Perl свободная практически любой

PHP свободная практически любой

Python свободная практически любой

Ruby свободная практически любой

На стороне клиента используется:• JavaScript• Flash• Java• ActiveX• Silverlight

См. также• SaaS

Ссылки• How Microsoft lost the API war [1] — Обсуждение замены традиционных приложений Windows на

веб-приложения• Web Applications 1.0 [2] документирование работы веб-приложений.• The Other Road Ahead [3] — Статья где утверждается что будущее за серверными, а не за клиентскими

приложениями• Web Applications [4] in the Open Directory Project

Литература• Марко Беллиньясо Разработка Web-приложений в среде ASP.NET 2.0: задача — проект — решение =

ASP.NET 2.0 Website Programming: Problem - Design - Solution. — М.: «Диалектика», 2007. — С. 640. —ISBN 0-7645-8464-2

• Олищук Андрей Владимирович Разработка Web-приложений на PHP 5. Профессиональная работа. — М.:«Вильямс», 2006. — С. 352. — ISBN 5-8459-0944-9

Сноски[1] http:/ / www. joelonsoftware. com/ articles/ APIWar. html[2] http:/ / www. whatwg. org/ specs/ web-apps/ current-work/[3] http:/ / www. paulgraham. com/ road. html[4] http:/ / dmoz. org/ Computers/ Internet/ On_the_Web/ Web_Applications/

Page 23: Юзабилити. Кратко о фактах

Текстовый интерфейс пользователя 21

Текстовый интерфейс пользователя

Bash — пример консольной программы

Пример оконного текстового интерфейса

Текстовый пользовательский интерфейс, ТПИ(англ. Text user interface, TUI; также Character UserInterface, CUI) — разновидность интерфейсапользователя, использующая при вводе-выводе ипредставлении информации исключительно наборбуквенно-цифровых символов и символовпсевдографики. Характеризуется малойтребовательностью к ресурсам аппаратурыввода-вывода (в частности, памяти) и высокойскоростью отображения информации, поэтомушироко использовался на начальном этапе развитиявычислительной техники. Также, его разновидность- интерфейс командной строки - имеет отдельныепреимущества в юзабилити перед графическиминтерфейсом. Поэтому программы, основанные наТПИ, имеют некоторое распространение донастоящего времени, особенно в специфическихсферах и на маломощном оборудовании.

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

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

Особенности текстового интерфейсаВ простейшем случае ТПИ использует интерфейс командной строки, однако многие программы с помощьюинтерактивных элементов создают более дружественный интерфейс, приближающийся по удобству кграфическому).В текстовом интерфейсе реализованы все базовые элементы интерфейса, позднее перенесённые в графический интерфейс — меню (как списочные, так и выпадающие), кнопки, радио-кнопки, чекбоксы, комбобоксы, полосы прокрутки и т.д. Многие программы реализовывали развитую оконную систему (чему способствовали библиотеки вроде CScape, D-Flat, Turbo Vision и многие другие), некоторые имели сменные скины (например, DOS Navigator) и поддерживали различные устройства интерактивного взаимодействия, такие как мышь,

Page 24: Юзабилити. Кратко о фактах

Текстовый интерфейс пользователя 22

джойстик, световое перо.На программном уровне для ввода и вывода информации консольные программы используют стандартныеустройства ввода-вывода (stdin, stdout, stderr), хотя могут открывать и другие файлы, сетевые соединения исовершать иные действия, доступные в выполняющей их среде. Вывод печатных символов в stdout и stderrприводит к появлению этих символов на устройстве вывода и к получению их пользователем.Консольные программы для более продвинутых операционных систем, особенно UNIX, как правило, способныработать на достаточно широком классе реализаций интерфейса с пользователем. Для упрощения написаниятаких программ широко применяется библиотека ncurses.

Реализация текстового интерфейсаКонсольная программа не обязана заботиться о реализации самого взаимодействия с пользователем,ограничиваясь вводом-выводом на стандартные устройства, использованием библиотек типа ncurses илииных программных интерфейсов. Собственно взаимодействие с пользователем обычно осуществляетоперационная система или иное программное обеспечение.Классической реализацией текстового интерфейса, восходящей к первой половине XX века, являетсяалфавитно-цифровое устройство ввода-вывода, например, комплект из клавиатуры и АЦПУ (телетайпа).Впоследствии вместо АЦПУ стали применять мониторы, снабжённые знакогенератором, что позволилобыстро и удобно организовывать диалог с пользователем. Подобными устройствами снабжён или может бытьснабжён почти каждый современный компьютер. Такие комплекты из монитора и клавиатуры (иногда сдобавлением мыши) называются консолью компьютера.В соответствии с традицией использования консольными программами клавиатуры и АЦПУ для ввода ивывода соответственно взаимодействие таких программ с пользователем свелось к чтению из stdin и выводу наstdout. Таким образом, появилась возможность перенаправлять потоки ввода-вывода, осуществляявзаимодействие с пользователем посредством иных устройств, в том числе подключенных через сеть, а такжепри помощи специальных программ — эмуляторов терминала, например, рисующих окно с текстом вграфическом интерфейсе пользователя (текстовое окно).В 1970-х годы и позднее выпускались даже специальные устройства, реализующие текстовый интерфейс —текстовые терминалы, подключаемые через последовательный порт к компьютеру напрямую или черезмодем. С распространением персональных компьютеров функции текстового терминала, как правило,выполняет компьютер, тот, на котором выполняется консольная программа, или другой. Программы Telnet иssh позволяют пользователю взаимодействовать с консольной программой, запущенной на удалённомкомпьютере (как правило, под управлением UNIX), через Интернет или локальную сеть. Программы xterm,rxvt, konsole и многие другие реализуют текстовый интерфейс посредством текстового окна в среде X WindowSystem.Альтернативный подход к консольному выводу был использован в персональных компьютерах, в частности(хотя не только), IBM PC под управлением DOS. Программа может не только выводить данные через stdout,но и прямо изменять содержимое определённой области памяти, связанной со знакогенератором монитора,приводя к немедленному изменению видимых на мониторе данных. Такие программы могут также работать всреде Microsoft Windows. Более того, Windows имеет поддержку текстовых окон, во многом превосходящуюимевшуюся в DOS, в том числе и для приложений собственно Windows.Linux предоставляет ещё бо́льшие возможности для консольных программ. В частности, даже безо всякогографического интерфейса несколько одновременно запущенных программ могут бесконфликтновзаимодействовать с пользователем, создавая иллюзию наличия в системе нескольких консолей (виртуальныеконсоли).

Page 25: Юзабилити. Кратко о фактах

Текстовый интерфейс пользователя 23

Примеры консольных программ• Любая программа, получающая данные путём чтения stdin и отправку данных путём записи в stdout, по

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

• Текстовые программы для DOS, осуществляющие вывод в видеопамять EGA/VGA. Подобные программыработают также и в среде Microsoft Windows.

• Unix shell, а также все утилиты, предназначенные для работы в этой среде.Некоторые программы с ТПИ могут работы и в консольном режиме:• Midnight Commander (UNIX)• FAR Manager (Windows)

Шрифты• Lucida Console• Terminus• Monaco

Оконный интерфейс

Пример оконного интерфейса в текстовом режиме (файловый менеджерFar) — два (или три) окна, расположенные «над» экраном и «друг над другом»

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

Несмотря на то, что наиболееестественным для оконного интерфейса является графический режим, основные его элементы применимы и втекстовом режиме, где он применяется в равной степени.Процедуры поддержки оконного интерфейса призваны отрисовывать экран c располагающимися «поверх него»окнами и распределять ввод пользователя между ними (при существовании нескольких равноправных оконввод пользователя осуществляется в то, которое в данный момент является активным).Окно обычно имеет прямоугольную форму, с обрамлением и/или цветом фона, отличным от цвета основногоэкрана. При необходимости окно имеет заголовок (с пояснением функции) и органы управления. Иногдаиспользуются различные эффекты для придания ощущения объемности интерфейса, в том числе:• «тени» — затемнение под окном со сдвигом (как правило, вправо-вниз, предполагая наличие света

слева-сверху). В графическом режиме тени также могут отбрасывать другие элементы интерфейса,например курсор мыши;

• создание иллюзии выпуклых и вдавленых структур — линий, надписей, пониженных или повышенных областей (например, кнопок), рамок и т. п., линиями повышенной и пониженной яркости и полутоновыми

Page 26: Юзабилити. Кратко о фактах

Оконный интерфейс 24

переходами (для имитации криволинейных поверхностей);• полная или частичная (полу-)прозрачность окна — просвечивание сквозь «подложки» или других окон

(применимо только в графическом режиме).Некоторые окна (они называются модальными) «монополизируют» фокус пользовательского внимания: работус программой можно продолжить лишь после закрытия «модального» окна.Оконный интерфейс очень быстро завоевал популярность и в настоящее время (отчасти — благодаряоперационным системам с графическими оконными оболочками) является самым популярным видомпрограммного интерфейса.

РазновидностиПрограммы с классической организацией экрана могут использовать элементы оконного интерфейса дляорганизации меню, окон сообщений и диалогов.Программы с полной реализацией оконного интерфейса раздельно работают с отдельными подзадачами вразных окнах (например, многооконный редактор с документом в каждом окне). При полной реализацииосновной экран «под окнами» разгружается и может быть использован для каких-нибудь глобальных задач.Полная реализация, как правило, предполагает наличие манипулятора мышь для простого переключениямежду окнами и управления ими (перемещение, изменения размеров, скрытие, закрытие и тому подобное).Оконный интерфейс имеют оболочки большинства операционных систем, и, в этом случае, окно можетпредставлять собой отдельную запущенную программу (задачу).Оконный интерфейс реализуется как в графическом, так и в текстовом режиме. Наиболее известной(неполной) реализацией оконного интерфейса в текстовом режиме является программа-оболочка ПитераНортона «Norton Commander» и её многочисленные ремейки. [1] . Так же много программ с текстовымоконным интерфейсом было сделано с использованием библиотеки Turbo Vision от компании Borland.

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

Оконная система совсем не обязательно является операционной и операционная не обязательно является оконной. Хотя, в частности, этидва признака могут выполняться одновременно.

Page 27: Юзабилити. Кратко о фактах

Оконный интерфейс 25

Пример работы сетевой оконной системы —приложения X Window System в среде

Microsoft Windows

Некоторые оконные системы, например X Window System,обладают также сетевой структурой, позволяющей пользователюработать с графическими программами на удалённыхузлах-клиентах.

Список оконных систем

• 8½ и rio для Plan 9• GEM• Fresco/Berlin• NEXTSTEP• AmigaOS#Workbench в AmigaOS• Quartz для Mac OS X• X Window System• Y Window System• Microsoft Windows• Mac OS• Palm OS

Сноски[1] Список файловых менеджеров

Интерфейс командной строки

Внешний вид оболочки bash

Интерфейс командной строки (англ. Command line interface,CLI) — разновидность текстового интерфейса (CUI) междучеловеком и компьютером, в котором инструкции компьютерудаются в основном путём ввода с клавиатуры текстовых строк(команд), в UNIX-системах возможно применение мыши.[1] Такжеизвестен под названием консоль.

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

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

Назначение

На устройстве-консоли, которое печатало текст на бумаге,интерфейс командной строки был единственным возможным. Навидеотерминалах интерфейс командной строки применяется по таким причинам:

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

крайне редко. Поэтому даже в некоторых программах с графическим интерфейсом применяется командная

Page 28: Юзабилити. Кратко о фактах

Интерфейс командной строки 26

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

• Естественное расширение интерфейса командной строки — пакетный интерфейс. Его суть в том, что вфайл обычного текстового формата записывается последовательность команд, после чего этот файл можновыполнить в программе, что возымеет такой же (не меньший) эффект, как если бы эти команды были поочереди введены в командную строку. Примеры — .bat-файлы в DOS и Windows, shell-скрипты вUnix-системах.

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

Формат командыНаиболее общий формат команд (в квадратные скобки помещены необязательные части):

[символ_начала_команды]имя_команды [параметр_1 [параметр_2 […]]]Символ начала команды может быть самым разным, однако чаще всего для этой цели используется косаячерта (/). Если строка вводится без этого символа, выполняется некоторая базовая команда: например, строка«Привет» в IRC эквивалентна вводу «/msg Привет». Если же такой базовой команды нет, символ началакоманды отсутствует вообще (как, например, в DOS).Параметры команд могут иметь самый разный формат. В основном применяются следующие правила:• параметры разделяются пробелами (и отделяются от названия команды пробелом)• параметры, содержащие пробелы, обрамляются кавычками-апострофами (') или двойными кавычками (")• если параметр используется для обозначения включения какой-либо опции, выключенной по умолчанию,

он начинается с косой черты (/) или дефиса (-)• если параметр используется для включения/выключения какой-либо опции, он начинается (или

заканчивается) знаком плюс или минус (для включения и выключения соответственно)• если параметр указывает действие из группы действий, назначенных команде, он не начинается со

специальных символов• если параметр указывает объект, к которому применяется действие команды, он не начинается со

специальных символов• если параметр указывает дополнительный параметр какой-либо опции, то он имеет формат

/опция:дополнительный_параметр (вместо косой черты также может употребляться дефис)Например, в некоей абстрактной игре может быть такая команда:

/map dm1 /skill:2• / — символ начала команды• map — название команды (переход на другой уровень)• dm1 — обязательный параметр (название уровня)• /skill:2 — дополнительный параметр (задание уровня сложности)

Page 29: Юзабилити. Кратко о фактах

Интерфейс командной строки 27

ПрименениеОсновные сферы применения интерфейса командной строки:• операционные системы• чаты• компьютерные игры

В операционных системахОсновное применение интерфейса командной строки — интерфейс операционной системы. В Windows языккомандной строки не имеет чёткой стандартизации, однако существует стандарт командной строки POSIX иего модификация в рамках GNU (см.: командная оболочка UNIX).

В компьютерных играхИзначально консоль в играх использовалась для отладки.

Tremulous: Игрок готовится сменить команду

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

Во многих графических играх присутствует консоль для облегчения доступа к настройкам игры, поскольку всложных играх реализовать все команды через систему меню неудобно. Первая такая игра — Quake.Стандартная кнопка для вызова консоли —   ~  (тильда); реже   ↵ Enter '. Консоль позволяет вноситьизменения в настройки игры оперативнее, чем меню — например, набрать name Terminator быстрее, чем найтито меню, в котором вводится имя игрока, и ввести Terminator.

Также консоль предоставляет возможность изменять настройки назначения горячих клавиш, что можетиспользоваться для обмана соперника в многопользовательских играх, например предложением ввестикоманду unbindall, отменяющую все горячие клавиши, в том числе и отвечающие за движение игрока.Интерфейс, который предоставляется моддерам, не всегда позволяет менять меню; но он всегда позволяетдобавлять свои консольные команды. Например, в DotA (карте для игры Warcraft III) режим игры задаётучастник, играющий синими, через консоль.

Page 30: Юзабилити. Кратко о фактах

Интерфейс командной строки 28

В других программах• САПР

• AutoCAD• текстовые редакторы

• Vim• Браузеры

• Vimperator — расширение для браузера Firefox, позволяющее управлять им, как редактором Vim• различные клиенты IRC

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

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

• Shell script в UNIX-подобных системах является полноценным интерпретируемым языкомпрограммирования и способен автоматизировать любую системную задачу. В Windows присутствует ихпримитивный аналог — пакетные файлы, по сути это, простейшая программируемость.

• Можно управлять программами, не имеющими графического интерфейса (например, выделеннымсервером).

• Просмотрев содержимое консоли, можно повторно увидеть промелькнувшее сообщение, которое вы неуспели прочитать.

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

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

Недостатки• Интерфейс командной строки не является дружественным для пользователей, которые начали знакомство с

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

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

выставить подходящую громкость быстрее, чем командой вроде aumix -v 90. (Однако, озвученный ползуноквполне может быть псевдографическим, что и выполнено в большинстве консольных плееров, или,например, в том же aumix запущенном без параметров).

Page 31: Юзабилити. Кратко о фактах

Интерфейс командной строки 29

См. также• bash• CMD

Сноски[1] Howto: FreeBSD configure or use mouse to copy and paste at a terminal (http:/ / www. cyberciti. biz/ faq/

howto-freebsd-use-mouse-to-copy-and-paste-at-a-terminal/ )

WIMP (графический интерфейс)В человеко-компьютерном взаимодействии, WIMP расшифровывается как "window, icon, menu, pointingdevice" (окно, значок, меню, манипулятор) и означает взаимодействие с компьютером на базе этих элементов.Оно было придумано Мерзугой Уильбертсом в 1980 году.[1] Хотя его популярность постепенно падает, этослово часто используется в качестве приближённого синонима «графического интерфейса пользователя»(GUI). WIMP был разработан в корпорации Xerox PARC и «популяризирован компьютером Macintosh в 1984году», в котором были добавлены понятие «строка меню» и концепция расширенного управления окном.[2]

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

Page 32: Юзабилити. Кратко о фактах

WIMP (графический интерфейс) 30

Альтернативные расшифровкиВ разных источниках акроним WIMP расшифровывается по-разному. Слова берутся то в единственном, то вомножественном числе. Особенно много расхождений при расшифровке буквы «Р». Ниже приведены всеизвестные на данный момент разночтения.• W: Window(s)• I: Icon(s)• M: Menu(s); Mouse/Mice (реже) (заметим, что «mice» — это подмножество манипуляторов)• P: Pointing device(s); Pointing; Pointer(s) (заметим, что «pointer» часто используется как синоним курсора);

Pull-down menu(s)

КритикаПользовательский интерфейс на основе стиля WIMP очень хорошо абстрагируется от рабочего места,документов и манипуляций с ними. Такая парадигма, в которой документы представляют собой стопки бумагили папки, делает интерфейс WIMP легко усваемым для начинающих пользователей. К тому же егопредставление в виде прямоугольной области на плоском экране делает такой интерфейс удобным длясистемных программистов. Универсальность делает его очень подходящим для работы в многозадачныхсредах.Это объясняет, почему эта парадигма получила широкое распространение и превалировала на протяженииболее 20 лет, давая стимул к развитию виджетов, которые поддерживали этот стиль. Хотя некоторыеисследователи человеко-компьютерного взаимодействия считают это признаком застоя в дизайнепользовательского интерфейса, отсутствия инноваций в поиске новых моделей взаимодействия.Критики утверждают, что для некоторых приложений WIMP не подходит, а отсутствие техническойподдержки создаёт трудности для развития новых интерфейсов. Сюда относятся приложения, обеспечивающиеобработку непрерывных входных сигналов, а также отображающие 3D-модели или просто отображающиевзаимодействия, для которых нет стандартных виджетов. Андрис ван Дам называет такие интерфейсы«после-WIMP интерфейсами».

См. также• Графический интерфейс пользователя• Рабочий стол

Литература• Основные понятия WIMP [3]

• Mark Green, Robert Jacob, SIGGRAPH: '90 Workshop report: software architectures and metaphors fornon-WIMP user interfaces. In: ACM SIGGRAPH Computer Graphics, 25(3) (July 1991), pp. 229—235, http:/ /doi. acm. org/ 10. 1145/ 126640. 126677

• Ashley George Taylor: WIMP Interfaces (winter 1997) http:/ / www-static. cc. gatech. edu/ classes/cs6751_97_winter/ Topics/ dialog-wimp/

Page 33: Юзабилити. Кратко о фактах

WIMP (графический интерфейс) 31

Сноски[1] Charlotte Booth Alan Kay and the Graphical User Interface (http:/ / www. lottiebooth. com/ pdf/ essay. pdf).[2] Andries van Dam: Post-WIMP User Interfaces. In: Communications of the ACM, 40(2) (February 1997), pp. 63-67. http:/ / doi. acm. org/ 10.

1145/ 253671. 253708 [Citeseer http:/ / citeseer. ist. psu. edu/ cache/ papers/ cs/ 11222/ http:zSzzSzcs. ru. ac.zazSzhomeszSzg97rc001zSzpaperszSzp63-van_dam. pdf/ dam97postwimp. pdf]

[3] http:/ / www. citforum. ru/ operating_systems/ ois/ b021. shtml

Масштабируемый интерфейс пользователя

Файловый менеджер среды Eagle Mode.

ZUI (англ. Zooming User Interface или Zoomable User Interface —масштабируемый интерфейс пользователя) — графическийинтерфейс пользователя, где рабочее пространство представляетсобой большую или неограниченную плоскость, на которойрасположены основные элементы, свойства и содержимое которыхстановятся доступны по мере их «приближения» путём увеличения.Дальнейшее приближение содержимого делает доступным болееглубокие уровни.

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

См. также• Интерфейс• Графический интерфейс пользователя• Оконный интерфейс• Юзабилити

Ссылки• Eagle Mode — свободная ZUI‐среда с несколькими приложениями [1](англ.)

Сноски[1] http:/ / eaglemode. sourceforge. net/

Page 34: Юзабилити. Кратко о фактах

Материальный интерфейс пользователя 32

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

«reacTable»

Материа́льный интерфе́йспо́льзователя (МИП) — эторазновидность интерфейсапользователя, в которомвзаимодействие с цифровойинформацией происходит спомощью материальнойконструкции.

Профессор Хироси Исии изМассачусетсского ТехнологическогоИнститута — один изпервопроходцев материальныхинтерфейсов пользователя и главагруппы разработчиков материальныхсистем. Его особое видениематериальных ИП, т. н. материальные биты — это попытка придать цифровой информации физическоеобличие, делая биты осязаемыми и потому доступными напрямую. При этом преследуется цель неразрывносвязать такие разные сущности, как миры битов и атомов.

Примером материального ИП можно назвать шаровой автоответчик Дюрелла Бишопа. Каждый шариксоответствует сообщению, оставленному на автоответчике. Перемещение шарика в специальную выемкувоспроизводит связанное с ним сообщение или вызывает звонившего.Другой пример — система Топобо. Блоки её напоминают элементы конструктора LEGO, которые могутсоединяться вместе, но, в то же время, перемещаться самостоятельно за счёт моторчиков. Можно тянуть,толкать или поворачивать эти элементы; они запомнят эти действия и способны их воспроивести.Другая реализация позволяет пользователю материальным пером набросать рисунок на столе системы.Используя предварительно запрограммированные «жесты», можно клонировать картинку или растягивать подвум осям, как в программе рисования.

Ссылки• Tangible and Embedded Interaction Conference [1]

• MIT Media Lab Tangible Media Group [2]

• Hiroshi Ishii and Brygg Ullmer, Tangible Bits: Towards Seamless Interfaces between People, Bits and Atoms [3].Published in the Proceedings of Human Factors in Computing Systems: CHI 97 [4], Denver, CO.

• Tangint [5]: Wiki for drawing together content and discussion related to research on tangibleinterfaces/interaction.

• Papier-Mâché [6]: a toolkit for building tangible UIs• Percussa AudioCubes [7]: Tangible interface for exploring sound/music• reacTIVision [8]: a framework for creating tangible UIs• Topobo project [9]

• Interactive Paper [10]: Integrating paper and digital information

Page 35: Юзабилити. Кратко о фактах

Материальный интерфейс пользователя 33

Сноски[1] http:/ / www. tei-conf. org/[2] http:/ / tangible. media. mit. edu/[3] http:/ / sigchi. org/ chi97/ proceedings/ paper/ hi. htm[4] http:/ / sigchi. org/ chi97/[5] http:/ / tangint. org[6] http:/ / hci. stanford. edu/ research/ papier-mache/[7] http:/ / www. percussa. com/ cubes. html[8] http:/ / mtg. upf. es/ reactable?software[9] http:/ / web. media. mit. edu/ ~hayes/ topobo/[10] http:/ / www. globis. ethz. ch/ research/ paper/

Page 36: Юзабилити. Кратко о фактах

34

Приожения

Список языков описания пользовательскихинтерфейсовСписок языков описания пользовательских интерфейсов

По производителю или платформе

Flash• MXML• OpenLaszlo

Java• CookSwing [1]• SwiXML [2]• SwixNG [3]• Thinlet [4]• Ultrid• Vexi• XALXAL [5]• XSWT [6]• ZUML

Microsoft• XAML[7]

• MRML

Mozilla• XUL

W3C• XHTML• XFDL [8]• XForms

Page 37: Юзабилити. Кратко о фактах

Список языков описания пользовательских интерфейсов 35

Другие• Curl — также язык программирования• HTMLR• UIML• PSML• Gul [9]

• XWT [10]

• QuiX [11]

• XML Sapiens• Bindows [12]

• Boxely (Website) [13]

• VTML• XHPD [14]

• XAL [15]

• MyXaml [16]• XRC — используется в wxWidgets• libavg [17]

• GNUstep Renaissance

По свойствам и применению

UIMLUIML — пионер в языках разметки пользовательского интерфейса. Это открытый стандарт, реализациикоторого не ограничены единственным производителем. Однако, он не привлек большого внимания.

XULXUL — основной язык интерфейсов программ Mozilla Foundation. Документы XUL создаются движкомGecko, который также визуализирует документы XHTML и SVG. Он взаимодействует со многимисуществующими стандартами и технологиями, включая CSS, JavaScript, DTD и RDF, которые делают егоотносительно простым для изучения людьми с поверхностными знаниями веб-программирования и дизайна.

XALРасширяемый язык приложений (англ. eXtensible Application Language) — язык разметки из Nexaweb'sEnterprise Web 2.0 Suite. Разработчики могут использовать этот язык для описания приложений, которыебудут запускаться как клиент Java или AJAX.

SVGScalable Vector Graphics — язык разметки для графики, предложенный W3C, который может поддерживатьграфику с широкими возможностями для веб-приложений и мобильных приложений. Несмотря на то, чтоSVG не является языком описания пользовательского интерфейса, он включает поддержкувекторной/растровой графики, анимации, взаимодействия с DOM и CSS, встроенного media, событий искриптов. При комбинировании этих возможностей возможно создание интерфейсов пользователя сширокими возможностями.

Page 38: Юзабилити. Кратко о фактах

Список языков описания пользовательских интерфейсов 36

XAMLXAML — система разметки, которая лежит в основе компонентов пользовательского интерфейса Microsoft.NET framework 3.0 и выше. Его область применения более амбициозная, чем у большинства языков разметкипользовательского интерфейса, так как в XAML документ также включены программная логика и стили.Функционально, его можно рассматривать как комбинацию XUL, SVG, CSS и JavaScript в одной схеме XML.

I3MLI3ML — собственнический механизм доставки приложений с тонким клиентом, разработанный CoKineticSystems Corp [18], с поддержкой клиента, обеспечиваемой плагином браузера, который отображаетWindows-подобные приложения через инфраструктуру HTTP с минимальной необходимой полосойпропускания.

OpenLaszlo (LZX)OpenLaszlo — платформа для разработки и доставки RIA приложений, включающая среду исполнения и языкописания интерфейса (Laszlo XML — LZX). LZX — декларативный язык описания пользовательскогоинтерфейса, определяющий виджеты, компоновку приложений и скриптовые элементы (используя JavaScript)для создания приложений.

HMVCULHierarchical Model View Controller User Interface Language (HMVCUL) — язык описания пользовательскогоинтерфейса, основанный на XML, который поддерживает создание и связывание элементарных компонентовMVC триады, используемых в создании HMVC GUI приложений. Связанная среда исполнения предоставляетметоды, которые делают возможной настройку свойств, привязки данных и событий каждого из элементовMVC триады (модель, виджет, контроллер). Среда исполнения достигает этого отображением XML элементов,определенных в HMVCUL файле, в объекты внутри фреймворка, а атрибутов — в свойства или события.Связывание достигается отслеживанием древовидной структуры, описанной в HMVCUL файле.

WasabiXMLWasabiXML — язык разметки, основанный на XML, используемый для определения графическогоинтерфейса в приложениях Wasabi. Это очень часто используется в Winamp для создания скинов (skins).WasabiXML разработан Nullsoft для Winamp, но также может быть использован и с другими приложениями сWasabi SDK.Корневой элемент в WasabiXML <WasabiXML> (для скинов Winamp, это также <WinampAbstractionLayer>).Элемент <skininfo> показывает информацию о скине. Графический интерфейс содержится в элементе<container> и базовый видимый элемент GUI — <layout>. Пример простого GUI с элементом кнопка (button):

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<WinampAbstractionLayer version="1.2">

<skininfo>

<version>1</version>

<name>mySkin</name>

<comment>Ooo Lala</comment>

<author>Some Person</author>

<email>[email protected]</email>

<homepage>http://www.example.org</homepage>

</skininfo>

Page 39: Юзабилити. Кратко о фактах

Список языков описания пользовательских интерфейсов 37

<include file="xml/color-sys.xml"/> <!-- Include a file -->

<container id="normal">

<layout id="normal" desktopalpha="true">

<button

x="0" y="0"

id="button.normal"

image="mybutton.image"

hoverimage="mybutton.himage"

downimage="mybutton.dimage"

/>

</layout>

</container>

</WinampAbstractionLayer>

WasabiXML поддерживает многие элементы GUI, включая:• <button>• <text>• <vis>• <eqvis>• <layer>• <animatedlayer>• <groupdef> используемый в соединении с <group>WasabiXML имеет пространство имен XML 'Wasabi::', которое определяет основные GUI без необходимостиописывать пути их изображений.

ДругиеДругие языки разметки, встроенные в существующие фреймворки:• GladeXML — язык разметки для создания графических интерфейсов на основе GTK+• VTML для Macromedia HomeSiteНекоторые из них скомпилированы в бинарные формы.В авионике стандарты ARINC 661 предписывают бинарный формат для описания пользовательскихинтерфейсов в стеклянных кабинах пилота (glass cockpits [19](англ.)).

Сноски[1] http:/ / cookxml. sourceforge. net/ cookswing/[2] http:/ / swixml. org[3] http:/ / swixng. sourceforge. net[4] http:/ / www. thinlet. com[5] http:/ / www. nexaweb. com[6] http:/ / xswt. sourceforge. net[7] (См. также HTA, подобная технология, ранее продвигаемая Microsoft для использования главным образом с Internet Explorer.)[8] http:/ / www. w3. org/ TR/ NOTE-XFDL[9] http:/ / gul. redsofa. net[10] http:/ / www. xwt. org[11] http:/ / www. innoscript. org[12] http:/ / www. bindows. net[13] http:/ / www. boxely. com[14] http:/ / frmb. org/ xhpd. html[15] http:/ / dev. nexaweb. com/ home/ us. dev/ index. html@cid=1784. html

Page 40: Юзабилити. Кратко о фактах

Список языков описания пользовательских интерфейсов 38

[16] http:/ / www. myxaml. com[17] http:/ / www. libavg. de[18] http:/ / www. cokinetic. com[19] http:/ / en. wikipedia. org/ wiki/ Glass_cockpit

Page 41: Юзабилити. Кратко о фактах

Источники и основные авторы 39

Источники и основные авторыЮзабилити  Источник: http://ru.wikipedia.org/w/index.php?oldid=22957743  Основные авторы: A.I., AVRS, Anreal, AntonR, Arvenelina, Badlittleduck, Boleslav1, Butko, Callidus,Careerlab, CodeMonk, Csman, Dims, Enedelko, Fess-dew, Jackie, Justeen, Krassotkin, Krotkov, Laim, Laurion, Lit-uriy, Maxim Razin, Maxrossomachin, Michaello, Mstislavl, Nzeemin, Ramir,Roxis, Sergey900, Terran, Vernikr, Voldie, Vort, Xchgall, Александр Сигачёв, Андрей Куликов, Егор Крутиков, 70 анонимных правок

Юзабилити- тестирование  Источник: http://ru.wikipedia.org/w/index.php?oldid=21576875  Основные авторы: A.I., AVRS, Alex.ryazantsev, AntonR, Deyteriy, Dmitry.satin, Fyz,Krotkov, Ksenia Sternina, Nzeemin, OctaneX, Stolyrov, Voldie, Wormer, 26 анонимных правок

Эргономика  Источник: http://ru.wikipedia.org/w/index.php?oldid=22873187  Основные авторы: AVB, AVRS, AbscentoILS, Ace, Alex Smotrov, Alex.ryazantsev, Animist, Balamutick,Bubuka, CodeMonk, Denis tarasov, Klink, Laurion, LocalMost, NovoKirik, Nzeemin, Ricercare, Slipstream, Startreker, Tasc, Vonder, Вячеслав, Кондратьев, Трурль, №231-567, 34 анонимныхправок

Человеко- компьютерное взаимодействие  Источник: http://ru.wikipedia.org/w/index.php?oldid=21919457  Основные авторы: AKA MBG, AVRS, Anreal, BiOBER, Neon, Nzeemin,Softy, Алеко, Голем, Островский Алексей Мичеславович, 2 анонимных правок

Проектирование взаимодействия  Источник: http://ru.wikipedia.org/w/index.php?oldid=19374977  Основные авторы: Nzeemin, Sky2, Structor, РобоСтася, 2 анонимных правок

Интерфейс  Источник: http://ru.wikipedia.org/w/index.php?oldid=22468457  Основные авторы: AVB, Albedo, Berserker333, Berserkerus, CodeMonk, Danilo, Exceeder, Fleminra, Fractaler,Infovarius, Kink, Kolan, Mashiah Davidson, Maximaximax, Monedula, Neon, Ramir, Redmond Barry, Roxis, Sheens, Terabucks, Tpyvvikky, Uieoa, Vald, Vaya, Алеко, Александр Крайнов,Влад дэ Юрьев, Вікі-Майстар, Дед Крапива, Дмитрий Мещеряков, Никитин Сергей Александрович, 18 анонимных правок

Элемент интерфейса  Источник: http://ru.wikipedia.org/w/index.php?oldid=22618848  Основные авторы: 1GOGA, A.I., AGGreSSor, AVB, Abbat, Aiseo, Altren, Antojkee, ArtemSokolov, Axet, Azakhark, Baltun, CommonsDelinker, Easy john, Fairax, GrinD, Incnis Mrsi, Iskander s, Iws, Lit-uriy, ManN, Maxim Razin, Nashev, Nealt, Nikiforov, Nkurilov, Noumen,Nzeemin, Panther, Paul Pogonyshev, Pavel.nps, Privetnoe, Radistao, Redmond Barry, SiPlus, Te Anton, Tetromino, UR3IRS, Vasiliy Faronov, Vort, Zimak, Александр Сигачёв, 35 анонимныхправок

Интерфейс пользователя  Источник: http://ru.wikipedia.org/w/index.php?oldid=22167165  Основные авторы: A5b, AVRS, Abc82, Badlittleduck, Berserkerus, Butko, Danvolodar, DarkMagus, DmitTrix, Helios, Homunculu, Insider, JetSoft, Kneiphof, Mashiah Davidson, Meany, Nikiforov, Nzeemin, Ramir, Roxis, Softy, Tpyvvikky, Vasiliev Mihail, Vectart, Vort, АлександрСигачёв, Алексей Скрипник, Андрей Куликов, Дед Крапива, Лев Дубовой, Манахов Павел, 22 анонимных правок

Графический интерфейс пользователя  Источник: http://ru.wikipedia.org/w/index.php?oldid=22832532  Основные авторы: A5b, AVB, AVRS, Ajita, Al Silonov, Alex.ryazantsev,Cantor, Cheops, CommonsDelinker, Diablerie, Dimastij, DmitrySokoloff, Evgen2, George Shuklin, Grey horse, Helios, I1481, Kalan, Knyf, Maaaks, Maxim Razin, Mitmap, Nashev, Nzeemin,OckhamTheFox, Palica, Pharsyde, Ramir, Roxis, Softwayer, TarzanASG, Toyota Dream House, Tpyvvikky, Vanuan, Vlad2000Plus, Wind, Winterheart, XJamRastafire, Xium, Yoprst2003,Zanooda, Александр Сигачёв, Манахов Павел, Морган, Роман Коротенко, Степан Семенуха, 34 анонимных правок

Web- ориентированный интерфейс  Источник: http://ru.wikipedia.org/w/index.php?oldid=7671015  Основные авторы: A.I., AVRS, Aegicen, AntonR, Azakhark, Callidus, Cheops,Deineka, Fractaler, Imrek, Incnis Mrsi, Kevin.mcalister, Knkd, Krassotkin, Loveless, Mashiah Davidson, Ormed, Potekhin, Riman, Roxis, SergPodtynnyi, Sergrpd, Vasiliy Faronov, Voidus,Xchgall, Жуйков Андрей, Зеленый чай, 25 анонимных правок

Текстовый интерфейс пользователя  Источник: http://ru.wikipedia.org/w/index.php?oldid=22958358  Основные авторы: -), AVB, AVRS, Abc82, Atr2006, Cantor, Eugrus, Funalien,Homunculu, Incnis Mrsi, Nzeemin, Passenger, Peni, Redmond Barry, Roman Lagunov, Rusikk, SergV, SergeyPosokhov, Sk, Softy, Tpyvvikky, Vort, Калий, 9 анонимных правок

Оконный интерфейс  Источник: http://ru.wikipedia.org/w/index.php?oldid=22811054  Основные авторы: Berserkerus, Cooookie, Grain, Incnis Mrsi, Iskander s, Nashev,SuspectedSockPuppet, Vasiliy Faronov, Алеко, Степан Семенуха, 10 анонимных правок

Интерфейс командной строки  Источник: http://ru.wikipedia.org/w/index.php?oldid=23150198  Основные авторы: AVB, Atr2006, Bashirov Aziz, Bes island, George Shuklin, Incnis Mrsi,Jazz, Knyf, Kostius, MarSoft, Maximaximax, Mercury, Peni, Ramir, Sorib, Squork, Toto, Xchgall, СырР, Четыре тильды, 49 анонимных правок

WIMP (графический интерфейс)  Источник: http://ru.wikipedia.org/w/index.php?oldid=22953161  Основные авторы: Infovarius, Лев Дубовой, 2 анонимных правок

Масштабируемый интерфейс пользователя  Источник: http://ru.wikipedia.org/w/index.php?oldid=18209261  Основные авторы: AVRS, Algen, Tpyvvikky

Материальный интерфейс пользователя  Источник: http://ru.wikipedia.org/w/index.php?oldid=15506133  Основные авторы: AVB, Loveless, SergeyNich, TarzanASG, 1 анонимныхправок

Список языков описания пользовательских интерфейсов  Источник: http://ru.wikipedia.org/w/index.php?oldid=22274626  Основные авторы: AndyVolykhov, FcxSanya, Maestro,Obersachse, Xmodemaster, 4 анонимных правок

Page 42: Юзабилити. Кратко о фактах

Источники, Лицензии и Владельцы(?) изображения. 40

Источники, Лицензии и Владельцы(?)изображения.Файл:Qt-designer-v4.2.1.png  Источник: http://ru.wikipedia.org/w/index.php?title=Файл:Qt-designer-v4.2.1.png  Лицензия: неизвестно  Основные авторы: User:liquidatФайл:Bash screenshot.png  Источник: http://ru.wikipedia.org/w/index.php?title=Файл:Bash_screenshot.png  Лицензия: неизвестно  Основные авторы: Akinom, Andrew pmk, Berland,Emx, Insuranze, Kahlil88, Leileilol, MarSoft, Pixel ;-), Shooke, 4 анонимных правокФайл:Fdedit.png  Источник: http://ru.wikipedia.org/w/index.php?title=Файл:Fdedit.png  Лицензия: GNU General Public License  Основные авторы: Original uploader was NTOSKRNLVXE at en.wikipedia Later versions were uploaded by Intgr at en.wikipedia.Файл:Far dialog window.png  Источник: http://ru.wikipedia.org/w/index.php?title=Файл:Far_dialog_window.png  Лицензия: неизвестно  Основные авторы: GrainИзображение:X11 в Windows XP.jpg  Источник: http://ru.wikipedia.org/w/index.php?title=Файл:X11_в_Windows_XP.jpg  Лицензия: неизвестно  Основные авторы: Участник:QvvxФайл:Tremulous console.png  Источник: http://ru.wikipedia.org/w/index.php?title=Файл:Tremulous_console.png  Лицензия: GNU General Public License  Основные авторы: User:JazzFile:wimp.jpg  Источник: http://ru.wikipedia.org/w/index.php?title=Файл:Wimp.jpg  Лицензия: Creative Commons Attribution-Sharealike 3.0  Основные авторы: User:Ancientyne,User:DarkoneImage:Eagle Mode 0.71.0 Linux source zoom 1.png  Источник: http://ru.wikipedia.org/w/index.php?title=Файл:Eagle_Mode_0.71.0_Linux_source_zoom_1.png  Лицензия: GNU GeneralPublic License  Основные авторы: AVRS, ShookeФайл:Reactable Multitouch.jpg  Источник: http://ru.wikipedia.org/w/index.php?title=Файл:Reactable_Multitouch.jpg  Лицензия: Creative Commons Attribution-Sharealike 2.0  Основныеавторы: Daniel Williams from NYC, USA

Page 43: Юзабилити. Кратко о фактах

Лицензия 41

ЛицензияCreative Commons Attribution-Share Alike 3.0 Unportedhttp:/ / creativecommons. org/ licenses/ by-sa/ 3. 0/