Типы пользовательских интерфейсов и этапы их разработки, психофизические особенности человека, связанные с восприятием, запоминанием и обработкой информации.
Пользовательский интерфейс представляет собой совокупность программных и аппаратных средств, обеспечивающих взаимодействие пользователя с компьютером. Основу такого взаимодействия составляют диалоги. Под диалогом в данном случае понимают регламентированный обмен информацией между человеком и компьютером, осуществляемый в реальном масштабе времени и направленный на совместное решение конкретной задачи: обмен информацией и координация действий. Каждый диалог состоит из отдельных процессов ввода-вывода, которые физически обеспечивают связь пользователя и компьютера. Обмен информацией осуществляется передачей сообщений и управляющих сигналов.
Сообщение - порция информации, участвующая в диалоговом обмене. Различают:
• входные сообщения, которые генерируются человеком с помощью средств ввода: клавиатуры, манипуляторов, например мыши и т. п.;
• выходные сообщения, которые генерируются компьютером в виде текстов, звуковых сигналов и/или изображений и выводятся пользователю на экран монитора или другие устройства вывода информации.
Типы интерфейсов. По аналогии с процедурным и объектным подходом к программированию различают процедурно-ориентированный и объектно-ориентированный подходы к разработке интерфейсов:
Интерфейс:
1. Процедурно-ориентированные
а) Примитивные
б) Меню
в) Со свобоной навигацией
2.Объектно-ориентированные
а) Прямого манипулирования
Процедурно-ориентированные интерфейсы используют традиционную модель взаимодействия с пользователем, основанную на понятиях «процедура» и «операция». В рамках этой модели программное обеспечение предоставляет пользователю возможность выполнения некоторых действий, для которых пользователь определяет соответствующие данные и следствием выполнения которых является получение желаемых результатов.
Различают п р о ц е д у р н о – о р и е н т и р о в а н н ы е интерфейсы трех типов:
«примитивные», меню и со свободной навигацией.
Примитивным называют интерфейс, который организует взаимодействие с пользователем в консольном режиме. Обычно такой интерфейс реализует конкретный сценарий работы программного обеспечения, например: ввод данных - решение задачи - вывод результата. Единственное отклонение от последовательного процесса, которое обеспечивается данным интерфейсом, заключается в организации цикла для обработки нескольких наборов данных.
Интерфейс-меню в отличие от примитивного интерфейса позволяет пользователю выбирать необходимые операции из специального списка, выводимого ему программой. Эти интерфейсы предполагают реализацию множества сценариев работы, последовательность действий в которых определяется пользователем. Различают одноуровневые и иерархические меню. Интерфейсы данного типа несложно реализовать в рамках структурного подхода к программированию. Древовидная организация меню предполагает строго ограниченную навигацию: либо переходы «вверх» к корню дерева, либо - «вниз» по выбранной ветви. Интерфейсы-меню в настоящее время также используют редко и только для сравнительно простого программного обеспечения или в разработках, которые должны быть выполнены по структурной технологии и без использования специальных библиотек.Интерфейсы со свободной навигацией также называют графическими пользовательскими интерфейсами (GUI - Graphic User Interface) или интерфейсами WYSIWYG (What You See Is What You Get - что видишь, то и получишь, т. е., что пользователь видит на экране, то он и получит при печати). Эти названия подчеркивают, что интерфейсы данного типа ориентированы на использование экрана в графическом режиме с высокой разрешающей способностью. Графические интерфейсы поддерживают концепцию интерактивного взаимодействия с программным обеспечением, осуществляя визуальную обратную связь с пользователем и возможность прямого манипулирования объектами и информацией на экране. Кроме того, интерфейсы данного типа поддерживают концепцию совместимости программ, позволяя перемещать между ними информацию. В отличие от интерфейса-меню интерфейс со свободной навигацией обеспечивает возможность осуществления любых допустимых в конкретном состоянии операций, доступ к которым возможен через различные интерфейсные компоненты. Существенной особенностью интерфейсов данного типа является способность изменяться в процессе взаимодействия с пользователем, предлагая выбор только тех операций, которые имеют смысл в конкретной ситуации. Реализуют интерфейсы со свободной навигацией, используя событийное программирование и объектно-ориентированные библиотеки. Объектно-ориентированные интерфейсы пока представлены только интерфейсом прямого манипулирования. Этот тип интерфейса предполагает, что взаимодействие пользователя с программным обеспечением осуществляется посредством выбора и перемещения пиктограмм, соответствующих объектам предметной области. Для реализации таких интерфейсов также используют событийное программирование и объектно-ориентированные библиотеки.
Этапы разработки пользовательского интерфейса. Разработка пользовательского интерфейса включает те же основные этапы, что и разработка программного обеспечения:
• постановка задачи - определение типа интерфейса и общих требований к нему;
• анализ требований и определение спецификаций - определение сценариев использования и пользовательской модели интерфейса;
• проектирование — проектирование диалогов и их реализация в виде процессов ввода-вывода;
• реализация - программирование и тестирование интерфейсных процессов.
При проектировании пользовательских интерфейсов необходимо учитывать психофизические особенности человека, связанные с восприятием, запоминанием и обработкой информации.
Психофизические особенности человека, связанные с восприятием, запоминанием и обработкой информации
Исследованием принципов работы мозга человека занимается когнитивная психология.
Информация о внешнем мире поступает в наш мозг в огромных количествах. Часть мозга, которую условно можно назвать «процессором восприятия», постоянно без участия сознания перерабатывает ее, сравнивая с прошлым опытом, и помещает в хранилище уже в виде зрительных, звуковых и прочих образов. Любые внезапные или просто значимые для нас изменения в окружении привлекают наше внимание, и тогда интересующая нас информация поступает в кратковременную память. Если же наше внимание не было привлечено, то информация в хранилище пропадает, замещаясь следующими порциями. В каждый момент времени фокус внимания может фиксироваться в одной точке. Поэтому, если возникает необходимость «одновременно» отслеживать несколько ситуаций, то обычно фокус перемещается с одного отслеживаемого элемента на другой. При этом внимание «рассредоточивается», и какие-то детали могут быть упущены. Например, при «прокрутке» текста или рисунка с использованием линейки прокрутки окна Windows приходится одновременно смотреть на текст, чтобы определить, где остановиться, и на ползунок. Поскольку текст важнее, фокус внимания перестает перемещаться на мышь, и она «соскакивает» с ползунка линейки. Следует иметь в виду, что обработка процессором восприятия требует некоторого времени и, если сигнал выдается в течение времени, меньшем времени обработки, то наш мозг его не воспринимает. Существенно и то, что восприятие во многом основано на мотивации. Например, если человек голоден, то он в первую очередь будет замечать все съедобное, а если устал — то, войдя в комнату, он в первую очередь увидит диван или кровать. Необходимо также учитывать, что в процессе переработки информации мозг сравнивает поступающие данные с предыдущими. Так, если показать человеку последовательность символов: А, В, С, то он может принять 13 за В. При смене кадра мозг на некоторое время блокируется: он «осваивает» новую картинку,выделяя наиболее существенные детали. А значит, если необходима быстрая реакция пользователя, то резко менять картинку не стоит. Краткосрочная память - самое «узкое» место «системы обработки информации» человека. Ее емкость приблизительно равна 7 ± 2 несвязанных объектов. Краткосрочная память является своего рода оперативной памятью мозга, именно с ней работает процессор познания, но не востребованная информация хранится в ней не более 30 с. Чтобы не забыть какую-нибудь важную для нас информацию, мы обычно повторяем ее «про себя», «обновляя» информацию в краткосрочной памяти. Таким образом, при проектировании интерфейсов следует иметь в виду, что подавляющему большинству людей сложно, например, запомнить и ввести на другом экране число, содержащее более 5 цифр (7 - 2), или некоторое сочетание букв. Люди вносят в каждую деятельность свое понимание того, как она должна выполняться. Это понимание – модель деятельности - базируется на прошлом опыте человека. Множество таких моделей хранится в долговременной памяти человека. В долговременную память записываются постоянно повторяемые сведения или информация, связанная с сильными эмоциями. Долговременная память человека - хранилище информации с неограниченной емкостью и временем хранения. Однако доступ к этой информации весьма непрост: по всей вероятности, механизмы извлечения информации из памяти имеют ассоциативный характер. Специальная методика запоминания информации (мнемоника) использует именно это свойство памяти: для запоминания информации ее «привязывают» к тем данным, которые память уже хранит и позволяет легко получить. Поскольку доступ к долговременной памяти затруднен, целесообразно рассчитывать не на то, что пользователь вспомнит нужную информацию, а на то, что он ее узнает. Именно поэтому интерфейс типа меню так широко используется.
Особенности восприятия цвета. Цвет в сознании человека ассоциируется с эмоциональным фоном. Известно, что теплые цвета: красный, оранжевый, желтый человека возбуждают, а холодные: синий, фиолетовый, серый - успокаивают. Причем цвет для человека является очень сильным раздражителем, поэтому применять цвета в интерфейсе необходимо крайне осторожно.
Следует иметь в виду, что обилие оттенков привлекает внимание, но быстро утомляет. Поэтому не стоит ярко раскрашивать окна, с которыми пользователь будет долго работать. Необходимо учитывать и индивидуальные особенности восприятия цветов человеком, например, примерно каждый десятый человек плохо различает какие-либо цвета, поэтому в ответственных случаях необходимо предоставить пользователю возможность настройки цветов.
Особенности восприятия звука. В интерфейсах звук обычно используют с разными целями: для привлечения внимания, как фон, обеспечивающий некоторое состояние пользователя, как источник дополнительной информации и т. п. Применяя звук, следует учитывать, что большинство людей очень чувствительны к звуковым сигналам, особенно, если последние указывают на наличие ошибки. Поэтому при создании звукового сопровождения целесообразно предусматривать возможность его отключения.
Субъективное восприятие времена. Человеку свойственно субъективное восприятие времени. Считают, что внутреннее время связано со скоростью и количеством воспринимаемой и обрабатываемой информации. Занятый человек обычно времени не замечает. Зато в состоянии ожидания время тянется бесконечно, что связано с тем, что в это время мозг оказывается в состоянии информационного вакуума. (К аналогичному состоянию приводит и усталость: информация поступает, но больше обрабатывается, а потому и ход времени замедляется.) Доказано, что при ожидании более 1-2 с пользователь может отвлечься, «потерять мысль», что неблагоприятно сказывается на результатах работы и увеличивает усталость, так как каждый раз после ожидания много сил тратится на включение в работу. Сократить время ожидания можно, заняв пользователя, но не отвлекая его от работы. Например, можно предоставить ему какую-либо информацию для обдумывания. По возможности целесообразно выводить пользователю промежуточные результаты: во-первых, он будет занят их обдумыванием, во-вторых, по ним он сможет оценить будущие результаты и отменит операцию, если они его не удовлетворяют. Известны попытки использования для «развлечения» пользователя анимации, например, в Windows при копировании файлов демонстрируется «ролик» с летающими листочками. Однако следует иметь в виду, что, когда какую-либо анимацию смотришь первый раз, то это интересно, а когда в течение получаса наблюдаешь, как «летают» листочки при получении информации из Интернета, то это начинает раздражать. Чтобы уменьшить раздражение, возникающее при ожидании, необходимо соблюдать основное правило: информировать пользователя, что заказанные им операции потребуют некоторого времени выполнения. Обычно для этого используют индикаторы оставшегося времени, анимированные объекты, как в Интернете, и изменение формы курсора мыши на песочные часы. Очень важно точно обозначить момент, когда система готова продолжать работу. Обычно для этого используют значительные изменения внешнего вида экрана. В конечном итоге взаимодействие пользователя с интерфейсом будет определяться не только физическими возможностями и особенностями человека по восприятию, обработке и запоминанию информации, представленной в различных формах, а также по выполнению им разнообразных действий, но и пользовательской моделью интерфейса.
Пользовательская и программная модели интерфейса, процесс проектирования пользовательского интерфейса, критерии оценки интерфейса пользователем; классификация диалогов и общие принципы их разработки.
Существуют три совершенно различные модели пользовательского интерфейса: модель программиста, модель пользователя и программная модель. Программист, разрабатывая пользовательский интерфейс, исходит из того, управление какими операциями ему необходимо реализовать в пользовательском интерфейсе, и как это осуществить, не затрачивая ни существенных ресурсов компьютера, ни своих сил и времени. Его интересуют функциональность, эффективность, технологичность, внутренняя стройность и другие не связанные с удобством пользователя характеристики программного обеспечения. Именно поэтому большинство интерфейсов существующих программ вызывают серьезные нарекания пользователей. С точки зрения здравого смысла хорошим следует считать интерфейс, при работе с которым пользователь получает именно то, что он ожидал. Представление пользователя о функциях интерфейса можно описать в виде пользовательской модели интерфейса.
Пользовательская модель интерфейса - это совокупность обобщенных представлений конкретного пользователя или некоторой группы пользователей о процессах, происходящих во время работы программы или программной системы. Эта модель базируется на особенностях опыта конкретных пользователей, который характеризуется:
• уровнем подготовки в предметной области разрабатываемого программного обеспечения;
• интуитивными моделями выполнения операций в этой предметной области;
• уровнем подготовки в области владения компьютером;
• устоявшимися стереотипами работы с компьютером.
Для построения пользовательской модели необходимо изучить перечисленные выше особенности опыта предполагаемых пользователей программного обеспечения. С этой целью
используют опросы, тесты и даже фиксируют последовательность действий, осуществляемых в процессе выполнения некоторых операций, на пленку.
Приведение в соответствие моделей пользователя и программиста, а также построение на их
базе программной модели (рис) интерфейса задача не тривиальная. Причем, чем сложнее
автоматизируемая предметная область, тем сложнее оказывается построить программную модель интерфейса, учитывающую особенности пользовательской модели и не требующую слишком больших затрат как в процессе разработки, так и во время работы. С этой точки зрения объектные интерфейсы кажутся наиболее перспективными, так как в их основе лежит именно отображение объектов предметной области, которыми оперируют пользователи. Хотя на настоящий момент времени их реализация достаточно трудоемка.
При создании программной модели интерфейса также следует иметь в виду, что изменять
пользовательскую модель непросто. Повышение профессионального уровня пользователей и их подготовки в области владения компьютером в компетенцию разработчиков программного обеспечения не входит, хотя часто грамотно построенный интерфейс, который адекватно отображает сущность происходящих процессов, способствует росту квалификации пользователей.
Интуитивные модели выполнения операций в предметной области должны стать основой для
разработки интерфейса, а потому в большинстве случаев их необходимо не менять, а уточнять и совершенствовать. Именно нежелание или невозможность следования интуитивным моделям выполнения операций приводит к созданию искусственных надуманных интерфейсов, которые негативно воспринимаются пользователями.
Иногда кажется, что единственно доступный для изменения элемент - устоявшийся стереотип
работы с компьютером. Однако ломка стереотипов - процедура болезненная. На это стоит
решаться, если некоторое революционное изменение значительно расширяет возможности пользователя или облегчает его работу, например, переход к Windows-интерфейсам существенно упростил работу с компьютером огромному числу пользователей-непрофессионалов. Ломая же стереотипы по мелочам или неточно следуя принятой концепции, разработчик рискует оттолкнуть пользователей, которые просто не будут понимать, что происходит. В качестве примера можно вспомнить хотя бы путаницу с вызовом программ двойным щелчком правой клавиши мыши по пиктограмме рабочем столе или одинарным, если пиктограммы вынесена на панель Quick Launch (Быстрый Доступ) Windows.
РИСУНОК 105-1
Критерии оценки интерфейса пользователем. Многочисленные опросы и обследования,
проводимые ведущими фирмами по разработке программного обеспечения, показали, что
основными критериями оценки интерфейсов пользователем являются:
• простота освоения и запоминания операций системы - конкретно оценивают время освоения
и продолжительность сохранения информации в памяти;
• скорость достижения результатов при использовании системы - определяется количеством
вводимых или выбираемых мышью команд и настроек;
• субъективная удовлетворенность при эксплуатации системы (удобство работы, утомляемость и т. д.).
Причем для пользователей-профессионалов, постоянно работающих с одним и тем же
пакетом, на первое место достаточно быстро выходят второй и третий критерии, а для
пользователей-непрофессионалов, работающих с программным обеспечением периодически и выполняющих сравнительно несложные задачи - первый и третий.
Классификации диалогов и общие принципы их разработки
Диалог - это процесс обмена информацией между пользователем и программной системой, осуществляемый через интерактивный терминал и по определенным правилам.
Различают тип диалога и его форму.
Типы диалога. Тип диалога определяет, кто из «собеседников» управляет процессом обмена
информацией. Соответственно различают два типа диалога: управляемые программой и управляемые пользователем. Диалог, управляемый программой, предусматривает наличие жесткого, линейного или древовидного, т. е. включающего возможные альтернативные варианты, сценария диалога, заложенного в программное обеспечение. Такой диалог обычно сопровождают большим количеством подсказок, которые уточняют, какую информацию необходимо вводить на каждом шаге.
Диалог, управляемый пользователем, подразумевает, что сценарий диалога зависит от пользователя, который применяет систему для выполнения необходимых ему операций. При этом система обеспечивает возможность реализации различных пользовательских сценариев.
Формы диалога. Никакой диалог невозможен, если не существует языка, понятного
«собеседникам». Описание языка, на котором ведется диалог, включает определение его
синтаксиса - правил, определяющих допустимые конструкции (слова, предложения) языка или его форму, и семантики - правил, определяющих смысл синтаксически корректных конструкций языка или его содержание. В зависимости от вида используемых в конкретном случае синтаксиса и семантики различают три формы диалога:
• фразовую,
• директивную,
• табличную.
Фразовая форма предполагает «общение» с пользователем на естественном языке или его подмножестве. Содержание диалога в данной форме составляют повелительные, повествовательные и вопросительные предложения и ответы на вопросы. Общение может осуществляться в свободном формате, но возможна и фиксация отдельных фраз. Чаще всего используют диалоги, предполагающие односложные ответы, например:
Программа: Введите свой возраст (полных лет): Пользователь: 48.
В этом случае программа содержит ограниченное описание как синтаксиса, так и семантики
используемого ограниченно-естественного языка.
Основными недостатками фразовой формы при использовании подмножества естественного языка являются:
• большие затраты ресурсов;
• отсутствие гарантии однозначной интерпретации формулировок;
• необходимость ввода длинных грамматически правильных фраз.
Основное достоинство фразовой формы состоит в относительно свободном общении с
системой.
Директивная форма предполагает использование команд (директив) специально разработанного формального языка. Командой в этом случае называют предложение этого языка, описывающее комбинированные данные, которые включают идентификатор инициируемого процесса и, при необходимости, данные для него.
Команду можно вводить:
• в виде строки текста, специально разработанного формата, например, команды MS DOS,
которые вводятся в командной строке;
• нажатием некоторой комбинации клавиш клавиатуры, например, комбинации «быстрого
доступа» современных Windows-приложений;
• посредством манипулирования мышью, например, «перетаскиванием» пиктограмм;
• комбинацией второго и третьего способов.
Основными достоинствами директивной формы являются:
• сравнительно небольшой объем вводимой информации;
• гибкость - возможности выбора операции в данном случае ограничены только набором
допустимых команд;
• ориентация на диалог, управляемый пользователем;
• использование минимальной области экрана или неиспользование ее вообще;
• возможность совмещения с другими формами.
Недостатки директивной формы:
• практическое отсутствие подсказок на экране, что требует запоминания вводимых команд и
их синтаксиса;
• почти полное отсутствие обратной связи о состоянии инициированных процессов;
• необходимость навыков ввода текстовой информации или манипуляций мышью;
• отсутствие возможности настройки пользователем.
Табличная форма предполагает, что пользователь выбирает ответ из предложенных программой. Язык диалога для табличной формы имеет простейший синтаксис и однозначную семантику, что достаточно легко реализовать. Удобна эта форма и для пользователя, так как выбрать всегда проще, чем вспомнить, что особенно существенно для пользователя-непрофессионала или пользователя, редко использующего конкретное программное обеспечение. Ее можно использовать только, если множество возможных ответов на конкретный вопрос конечно. Причем, если количество возможных ответов велико (более 20), то применение табличной формы может оказаться нецелесообразным.
Достоинствами табличной формы являются:
• наличие подсказки, что уменьшает нагрузку на память пользователя, так как данная форма
ориентирована не на запоминание, а на узнавание;
• сокращение количества ошибок ввода: пользователь не вводит информацию, а указывает на
нее;
• сокращение времени обучения пользователя;
• возможность совмещения с другими формами;
• в некоторых случаях возможность настройки пользователем.
К недостаткам данной формы относят.
• необходимость наличия навыков навигации по экрану;
• использование сравнительно большой площади экрана для изображения визуальных компонентов;
• интенсивное использование ресурсов компьютера, связанное с необходимостью постоянного обновления информации на экране.
Сложное программное обеспечение обычно взаимодействует с пользователем посредством диалогов различных типов и форм в зависимости от решаемых задач. Причем, помимо диалогов, происходящих в процессе нормальной работы программного обеспечения и называемых синхронными, предусматривают диалоги, возникающие по инициативе системы или пользователя при нарушении сценария нормального процесса. Такие диалоги называют асинхронными. Обычно их используют для выдачи экстренных сообщений от системы или пользователя.
Разработка диалогов. Процесс проектирования и реализации диалогов можно разделить на следующие стадии:
• определение множества необходимых диалогов, их основных сообщений и возможных сценариев — проектирование абстрактных диалогов;
• определение типа и формы каждого диалога, а также синтаксиса и семантики используемых
языков - проектирование конкретных диалогов;
• выбор основных и дополнительных устройств и проектирование процессов ввода-вывода для каждого диалога, а также уточнение передаваемых сообщений – проектирование технических диалогов.
В основу абстрактных диалогов должна закладываться идеология технологического процесса,
для автоматизации которого предназначается программный продукт.
Кроме сценариев, при проектировании абстрактных диалогов используют диаграммы состояний интерфейса или графы диалога.
Граф диалога — ориентированный взвешенный граф, каждой вершине которого сопоставлена
конкретная картинка на экране (кадр) или определенное состояние диалога, характеризующееся набором доступных пользователю действий. Дуги, исходящие из вершин, показывают возможные изменения состояний при выполнении пользователем указанных действий. В качестве весов дуг указывают условия переходов из состояния в состояние и операции, выполняемые во время перехода.
Таким образом, каждый маршрут на графе соответствует возможному варианту диалога. Причем представление диалога в виде графа в зависимости от стадии разработки может выполняться с разной степенью детализации. По сути граф диалога - это граф состоянии конечного автомата, моделирующего поведение программного обеспечения при воздействиях
пользователя. Для представления таких графов уже были введены две нотации: нотация диаграмм состояний структурного подхода к разработке и нотация диаграмм состояний UML.
Основные компоненты графических пользовательских интерфейсов: рабочая область, фон, узор, фоновый рисунок, заставка, окна, пиктограммы; прямое манипулирование изображением, компоненты ввода-вывода.
Графические пользовательские интерфейсы поддерживаются операционными системами Windows, Apple Macintosh, OS/2 и т. д. В рамках указанных операционных систем для таких интерфейсов разработаны наборы стандартных компонентов взаимодействия с пользователем.
Рабочая область - это часть экрана дисплея или весь экран, используемый программой графического интерфейса. Именно в рабочей области, и только в ней, можно работать с элементами графического интерфейса. Рабочая область включает в себя фон, узор, фоновый рисунок, заставку. На ней располагаются окна, иконки, панель задач. Все эти элементы не могут находиться вне рабочей области.
• Фон представляет собой окрашенную часть рабочей области, не занятую иконками и панелью задач. Он предназначен для выделения границ рабочей области.
• Узор представляет собой двухцветную мозаику, накладываемую на фон с целью улучшения общего вида рабочей области или повышения контрастности рабочей области по отношению к окнам, иконкам и панели задач.
• Фоновый рисунок представляет собой растровое изображение (рисунок, фотографию и т.п.), помещенную на рабочую область с целью ее украшения.
• Заставки представляют собой движущиеся рисунки, анимацию и т.п., которые используют ненасыщенные тона. Благодаря этому износ монитора замедляется. В то же время наличие рисунков говорит о том, что машина включена и ее не надо "заново" включать. Заставки обычно включаются по прошествии определенного времени, если на компьютере в это время не работают пользователи. Это время указывается в опциях заставки. Выход из заставки (ее "снятие") происходит после нажатия любой клавиши клавиатуры или манипулятора, или после перемещения мыши.
Основными понятиями графического интерфейса являются понятия "рабочей области", "окна" и "иконки" , или "значка". Любой объект в графическом интерфейсе так или иначе связан с этими понятиями. В связи с этим рассмотрим эти понятия по-подробнее.
Пользовательские интерфейсы большинства современных программ строятся по технологии WIMP: W - Windows (окна), I - Icons (пиктограммы), М - Mouse (мышь), Р - Pop-up (всплывающи или выпадающие меню). Основными элементами графических интерфейсов, таким образом являются: окна, пиктограммы, компоненты ввода-вывода и мышь, которую используют в качеств указующего устройства и устройства прямого манипулирования объектами на экране.
Окна. Окно - обычно прямоугольная, ограниченная рамкой область физического экрана. Окно может менять размеры и местоположение в пределах экрана. Все окна можно разделить на категорий:
• основные окна (окна приложений) оно содержит: рамку, ограничивающую рабочую область окна, строку заголовка с кнопкой системного меню и кнопками выбора представления окна и выхода, строку меню, пиктографическое меню (панель инструментов), горизонтальные и вертикальные полосы прокрутки и строку состояния;
• дочерние или подчиненные окна. В отличие от окна приложения дочернее окно не содержит меню. В строке заголовка - специальное имя, идентифицирующее связанный с ним документ или файл;
• окна диалога используют для просмотра и задания различных режимов работы, необходимых параметров или другой информации. Как правило, размер диалогового окна неизменяем, но его можно перемещать по экрану;
• информационные окна бывают двух типов: окна сообщений и окна помощи. Окна сообщений, кроме заголовка с кнопкой системного меню, обычно содержат текст сообщения и одну или несколько кнопок реакции пользователя. Окно помощи имеет более сложную структуру: оно может содержать меню, полосы прокрутки и информационная область;
• окна меню. Окна меню Windows можно использовать как открывающиеся панели иерархического меню или как отдельные контекстные меню.
Пиктограммы. Пиктограмма представляет собой небольшое окно с графическим изображением, отражающим содержимое буфера, с которым она связана. Различают:
• программные пиктограммы. Программными пиктограммами, которые связаны с соответствующей программой, управляет операционная система;
• пиктограммы дочерних окон. Аналогично многодокументная программная система управляет пиктограммами дочерних окон, обеспечивающими доступ к различным документам, одновременно обрабатываемым программной системой;
• пиктограммы панели инструментов. Пиктограммы панели инструментов обычно дублируют доступ к соответствующим функциям через меню, обеспечивая их быстрый вызов;
• пиктограммы объектов. Пиктограммы объектов используют для прямого манипулирования этими объектами.
Прямое манипулирование изображением. Прямое манипулирование изображением - это возможность замены команды воздействия на некоторый объект физическим действием в интерфейсе, осуществляемым с помощью мыши. При этом любая область экрана рассматривается как адресат, который может быть активизирован при подведении курсора и нажатии клавиши мыши.
По реакции на воздействие различают следующие типы адресатов:
• указание и выбор (развертывание пиктограмм, определение активного окна);
• буксировка и «резиновая нить» (перенос объекта или его границ);
• экранные кнопки и «скользящие» барьеры (выполнение дискретных или циклически повторяемых действий, например, выполнение некоторой операции или рисование, подразумеваемых при активизации определенной области экрана - кнопки).
Не последняя роль в графических интерфейсах отводится динамическим визуальным сигналам, которые представляют собой изменение изображения на экране. Основная цель этих сигналов заключается в предоставлении пользователям дополнительной информации. Простейшим примером такого сигнала является изменение изображения курсора мыши при выполнении конкретных операций, например, изображение его в форме песочных часов во время обработки.
Компоненты ввода-вывода. В окнах приложения могут размещаться специальные компоненты, используемые для ввода-вывода информации. Интерфейс практически любого современного программного обеспечения включает несколько меню: основное или «ниспадающее» иерархическое меню, пиктографические меню (панели инструментов) и контекстные меню для разных ситуаций. Любое из указанных меню представляет собой компонент ввода-вывода, реализующий диалог с пользователем, используя табличную форму.
Иерархические меню используют, чтобы организовать выполняемые программным обеспечением операции, если их число превышает 5-8 (6 в соответствии с рекомендациями фирмы IBM), и обеспечить пользователю их обзор. Панели инструментов и контекстные меню применяют для обеспечения быстрого доступа к часто используемым командам, обеспечивая пользователю возможность относительно свободной навигации.
Кроме меню в интерфейсе используют и другие компоненты ввода-вывода, которые можно разделить на три группы в соответствии с тем, какую форму диалога они реализуют: фразовую, табличную или смешанную. В табл. приведены основные компоненты WINP-интерфейса Windows и даны рекомендации по их использованию.
РИСУНОК 106 - 1 - разные элементы ввода
Стандартизация пользовательского интерфейса: классификация управляющих средств пользовательского интерфейса, стандарты ISO на пользовательский интерфейс WIMPS, качество интерфейса – эргономический аспект; системы поддержки работы в группе - групповая работа в локальных и глобальных сетях, системы семинаров, работа с фреймами и мультидоступ, вопросы синхронизации группового взаимодействия; оценка функционирования - цели и стили оценивания, оценка на этапе проектирования, формальные методы анализа диалога на тупики, оценка реализации, оценка времени реакции, целостность диалога, комплексирование методов оценки, оценка полезности.
Пользовательский интерфейс представляет собой совокупность программных и аппаратных средств, обеспечивающих взаимодействие пользователя с компьютером. Основу такого взаимодействия составляют диалоги. Под диалогом в данном случае понимают регламентированный обмен информацией между человеком и компьютером, осуществляемый в реальном масштабе времени и направленный на совместное решение конкретной задачи: обмен информацией и координация действий.
Качество определяется в ГОСТ Р ИСО/МЭК 9126-93 как «объем признаков и характеристик продукции или услуги, который относится к их способности удовлетворять установленным или предполагаемым потребностям». При комплексной оценке показателей качества программного продукта качество пользовательского интерфейса вносит определяющий вклад в такую субхарактеристику качества, как практичность (usability) (ГОСТ Р ИСО/МЭК 9126-93, см. таблицу 4). С семиотической точки зрения качество соотносится со стандартизированностью как семантика и прагматика с синтактикой. Другими словами, качество характеризует содержание (смысл) и полезность текста, в то время как стандартизированность — грамотность (корректность).В качестве пользовательского интерфейса можно выделить два аспекта интерфейса — функциональный и эргономический. О качестве функциональности интерфейса трудно говорить безотносительно предметной области, например, сформулировать «руководящие принципы функциональности» пользовательского интерфейса. Формально его можно связать со степенью «соответствия задаче». Поскольку интерфейс является физическим динамическим устройством, взаимодействующим с пользователем, то наряду с абстрактно-синтаксическим возникает и дополняющий его независимый эргономический аспект, который, в зачаточной форме и соответствует обычному текстовому объекту (размер шрифта, цветовое оформление, размер и толщина книги, защита от старения и разрушения, навигация по страницам и т.д.). В случае компьютерного интерфейса появляются новые особенности, связанные с комфортностью экранного представления, достаточной оперативностью реакции программного средства на действия пользователя, удобством манипулирования мышью и клавиатурой (и их скоростными показателями). Нормативные требования по эргономике пользовательского интерфейса отличаются по своей природе от синтаксических и манипуляционных правил — они относятся к психофизиологическим свойствам конкретной реализации уже выбранного типа (стиля) пользовательского интерфейса (и соответствующего стандарта) в конкретном приложении. В этих условиях эргономические стандарты могут лишь требовать достижения некоторых общих руководящих эргономических принципов, которым должно удовлетворять реализация в приложении выбранного тип (стиля). При этом предполагается, что приложение должно оптимально инкорпорировано в техническую среду. Ряд более ранних стандартов (стандарты ISO 9241 P.3-9) касаются именно этой среды (клавиатура, дисплеи, устройства ввода с клавиатуры и мыши, мебель рабочей станции и показатели рабочей среды, например, освещение или уровни шума). Эргономические аспекты пользовательского интерфейса приложения являются естественным расширением эргономики технических средств и рабочего места. Сегодня существует два подхода к оценке эргономического качества, которые можно отнести к методам «черного» и «белого ящика». В первом подходе оценку производит конечный пользователь (или тестер), суммируя результаты работы с программой в рамках следующих показателей ISO 9241-10-98 Ergonomic requirements for office work with visual display terminals (VDTs). P. 11. Guidance on usability specification and measures:эффективности (effectiveness) - влияния интерфейса на полноту и точность достижения пользователем целевых результатов; продуктивности (efficiency) или влияния интерфейса на производительность пользователя; степени (субъективной) удовлетворенности (satisfaction) конечного пользователя этим интерфейсом. Эффективность является критерием функциональности интерфейса, а степень удовлетворенности и, косвенно, продуктивность — критерием эргономичности. Во втором подходе пытаются установить, каким (руководящим эргономическим) принципам должен удовлетворять пользовательский интерфейс с точки зрения оптимальности человеко-машинного взаимодействия. Развитие этого аналитического подхода было вызвано потребностями проектирования и разработки ПО, поскольку позволяет сформулировать руководящие указания по организации и характеристикам оптимального пользовательского интерфейса. Этот подход может быть использован и при оценке качества разработанного пользовательского интерфейса. В этом случае показатель качества оценивается экспертом по степени реализации руководящих принципов или вытекающих из них более конкретных графических и операционных особенностей оптимального «человеко-ориентированного» пользовательского интерфейса.
Как указывалось в общем контексте в ГОСТ Р ИСО/МЭК 9126-93, в настоящее время существует ряд систем комплексных показателей (моделей качества) разной степени завершенности, однако, принятую в стандартах модель качества не нужно абсолютизировать. Цель введения стандартов — стимулировать широкое практическое использование руководящих принципов, а также накопление опыта для их последующего уточнения и развития. Стандартизированная модель отражает, по крайней мере, минимальный набор обязательных (или общепризнанных) принципов.
Вторым этапом в развитии графического интерфейса стал "чистый" интерфейс WIMP, Этот подвид интерфейса характеризуется следующими особенностями.
1. Вся работа с программами, файлами и документами происходит в окнах - определенных очерченных рамкой частях экрана.
2. Все программы, файлы, документы, устройства и другие объекты представляются в виде значков - иконок. При открытии иконки превращаются в окна.
3. Все действия с объектами осуществляются с помощью меню. Хотя меню появилось на первом этапе становления графического интерфейса, оно не имело в нем главенствующего значения, а служило лишь дополнением к командной строке. В чистом WIMP - интерфейсе меню становится основным элементом управления.
4. Широкое использование манипуляторов для указания на объекты. Манипулятор перестает быть просто игрушкой - дополнением к клавиатуре, а становится основным элементом управления. С помощью манипулятора УКАЗЫВАЮТ на любую область экрана, окна или иконки, ВЫДЕЛЯЮТ ее, а уже потом через меню или с использованием других технологий осуществляют управление ими.
Следует отметить, что WIMP требует для своей реализации цветной растровый дисплей с высоким разрешением и манипулятор. Также программы, ориентированные на этот вид интерфейса, предъявляют повышенные требования к производительности компьютера, объему его памяти, пропускной способности шины и т.п. Однако этот вид интерфейса наиболее прост в усвоении и интуитивно понятен. Поэтому сейчас WIMP - интерфейс стал стандартом де-факто.
Ярким примером программ с графическим интерфейсом является операционная система Microsoft Windows.
Групповая работа— это совместная работа людей в малых группах (до 25—30 человек или по количеству членов структурного подразделения) над определенным заданием, которые самостоятельно или с помощью консультанта устанавливают нормы общения и взаимодействия, выбирают направление своей работы и средства для ее достижения. Групповая работа имеет содержательный, качественный, структурный и координационный аспекты. Основное назначение групповой работы — решение сложных проблем, требующих совместных усилий представителей различных организаций или разных подразделений внутри одной организации. разных специалистов, например проблемы внедрения новшеств, развития организаций, сложные вопросы управления организацией и т. п.
Групповая работа позволяет в ряде случаев качественнее и быстрее решать возникающие проблемы и может использоваться как метод обучения и повышения квалификации руководителей и специалистов в школах, колледжах, вузах и т. д., как одна из основных форм работы в различных видах игр (инновационных, организационно-деятельностных, практических, деловых наряду с межгрупповыми формами взаимодействия), а также как самостоятельная форма выработки решений (работа временных целевых групп, оргпроектирование, специальные совещания, семинары).
В связи с этим в групповой работе выделяются следующие аспекты:
Содержательный — совместная работа по решению задач, определению направлений деятельности, поиску средств ее достижения.
Качественный — совместная работа по формированию сплоченной, «сыгранной» команды, по перестройке мышления участников, развитию ролевых отношений, по выработке навыков совместной работы, формированию групповой культуры.
Структурный — формирование группы, определение состава участников, определение продолжительности совместной работы, ролевой и позиционной структуры группы.
Координационный — для планирования, организации и контроля работы группы требуется еще один компонент — координатор. В качестве координатора может выступать внешний или внутренний консультант организации, группа консультантов, руководитель.
III. ДИСЦИПЛИНЫ СПЕЦИАЛИЗАЦИИ
- Программа государственного экзамена
- Пояснительная записка
- Основные задачи государственного экзамена
- Содержание государственного экзамена
- Структура экзаменационного билета
- Требования к ответу на вопросы экзаменационного билета
- Критерии оценки ответа
- Программа
- I. Общепрофессиональные дисциплины
- Раздел 1. Программирование на языке высокого уровня
- Динамический тип данных, линейные динамические структуры данных: стек, очередь, списки; нелинейные динамические структуры данных: мультисписки, деревья.
- Процедуры и функции: описание, вызов, передача параметров, программирование рекурсивных алгоритмов.
- Раздел 2. Компьютерная графика
- Раздел 3. Организация эвм и систем
- Архитектура эвм, периферийные устройства, организация ввода-вывода информации.
- Системы эвм: вычислительные системы и сети, сопроцессоры, мультипроцессорные вычислительные системы, матричные и конвейерные вычислительные системы, связные устройства, модемы, протоколы обмена.
- Раздел 4. Операционные системы
- Виртуальная память: страничная, сегментная, сегментно-страничная организация памяти, коллективное использование и защита информации; файлы, отображаемые в память.
- Файловая система ос: состав, управление, типы файловых систем; логическая и физическая организация файла, методы доступа, операции над файлами, отображаемые файлы.
- Раздел 5. Базы данных
- Управление транзакциями, сериализация транзакций (синхронизационные захваты, метод временных меток), изолированность пользователей.
- Архитектура "клиент-сервер": открытые системы, клиенты и серверы локальных сетей, системная архитектура "клиент-сервер", серверы баз данных.
- Распределенные бд: разновидности распределенных систем, распределенная субд System r, интегрированные или федеративные системы и мультибазы данных.
- Раздел 6. Сети эвм и телекоммуникации
- Передача дискретных данных: линии связи, методы передачи дискретных данных на физическом уровне, методы передачи данных канального уровня, методы коммутации.
- Средства анализа и управления сетями: функции и архитектура систем управления сетями, стандарты систем управления, мониторинг и анализ локальных сетей.
- Раздел 7. Методы и средства защиты компьютерной информации
- Безопасность компьютерных сетей: протоколы сетевой безопасности, программно-аппаратные комплексы защиты сетей.
- Безопасность современных ос и программных комплексов, вредоносные программы, системы обнаружения вторжений, комплексный подход к проектированию и анализу защищенных ис.
- Раздел 8. Системное программирование
- Организация ячеек памяти, регистры, форматы команд.
- Ассемблер: основные понятия, директивы, команды. Условный и безусловный переходы. Циклы. Массивы. Процедуры. Упакованные данные. Структуры.
- Защищенный режим процессора Intel 80386: страничная адресация, переключение контекста, использование возможностей защищенного режима различными ос.
- Раздел 9. Структуры и алгоритмы обработки данных
- Абстрактный тип данных. Линейные и нелинейные структуры данных. Стек, очередь, списки, деревья, графы.
- Алгоритмы сортировки: методы внутренней и внешней сортировки, анализ сложности и эффективности алгоритмов сортировки.
- Алгоритмы поиска: последовательный, бинарный, интерполяционный поиск, использование деревьев в задачах поиска; хеширование с открытой и закрытой адресацией; алгоритмы поиска подстроки в строке.
- Раздел 10. Функциональное и логическое программирование
- Принципы функционального программирования: программирование при помощи функций, функциональность, основные свойства функциональных языков, язык программирования Лисп, рекурсия.
- Функционалы: функциональное значение функции, способы композиции функций, функции более высокого порядка.
- Раздел 11. Объектно-ориентированное программирование
- Параметрический полиморфизм: шаблонные классы и шаблонные функции - назначение, параметризованные типы данных, синтаксис и семантика.
- Раздел 12. Теория вычислительных процессов
- Элементы теории вычислимости: вычислимость и разрешимость, интуитивное и точное понятие алгоритма, вычислимые функции, машина Тьюринга, массовые алгоритмические проблемы.
- Раздел 13. Теория языков программирования и методы трансляции
- Раздел 14. Архитектура вычислительных систем
- Раздел 15. Технология разработки программного обеспечения
- 1 Область применения
- Структуры данных: несвязанные, с неявными связями, с явными связями; иерархические модели Джексона-Орра; моделирование данных – диаграммы «сущность-связь» (erd); метод Баркера; метод idef1.
- Разработка структуры по при объектом подхода
- Раздел 16. Человеко-машинное взаимодействие
- Типы пользовательских интерфейсов и этапы их разработки, психофизические особенности человека, связанные с восприятием, запоминанием и обработкой информации.
- Раздел 17. Системы искусственного интеллекта
- Системы распознавания образов (идентификации): обучение распознаванию образов, геометрический и структурный подходы, гипотеза компактности, адаптация и обучение.
- Эволюционные методы поиска решений: метод группового учета аргументов, генетический алгоритм.
- Экспертные системы: классификация и структура; инструментальные средства проектирования, разработки и отладки; этапы разработки; примеры реализации.
- Раздел 18. Проектирование информационных систем
- Архитектуры реализации корпоративных информационных систем на платформах Sun, Microsoft, Linux.
- Раздел 19. Сетевые операционные системы
- Основные концепции ос семейства Windows nt: особенности установки, конфигурирования, администрирования, оптимизации производительности.
- Администрирование удаленного доступа к сетям Windows, взаимодействие с сетями tcp/ip, взаимодействие с сетями NetWare, средства просмотра сетевых ресурсов.
- Основные концепции ос unix/Linux, средства графического интерфейса пользователей, основные механизмы и компоненты ядра, программирование в среде unix /Linux.
- Основные концепции ос NetWare, проектирование Novell Directory Services, поддержка ос NetWare.
- Администрирование ос NetWare, дополнительные средства ос NetWare: средства защиты nds для nt, встроенные утилиты администрирования сети.
- Раздел 20. Комплексные программные платформы
- Системы планирования ресурсов предприятия (erp). Основные понятия, принципы, подсистемы.
- Методология внедрения erp-систем.
- Раздел 21. Программное обеспечение распределенных систем и сетей
- Раздел 22. Разработка корпоративного web-узла
- Перечень литературы
- Перечень основных стандартов в области обеспечения жизненного цикла и качества программных средств