При формировании тезауруса применяются рассмотренные выше для текстов методы кластеризации. Для этого каждый термин tk представляется вектором Vk вида:
Vk = {(Di, fik)} или Vk = {(Di, wik)}.
Тогда для терминов tk и tr коэффициент подобия S(tk, tr) рассчитывается по формуле:

где pir – параметр (частота или вес), характеризующий термин tr в тексте Di,
n – число текстов в наборе.
4.5.2. Ассоциативное индексирование терминов
Для каждого термина tk находятся дополнительные термины, которые ассоциируются с исходным, - Assk. Тогда вектор запроса, аналогично предыдущему методу, пополняется дополнительными терминами. Это, очевидно, расширяет число релевантных запросу текстов. Связь термина tk с множеством Assk может быть также представлена дополнительной графой справочника.
Для выявления ассоциируемых терминов строится матрица ассоциируемости, задающая для каждой пары терминов (tk, tr) показатель ассоциируемости a(k, r):

где fik, fir – частоты терминов tk, tr в тексте Di.
Этот показатель принимает значения от 1 до 0: если он равен 1, то термины полностью ассоциируются, если равен 0, то никакой ассоциации между ними не существует. На практике для определения ассоциируемости вводится некоторое пороговое значение показателя â. Тогда термины ассоциируются, если для них показатель ассоциируемости превышает это пороговое значение.
4.5.3. Вероятностное индексирование терминов
Этот метод применяется при кластерной организации файлов, причем кластеры не должны пересекаться.
Суть метода состоит в том, что наличие в векторе запроса некоторых терминов используется как основа для утверждения, что данный запрос с вероятностью p относится к кластеру Сl с профилем Пl. Если вероятность превышает некоторое пороговое значение, термины из профиля (или их веса) приписываются к вектору запроса.
Вероятность p рассчитывается следующим образом:
p(t1, t3,..., tT’, Cl) = в*p(Cl)*p(Cl, t1)*p(Cl, t3)*...*p(Cl, tT’),
где р(Cl) - вероятность кластера Cl:
,
|DiCl| - число текстов в кластере Cl,
n - число текстов во всех кластерах,
р(Cl, tk) - вероятность того, что каждый текст из кластера Cl содержит термин tk:
p(Cl, tk) =
FClk – общее число терминов tk в текстах кластера Cl,
FCl – общее число терминов в текстах кластера Cl,
Т’ - число терминов с ненулевым весом в векторе запроса,
в – константа, значение которой выбирается таким образом, чтобы выполнялось условие:
,
где С – общее число кластеров.
Глава 5. Организация интерфейса пользователя в информационных системах
Схема информационной системы включает интерфейс пользователя (конечного или профессионала), который носит диалоговый характер. От организации интерфейса во многом зависит комфортность работы пользователя и функциональная полнота решаемых задач.
5.1. Типы диалогов
К настоящему моменту сложились следующие типы диалогов: вопрос-ответ; меню; экранная форма; командный язык; прямое манипулирование.
Диалог типа «вопрос-ответ», или регламентированный диалог, является первым в истории взаимодействия пользователя и ЭВМ. Почти сразу после появления первых вычислительных машин в середине 20-го века возникло желание организовать общение с ними на привычном для человека естественном языке[10]. Это позволило бы исключить специальную подготовку пользователя. Однако, в силу сложности данной задачи, она не решена практически до настоящего времени, хотя надежда разработать подобный интерфейс не оставляет исследователей. При этом виде диалога запросы пользователя и формируемые ответы системы имеют наперед заданную структуру и кодируются с использованием лингвистического обеспечения ИТ (ИС). В зависимости от ситуации инициатива ведения диалога может принадлежать компьютеру или пользователю.
Некое подобие данного вида диалога реализовано в условиях ограничений на язык или предметную область. При ограничениях на предметную область создаются 2 словаря:
· функциональный. Содержит функциональные слова, которые означают по смыслу характер требуемой задачи: например, вопросительные слова что, сколько, какие, когда, а также императивы найти, определить и т. д. Состав этих слов соответствует функциональным возможностям системы. Данные слова являются ключевыми, и их смысл не может меняться. Они, как правило, связаны с соответствующей процедурой или с другими такими же словами;
· специфический. Содержит внешние имена полей БД, т. е. профессиональную лексику пользователей системы. Эти слова вводятся при настройке системы и отражают предметную область (например, фамилия, номер зачетки и т. д. – для учебных заведений), а также жаргон (сленг) пользователя. Они также являются ключевыми в том смысле, что определяют последующую обработку запроса.
Например, БД имеет структуру, соответствующую таблице:
фамилия | дисциплина | оценка |
… | … | … |
… | … | … |
Словари функциональных и специфических слов имеют вид:
Функциональное слово | Интерпретация | Специфическое слово | Интерпретация | |
какие | найти и напечатать | студент | фамилия | |
найти | Search | пятерка | оценка=5 | |
напечатать | фамилия | поле БД | ||
оценка | поле БД | |||
информатика | дисциплина | |||
дисциплина | поле БД |
Тогда возможен запрос: Какие студенты сдали информатику на пятерку?
При обработке запроса в нем выделяются значимые для запроса – ключевые – слова. Сначала в запросе выделяется функциональное слово какие, которое, как видно из словаря функциональных слов, соответствует словам найти и напечатать (именно в такой последовательности). В свою очередь, каждое из этих слов связано с одной из процедур – Search и Print, соответственно. Таким образом, сформирована последовательность процедур для решения задачи. Ключевое слово какие определяет возможную структуру запроса в целом, что способствует дальнейшей его обработке.
Затем из запроса выделяются параметры, требуемые для работы процедур и определяющие нужные пользователю данные. По словарю специфических слов видно, что системе «известны» такие специфические слова из запроса, как студент, информатика, пятерка. Остальные слова отбрасываются как шумовые, не несущие смысловой нагрузки. Тогда исходный запрос преобразуется в некоторое условное промежуточное представление:
Search (фамилия | дисциплина=информатика &оценка=5)
Print (фамилия)
При ограничениях на язык также поддерживаются два аналогичных словаря, но к структуре запроса предъявляются жесткие требования:
1) запрос (задание) формируется в виде последовательности фраз естественного языка, описывающих операции, необходимые для его выполнения. Таким образом, пользователь должен представлять, какие действия следует реализовать компьютеру для выполнения его запроса;
2) предложение должно начинаться с функционального слова, определяющего нужное действие;
3) при формулировке условий поиска значения полей БД должны предваряться их именами.
Для решения той же задачи, что и в предыдущем случае, при тех же начальных условиях запрос будет выглядеть следующим образом:
Найти фамилии студентов, сдавших экзамены по дисциплине = информатика с оценкой = 5. Напечатать фамилии.
Диалог данного типа применяется, когда диапазон входных величин слишком велик для структуры типа меню или сложен для командного языка, а последующий вопрос зависит от ответа на текущий вопрос.
Диалог типа меню – это диалог, при котором среди набора опций, отображаемых на экране (меню), пользователи могут выбирать и выполнять действия, тем самым производя изменения в состоянии интерфейса. Достоинство меню в том, что пользователи не должны помнить название элемента или действия, которые они ходят выполнить – они должны только распознать его среди пунктов меню. Таким образом, меню может использовать даже неопытный пользователь.
Форматы меню хорошо известны читателю из интегрированных оболочек операционных систем типа Far, Norton Commander, прикладных программных продуктов и т. п. Особым формат меню - иконки в качестве изображений объектов, приложений или действий, которые являются одним из элементов графического интерфейса и рассматриваются далее.
Для удовлетворения требованиям эргономичности интерфейса меню должно иметь следующие характеристики:
1) содержать 5 – 6 пунктов (практически не выполняется в настоящее время);
2) большое число различных вариантов выбора (пунктов меню) следует сгруппировать в иерархию небольших меню (всплывающих или выпадающих);
3) структура меню должна соответствовать структуре решаемой задачи, организация меню должна отразить наиболее эффективную последовательность шагов, чтобы достичь поставленной задачи;
4) пункты меню должны быть краткими, грамматически правильными и соответствовать своему заголовку в меню;
5) выбор пунктов меню должен быть обеспечен несколькими способами – с помощью клавиатуры, с помощью мыши, а также через другие объекты пользовательского интерфейса. Необходимо использовать легко запоминаемые сочетания клавиш для более быстрого доступа к пунктам меню, поскольку это очень экономит время;
6) пункты меню должны быть упорядочены в соответствии с одним из принципов:
· в алфавитном порядке;
· по соглашению с пользователями;
· по частоте использования;
· в соответствии с порядком использования опций.
Диалог типа меню применяется в случаях, когда: диапазон возможных ответов достаточно мал, и все они могут быть явно отражены; пользователю необходимо видеть возможные варианты ответов; пользователь неопытен.
Командный язык удобен для организации диалога с операционной системой и пригоден для подготовленных пользователей. Имена команд должны нести смысловую нагрузку: они управляют данными, поскольку за ключевым словом в команде следуют параметры, состав и порядок которых определяется именем команды. Параметры могут быть позиционными, когда смысл параметра определяется его позицией в команде, и ключевыми, когда семантика операнда определяется предшествующим ему ключевым словом.
Пример – две команды копирования файлов операционной системы MS DOS (первая использует позиционные параметры, вторая – ключевые):
copy
copy source = destination =
Командный язык применяется, когда: число значений для ввода мало и их можно запомнить; ограниченного числа ответов достаточно, чтобы идентифицировать как требуемую задачу, так и необходимые данные; пользователь подготовлен; задачи не требуют много данных на входе.
Экранная форма предназначена для удобного и понятного ввода и просмотра данных, состояния, сообщений автоматизированной системы. В общем случае форма имеет информационную и управляющую часть: в первой вводятся данные, во второй – команды (ОК, Отмена, Сохранить и т. д.). Наглядными примерами экранных форм служат диалоговые окна операционной системы Windows.
Для эргономичности интерфейса экранная форма должна отвечать следующим требованиям:
1) если форма переносится из бумажной формы, по передвижение по смежным полям не должно вызывать затруднений у пользователя;
2) размещение информационных единиц на пространстве формы должно соответствовать логике ее будущего использования: это зависит от необходимой последовательности доступа к информационным единицам, частотой их использования, а также относительной важности элементов;
3) важно использовать незаполненное пространство, чтобы создать равновесие и симметрию среди информационных элементов формы, для фиксации внимания пользователя в нужном направлении;
4) логические группы элементов необходимо отделять пробелами, строками, цветовыми или другими визуальными средствами;
5) взаимозависимые или связанные элементы должны отображаться в одной форме;
6) для дизайна заголовков и полей:
§ для отдельных полей заголовок должен быть выровнен по левому краю; для полей списков заголовок должен быть выше и левее по отношению к основному полю, числовые поля выравниваются по правому полю;
§ длинные колоночные поля или длинные столбцы информационных единиц с одиночными полями необходимо объединять в группы по пять элементов, разделяемых пустой строкой – это помогает пользователю мысленно обрабатывать информацию по выделенным группам;
§ в формах с большим количеством информации необходимо использовать названия разделов, которые однозначно свидетельствуют о характере принадлежащей им информации;
§ необходимо четко разделять отображение заголовков и непосредственно полей ввода, поскольку такая путаница может вызвать дискомфорт у пользователя;
§ заголовки должны быть краткими, знакомыми и содержательными;
§ поля, необязательные для заполнения либо не имеющие особой важности, должны отличаться визуально (цветом или другими эффектами) от полей важных и обязательных для заполнения;
7) для форматов ввода данных:
§ необходимо обеспечить ввод значений по умолчанию во все поля, которые это допускают, если такая функция не будет раздражать пользователя; можно назначить клавиши или коды для ввода часто повторяющихся значений;
§ входные данные должны быть значимыми и общепринятыми; данные или коды на международном английском языке будут проще для узнавания и понимания, чем произвольные коды;
§ не рекомендуется объединять поля ввода чисел и символов, поскольку числовые и алфавитные клавиши находятся неудобно относительно друг друга на клавиатуре;
§ поля ввода должны быть короткими, насколько это возможно;
§ необходимо исключить частое переключение между верхним и нижним регистрами для ускорения ввода данных;
§ нельзя требовать от пользователя ввода незначимых цифр, например, вместо пользователь должен ввести только 10.
Экранная форма имеет следующие преимущества перед предыдущими форматами: работает быстрее; может работать с более широким диапазоном входных данных, чем меню; может быть использована пользователем любой квалификации. Она применяется, когда заранее может быть определена стандартная последовательность вводимых данных.
Графический интерфейс (прямое манипулирование) – самый молодой вид диалога. В этом случае пользователь управляет объектами на экране посредством устройства манипулирования типа мышь. Этими объектами могут быть:
· кнопки – используются, чтобы выбрать опцию или вызвать событие, например, запуск программы;
· переключатели – подобны кнопкам, в которых пользователь выбирает значение из фиксированного списка, причем пользователь может выбрать более одного значения;
· радиоклавиши – разновидность переключателей, среди которых можно выбрать только одно значение;
· слайдеры – полоса (линейка) прокрутки, позволяют скроллировать текст или изображение на экране;
· метки – не редактируемые поля, используемые только для отображения текста типа подсказок, команд пользователя и т. д.;
· текстовые блоки – позволяют пользователю вводить текстовые данные в поля;
· списки – специализированные средства управления, которые отображают раскрывающиеся списки значений (часто с присоединенными слайдерами) и позволяют пользователю выбирать значение из списка или вводить другое значение в присоединенное текстовое поле;
· иконки. Их можно классифицировать согласно тому, насколько точно они отображают несущую функцию:
Ø иконки подобия – похожи на объекты, которые они отображают (типа ножниц, чтобы отобразить операцию «Вырезать»);
Ø по образцу – представляют пример типа объекта (например, иконкой, показывающей линию, чтобы представить средство рисования);
Ø символические – используются, чтобы представить действие или состояние в символической форме (например, разорванная линия между компьютерами для того, чтобы показать разорванное сетевое соединение);
Ø произвольные – не несут никакой информации по поводу их представления, поэтому их назначение должно быть описано (например, обратная круговая стрелка, чтобы представить действие «отмена последней команды»).
5.2. Эргономичность интерфейса
Цель создания эргономичного интерфейса состоит в том, чтобы сделать работу за монитором конечного пользователя (прежде всего) максимально удобной и комфортной. Для этого вводят критерии эргономичного интерфейса, включающие: естественность (интуитивность), последовательность (непротиворечивость), выделение элементов для привлечения внимания пользователя, организация системы навигации, поддержка пользователя, гибкость.
Естественность диалога – это такое его свойство, при котором пользователю не приходится существенно изменять свои традиционные способы решения задачи. Включает следующие принципы:
1) интерфейс должен поддерживаться на родном языке пользователя (в случае применения текстовых подписей и полей), причем возможно употребление профессионального жаргона;
2) подписи, подсказки и другие текстовые надписи, которые появляются по ходу ведения диалога, не должны требовать дополнительных пояснений, им следует быть однозначными для интерпретации пользователем;
3) порядок ведения диалога должен соответствовать порядку, в котором обычно пользователь обрабатывает информацию в процессе решения задачи;
4) должна быть исключена предварительная обработка данных перед их вводом пользователем. Это обеспечивает быстрый диалог и уменьшение ошибок со стороны пользователя.
Последовательность ведения диалога гарантирует единство общих принципов работы с системой. Критерий включает:
1) последовательность в интерпретации команд: разные по смыслу команды должны иметь разное мнемоническое обозначение, а одинаковые команды – одинаковое обозначение;
2) последовательность в использовании форматов данных – аналогичные поля всегда должны представляться в одном формате;
3) последовательность в размещении информации на экране – в разных ситуациях на экране в привычных (одинаковых) местах должны появляться однотипные сообщения, чтобы пользователь знал, где найти или где ожидать вывода необходимой информации. При этом информация, на которую следует обратить внимание, должна всегда отображаться в видном месте, чтобы захватить внимание пользователя, например, предупреждающие сообщения и сообщения об ошибках. В то же время, информация, которая необходима не очень часто (например, справка) не должна отображаться, но должна быть доступна, когда потребуется.
Выделение элементов интерфейса используется для привлечения внимания пользователя. При этом следует помнить, что большое количество выделенных элементов может вызвать у пользователя дискомфорт.
Способы выделения элементов:
1) движение (мигание или изменение позиции). Очень эффективный метод, поскольку глаз имеет специальный детектор для движущихся элементов;
2) яркость. Не очень эффективный метод, поскольку люди могут обнаружить всего лишь несколько уровней яркости;
3) цвет. Очень эффективный метод. Основное его назначение – создание интерфейсов, более интересных для пользователя. Он используется для группировки информации, выделения различий между информацией, выделения простых сообщений (ошибки, состояния). Важно отметить, что 9% людей не различают цвета (обычно красно-зеленые сочетания). Однако эти люди могут отличать черно-белые оттенки, поэтому проектировщики интерфейса должны проверять, не нарушает ли восприятие пользователей этой категории использование различных цветов. Принципы использования цвета:
Ø необходимо ограничить число цветов на экране до 4 и до 7 – для последовательности экранов. При этом для неактивных экранов нужно использовать бледные цвета;
Ø если цвет используется для колировки информации, необходимо удостовериться, что пользователь правильно понимает код, например, просроченные счета выделяются красным цветом, а непросроченные - зеленым;
Ø необходимо использовать цвета согласно представлениям пользователя, например, для картографа зеленый – лес, желтый – пустыня, синий – вода. Для химика красный – горячий, синий – холодный;
Ø можно использовать цвет для отображения состояния: красный – опасность или стоп, зеленый – нормально или продолжение работы, желтый - предостережение;
Ø для привлечения внимания наиболее эффективны белый, желтый и красный цвета;
Ø для упорядочения данных можно использовать спектр семи цветов радуги;
Ø для разделения данных необходимо выбрать цвета из различных частей спектра (красный – зеленый, синий – желтый, любой цвет – белый);
Ø для группировки данных, объединения и подобия нужно использовать цвета, которые являются соседями в спектре (оранжевый – желтый, синий - фиолетовый).
4) форма (вид символа, шрифт, начертание, размер). Используется для того, чтобы отличить различные категории данных. Обычно применяют увеличение в 1,5 раза. Некоторые принципы, которыми надо руководствоваться при создании текстовых сообщений:
Ø текст в нижнем регистре читается на 13% быстрее, чем текст, который полностью напечатан в верхнем регистре;
Ø символы верхнего регистра наиболее эффективны для информации, которая должна привлечь внимание;
Ø выровненный по правому краю текст читать труднее, чем равномерно распределенный текст с не выровненным правым краем;
Ø оптимальный интервал между строками равен или немного больше, чем высота символов;
5) оттенение (различная текстура объектов);
6) окружение (подчеркивание, рамки, инвертированное изображение).
Система навигации обеспечивает пользователю способность перемещаться между различными экранами, информационными единицами и подпрограммами в ходе ведения диалога. Тип системы навигации существенно зависит от принятого вида интерфейса: для интерфейса языка команд очень мало способов обеспечения полноценной навигации; в интерфейсах с меню можно использовать иерархически структурированные меню, которые будут «направлять» пользователя. Общие принципы проектирования системы навигации включают: использование заголовков страниц для каждого экрана; использование номеров страниц, номеров строк и столбцов; отображение текущего имени файла вверху страницы.
Поддержка пользователя во время диалога - это мера помощи, которую диалог оказывает пользователю при его работе с системой. Включает:
1) инструкции пользователю - необходимы для направления пользователя в нужную сторону, подсказок и предупреждений для выполнения необходимых действий на пути решения задачи. Инструкции могут быть обеспечены в форме диалога, экранных заставок, справочной информации и т. п. Они могут предложить пользователю: выбрать из предложенных альтернатив некую опцию или набор опций; ввести некоторую информацию; выбрать опцию из набора опций, которые могут изменяться в зависимости от текущего контекста; подтвердить фрагмент введенной информации перед продолжением ввода. Инструкции могут быть помещены в модальные диалоговые окна, которые вынуждают пользователя ответить на вопрос прежде, чем может быть предпринято любое другое действие, потому что все другие средства управления заморожены. Это может быть полезно, когда система должна вынудить пользователя принять решение перед продолжением работы. Немодальные диалоговые окна позволяют работать с другими элементами интерфейса, в то время как само окно может игнорироваться;
2) подтверждение действий системы - используется, чтобы пользователь мог убедиться, что система выполняет, выполнила или будет выполнять требуемое действие (либо требуемые действия по каким-то причинам не выполнены). В полноценной системе пользователь также может всегда получить информацию о состоянии системы, процесса или активной подпрограмме;
3) сообщения об ошибках - должны объяснить, в чем ошибка, и указать, как ее исправить.
Ошибки могут быть классифицированы следующим образом:
1) ошибки, основанные на неправильном понимании действия или порядка действий;
2) ошибки, которые возникли случайно (непреднамеренно), например, опечатка при вводе текста. Это ошибки могут подразделяться на виды:
· ошибки неточности выбора опции, например, пользователь случайно нажал кнопку «Выход» и программа закрылась;
· ошибки управления данными (например, присвоение ошибочного имени файла из-за неточности отображения последнего);
· ошибки ассоциативного характера (например, сохранение файла с именем какого-либо человека, т. к. пользователь думал о нем в момент сохранения);
· ошибки потери активности, когда пользователь забывает необходимую последовательность действий для продолжения работы;
· ошибка режима или состояния, когда пользователь думает, что находится в одном состоянии, но фактически – в другом, например, режим вставки взамен режима печати поверх текста в текстовом процессоре.
Техника защиты от ошибок включает в себя аспекты:
1) принудительные действия в системе, которые предотвращают или затрудняют появление ошибок;
2) обеспечение хороших и информативных сообщений об ошибках;
3) использование обратимых действий, которые позволяют пользователям исправлять их собственные ошибки;
4) обеспечение нормальной диагностики системы, в процессе которой пользователю объясняется, в чем суть ошибки и пути ее исправления.
Обработка ошибок в формах ввода включает обеспечение следующих действий:
1) посимвольного редактирования введенных записей для исправления ошибок ввода (опечаток);
2) если ошибка обнаружена системой, желательно вернуть курсор в поле с ошибочными данными и каким-либо образом выделить это поле визуально;
3) обеспечить значимые сообщения об ошибках, использующие стиль языка пользователя и соответствующую терминологию;
4) обеспечить сообщения об ошибках, которые объясняют и предлагают пути устранения.
Гибкость диалога - это мера того, насколько хорошо диалог соответствует различным уровням подготовки и производительности труда пользователя. При этом диалог может подстраивать свою структуру или входные данные. Гибкость диалога проявляется в способности диалоговых систем адаптироваться либо с помощью пользователя, либо самостоятельно к любому возможному уровню подготовки оператора. Существует три уровня адаптации: фиксированная, полная, косметическая.
При фиксированной адаптации пользователь сам явно выбирает уровень диалоговой поддержки, оценивая свою компетентность как новичка или эксперта.
При полной адаптации диалоговая система строит модель пользователя, которая меняется по мере работы его с системой и определяет стиль диалога. При этом главная проблема – распознавание характеристик пользователя, что является очень трудной практической задачей.
Косметическая адаптация является промежуточной адаптацией: гибкость обеспечивается без учета поведения пользователя и без однозначного выбора им конкретного стиля диалога.
Это достигается применением специальных приемов:
· сокращений. Примером сокращений может быть использование шаблонов имен файлов в командном языке MS DOS. Так, для определения множества документов MS Word используется шаблон *.doc;
· частично совпадающих данных. Используются метрики, позволяющие определить «расстояние» между входными данными и каждым из возможных ответов. Выбираются те, которые ближе всего к входным данным. Пример такого алгоритма - поиск англоязычных имен по их произношению с использованием фонетической близости различных символов:
Ø удаляются все небуквенные символы, например _, &, !;
Ø сохраняется первая буква имени; удаляются буквы A, E, I, O, U, W, H, Y;
Ø оставшимся буквам присваиваются цифры по следующим правилам:
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 |


