Интерфейсы интерактивного взаимодействия в информационных системах

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    51,6 Кб
  • Опубликовано:
    2017-01-05
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Интерфейсы интерактивного взаимодействия в информационных системах

Содержание

Введение

. Характеристики интерфейса взаимодействия

.1 Естественность, согласованность интерфейса. Принцип «обратной связи»

.2 Простота интерфейса. Свойства интерфейса. Правила создания интерфейса

. Типы интерфейсов интерактивного взаимодействия

.1 Интерфейсы информационного взаимодействия компьютерных иерархических систем

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

.3 Интерфейс информационного взаимодействия программных приложений. Интерфейс взаимодействия программных приложений на примере HTTP

Заключение

Список использованных источников

Введение

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

Тема исследования курсовой работы находит свое отражение в трудах таких авторов как В.Н. Четверикова, Дж. Раскина, Мандела Тео и др.

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

Для достижения поставленной в работе цели, необходимо решить следующие задачи:

описать характеристики и свойства интерфейса взаимодействия

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

ознакомиться с Интерфейсами информационного взаимодействия компьютерных иерархических систем

дать характеристику программно-аппаратным интерфейсам

рассмотреть Интерфейсы информационного взаимодействия программных приложений.

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

1.  Характеристики интерфейса взаимодействия

.1 Естественность, согласованность интерфейса. Принцип «обратной связи»

интерфейс компьютерный программный

"Интересы пользователя превыше всего" - это тот принцип, на который должен быть ориентирован любой процесс, связанный с созданием качественного интерфейса. В английском языке, для описания этого подхода используют словосочетание User-centered Design (UCD) - "Разработка, ориентированная на пользователя”. Также, эта технология ориентирована на максимально раннюю разработку интерфейса, с последующей его модернизацией в процессе разработки программного продукта.

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

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

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

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

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

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

.2 Простота интерфейса. Свойства интерфейса. Правила создания интерфейса

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

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

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

подробный (для начинающего пользователя);

краткий (для подготовленного пользователя).

Правило двух уровней может быть расширено до правила N-уровней диалога. Однако такой подход имеет несколько недостатков:

не учитывается тот факт, что навыки накапливаются постепенно;

пользователь может хорошо знать одну часть системы и совсем не знать другую;

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

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

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

Такой адаптации можно достичь за счет применения следующих методов:

использование умолчаний;

использование сокращений;

опережающий ввод ответов;

многоуровневая помощь;

многоязычность.

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

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

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

Для удобства начинающих пользователей значения, используемые по умолчанию, могут выводиться на экран вместе с соответствующим вопросом системы, например: "Дата регистрации документа? [текущая]”. Самый распространенный способ принятия значений по умолчанию - это нулевой ввод, то есть простое нажатие клавиши "Ввод” в качестве ответа на вопрос системы. Если используется командный язык, то пользователь просто пропускает параметр, используемый по умолчанию. Использование сокращений предполагает, что пользователь вместо полного имени команды может вводить ее любое допустимое сокращенное обозначение. Идея опережающего ввода ответов заключается в том, что пользователь имеет возможность на очередном шаге диалога вводить не один ответ, а цепочку последовательных ответов, упреждая возможные вопросы системы.

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

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

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

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

. Типы интерфейсов интерактивного взаимодействия

.1 Интерфейсы информационного взаимодействия компьютерных иерархических систем

Рассмотрим интерфейс информационного взаимодействия на примере WEB-приложений, отметим, что рассмотренный ранее пользовательский WUI непосредственно связан с программным интерфейсом уровня приложений. Взаимодействие различных объектов в сети Интернет строится в соответствии с правилами и требованиями общего международного стандарта ISO 7498 (ISO - International Organization for Standardization). Этот стандарт имеет тройной заголовок "Информационно-вычислительные системы - Взаимодействие открытых систем - Эталонная модель". Обычно его называют короче - "Эталонная модель взаимодействия открытых систем". Публикация этого стандарта в 1983 году подвела итог многолетней работы многих известных телекоммуникационных компаний и стандартизующих организаций. Основной идеей, которая положена в основу этого документа, является разбиение процесса информационного взаимодействия между системами на уровни с четко разграниченными функциями. В качестве прообраза модели взаимодействия OSI (Open System Interconnection) была использована структура, предложенная ANSI (American National Standards Institute). ISO 7498 является стандартом в области телекоммуникаций. Преимущества слоистой организации взаимодействия заключаются в том, что она обеспечивает независимую разработку уровневых стандартов, модульность аппаратуры и программного обеспечения информационно-вычислительных систем и способствует тем самым техническому прогрессу в данной области.

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

Многоуровневая модель не предполагает наличия непосредственной связи между одноименными уровнями взаимодействующих систем. Следовательно, каждый уровень системы А должен полагаться на услуги, предоставляемые ему смежными уровнями системы А, чтобы помочь осуществить связь с соответствующим уровнем системы В. Предположим, что уровень 4 системы А должен связаться с уровнем 4 системы В. Для того чтобы выполнить эту задачу, уровень 4 системы А должен воспользоваться услугами уровня 3 системы А, тогда уровень 4 будет называться "пользователем услуг", а уровень 3 - "источником услуг".

Рисунок 1.

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

Рисунок 2. Инкапсуляция блоков данных различных уровней

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

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

В соответствии с ISO 7498 выделяются семь уровней (слоев) информационного взаимодействия:

. Уровень приложения (Application Layer).

. Уровень представления (Presentation Layer).

. Уровень сессии (Session Layer).

. Транспортный уровень (Transport Layer).

. Сетевой уровень (Network Layer).

. Канальный уровень (DataLink Layer).

. Физический уровень (Physical Layer).

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

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

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

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

Стек - иерархически организованную группу взаимодействующих протоколов. Протоколы, которые входят в стек, имеют специализированный интерфейс и предназначены для взаимодействия только с протоколами соответствующих уровней данного стека. В качестве примеров таких стеков можно привести стек TCP/IP. Уровни 7-5 считаются верхними и, как правило, не отражают специфики конкретной сети. Блок данных пользователя (сообщение) этими уровнями рассматривается как единое целое. Изменения могут испытывать только сами данные. Уровни 1-3 и иногда 4 считаются нижними уровнями OSI. На каждом из этих уровней определяется свой формат представления данных. При прохождении по стеку с 4-го уровня до первого сообщение пользователя последовательно фрагментируется и преобразуется в последовательность блоков данных соответствующего уровня. Инкапсуляция - процесс помещения фрагментированных блоков данных одного уровня в блоки данных другого уровня. Обычно инкапсулируются данные протоколов верхних уровней в блоки данных протоколов нижних уровней (сетевой - канальный), но также может выполняться инкапсуляция для протоколов одноименных уровней.

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

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

Рассмотрим интерфейс взаимодействия двух приложений WEB-браузера и WEB-сервера (поскольку эти приложения обычно располагаются на разных машинах и, соответственно, на разных программно-аппаратных платформах используем термин программно-аппаратный интерфейс). При реализации интерфейса взаимодействия WEB - приложений используется протокол HTTP (Hypertext Transfer Protocol - протокол передачи гипертекcта), который представляет собой протокол прикладного уровня и обеспечивает возможность доступа к разнообразной информации, размещенной в сети WWW - World Wide Web. Протокол HTTP обладает высокопроизводительными механизмами тиражирования информации, независимо от типа представления данных. Протокол построен по объектно-ориентированной технологии и может использоваться для решения различных задач, например, управления распределенными информационными системами.

Способность хранить и представлять данные разнообразных форматов (изображения, видео, аудио) делает сеть WWW с используемым HTTP уникальным средством размещения информации. В настоящее время протокол HTTP используется системой WWW качестве одного из основных протоколов. С учетом этого рассмотрим подробнее методы работы протокола HTTP. Протокол HTTP позволяет получать доступ к информационным ресурсам и сервисам WWW-серверов. Для унификации доступа к многофункциональным ресурсам сети WWW-серверы поддерживают комплекс интерфейсов, позволяющих структурировать уровни и методы доступа к сетевым ресурсам. По сути, каждый из интерфейсов представляет собой объект сети со своими методами и своей структурой. Для поиска и отображения информации, размещенной в сети WWW, применяются специальные приложения, называемые Web-браузерами. Согласованное взаимодействие объектов (клиентских и серверных) и составляет понятие программного интерфейса.

Рассмотрим составляющие программно-аппаратных интерфейсов на основе протоколов уровня приложений. URI (Uniform Resource Identifier, Идентификатор ресурса), URL (Uniform Resource Locator, Местонахождение ресурса), URN (Uniform Resource Name, Имя ресурса) - разные аспекты идентификации одного и того же сервиса, определяющие тип, метод доступа и расположение узла сети, на котором находятся ресурс, доступный через сеть Интернет. Этот сервис состоит из трех частей.

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

) Адрес. Идентифицирует адрес (хост) ресурса, например, www.ripn.net.

) Имя или путь доступа. Идентифицирует полный путь к ресурсу на выбранном хосте, который мы хотим использовать для доступа к ресурсу, например, /home/images/image l. gif. Например, файл readme. txt, расположенный на сайте Microsoft (WWW-сервере), представляет собой ресурс с идентификатором: http://www.microsoft.com/readme. txt. Это означает, что для обращения к ресурсу должен использоваться протокол HTTP, (схема доступа отделена двоеточием ": " и указывает название использованного протокола), следующие два слэша отделяют адрес сервера www.microsoft.com; а также) имя файла /readme. txt. Как правило, когда имеют в виду компьютер, на котором расположен ресурс, используют значение URL или URN, а когда обозначают ресурс полностью (тип, хост, путь) используют URI. Нет ошибки, если используется одно обозначение вместо другого, но обязательно следует пояснить, что оно значит в контексте.

Идентификатор URI может содержать не только имя ресурса, но и параметры, необходимые для его представления. Имя ресурса отделяется от строки параметров символом "?". Строка параметров состоит из символьных групп с постоянной структурой (лексем), разделяемых символом "&", каждая такая лексема состоит из имени параметра и его значения, разделенных символом "=", символ пробела " " заменяется знаком "+". Символы лексем, не входящие в набор символов ASCII, заменяются знаком "%" и шестнадцатеричным значением этого символа. Для указанного ресурса вся строка параметров является одним строковым параметром, поэтому тип, порядок следования или уникальность имен отдельных параметров строки не существенны. Например: http://www.exe.com/bm/scrshell.run? in=10&go=ok+and+ok&event=l&event=2 Этот идентификатор URI содержит 4 параметра, три из которых - чиcловые, а два имеют одно имя. Анализ и разбор значений отдельных параметров целиком возлагается на идентификатор URI, в данном примере на ресурс scrshell.run.

HyperText Markup Language (HTML) - это язык описания информации, хранимой в сети WWW.HTML-файл может содержать специальные коды, обозначающие присоединенную графическую, видео или аудио информацию или исполняемые коды среды отображения информации (Web-браузер - Java Script, Java). Для языков Java и JavaScript приложение Web-браузер представляет операционную систему или среду, в которой они выполняются, а Web-страница является ресурсом, выделенным для их работы. Эти языки не строят Web-страницу по данным пользователя, а используют ее как платформу для своих действий и действий пользователя. Когда Web-браузер получает доступ к этому файлу, он сначала интерпретирует закодированную в HTML-файле информацию, а затем в соответствующей форме представляет эту информацию пользователю.

Буквы "НТ" в названии протокола HTML обозначают "HyperText" - основную концепцию размещения информации в сети WWW.Документы HyperText содержат специальные связи, которые называются гиперссылками (hyperlinks) и размещаются в тексте документа. Гиперссылки позволяют пользователю не только переходить от одной части этого документа к другой, но и обращаться к другим связанным документам, размещенным в сети WWW.

Common Gateway Interface (CGI) - это стандарт расширения функциональности WWW, позволяющий WWW-серверам выполнять программы, аргументы которых может определять пользователь. Интерфейс CGI расширяет возможности пользователя и позволяет ему выполнять программы, ассоциированные с данной Web-страницей, предоставляя таким образом возможность получения динамической информации из WWW-сервера. Например, пользователь такого WWW-сервера может получить самую последнюю информацию о погоде, выполнив программу, которая запрашивает прогноз погоды на текущий момент из базы данных. Интерфейс CGI в основном играет роль шлюза между WWW-сервером и внешними исполняемыми программами. Он получает запрос от пользователя, передает его внешней программе и затем возвращает результаты пользователю через построенную динамически Web-страницу. При этом построенные Web-страницы могут коренным образом отличаться друг от друга, поскольку они формируются в прямой зависимости от параметров, определяемых пользователем.

Механизм интерфейса CGI также является универсальным и может передавать данные между любыми WWW-серверами. Поскольку интерфейс CGI основан на исполняемых файлах, нет ограничений на тип программы, которая будет в нем исполняться. Программа может быть написана на любом из языков программирования, позволяющих создавать исполняемые модули. CGI-программа также может быть написана с использованием командных языков операционных систем, таких как Perl или Shell. В настоящее время широко используется технология активных серверных страниц ASP (Active Server Pages). По сути, эта технология представляет применение того же самого стандарта CGI, только на уровне объектно-ориентированного подхода к построению Web-страниц.

.3 Интерфейс информационного взаимодействия программных приложений

Рассмотрим интерфейс взаимодействия программных приложений на примере HTTP. Интерфейс реализуется последовательно.

Первый этап - это когда HTTP-клиент (броузер) соединяется с сервером. Для этого он использует протокол TCP/IP, и соединение происходит с известным клиенту TCP-портом. Принятый номер порта HTTP - 80; для других сервисов определены другие TCP-порты.

Вторым этапом является запрос клиента: клиент передает заголовок запроса (Request header) и, возможно (в зависимости от метода), тело сообщения запроса. В заголовке обязательно указываются метод, URL и версия HTTP. Там может быть еще несколько необязательных полей, которые тоже дают серверу информацию о том, как обрабатывать запрос.

Третий этап - ответ сервера, который состоит из заголовка (Response header), в котором сервер указывает версию HTTP и код статуса, который может говорить об успешном или неуспешном результате и его причинах. После заголовка идет тело ответа, отделенное от заголовка пустой строкой.

Четвертым этапом является разрыв TCP/IP соединения. Request header может выглядеть следующим образом:

GET /MyDoc. htm HTTP/1.1: Keep-AliveAgent: Mozilla/3.0 (Win95; I): 212.54.196.226: image/gif, image/x-bitmap,/jpeg, *. *

Здесь: MyDoc. htm - имя запрашиваемого документа; GET - тип запроса; Host - IP-адрес; Accept - форматы данных "понимаемых" клиентом.

Request header, приведенный ниже, получен от документа, содержащего форму:

/Scripts/ReadData. pl HTTP/1.1: http://212.54.196.226: Keep AliveAgent: Mozilla/3.0 (Win95; I): 212.54.196.226: image/gif, image/x-bitmap,/jpeg, *. *type: application/x-www-form-urlencodedlength: 38

Здесь: POST - метод передачи данных из формы; Referer - адрес web-страницы, с которой пользователь перешел на документ, содержащий форму.; Content-type - способ кодировки передаваемых данных; Content-length - количество передаваемых данных (байт); FirstName, LastName - имена полей формы; Mary+Ann, Sylvester - передаваемые значения (пробел заменен знаком "+"). eb-сервер отвечает на запрос браузера, посылая ему HTML-файл, которому предшествует Response header.

Типичный Response header содержит следующие данные:

HTTP/1.1 200 OK: Microsoft-IIS/4.0

Date: Tue, 04 Apr 2005 00: 26: 34 GMTtype: text/html

Этот заголовок сформирован сервером. Строка "200 OK" - это статус запроса. Если бы сервер не смог обработать запрос, то он сформировал бы сообщение об ошибке, например, "404 Object Not Found"; Content-type - тип содержимого. Браузер отображает документ (интерпретирует его код именно как HTML-код, поскольку Content-type имеет значение text/html) и ждет, когда клиент запросит (щелкнув по гиперссылке) очередную страницу этого сайта или перейдет на другой сайт. Если страница содержит изображение (например, формата jpeg), оно будет направлено web-сервером клиенту вместе с другим Response header, где Content-type будет иметь значение image/jpeg. Set-Cookie - устанавливает значение cпециальной информации записываемой на компьютере клиента. В этом поле хранится идентификатор текущей сессии.

Рассмотрим пример и разберём подробнее HTTP запрос клиента. Он может выглядеть, например, так:

http://localhost/ HTTP/1.1: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*Language: ruAgent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0): localhostConnection: Keep-Alive=l&param2=2

Из примера видно, что запрос начинается со слова "POST". Это слово означает метод передачи данных на сервер, в котором дополнительные данные запроса (строка "param1=1&param2=2") передаются после заголовка.

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

<form action="http://localhost/" method="post">

<input type=hidden name="param1" value="1">

<input type=hidden name="param2" value="2">

<input type=submit></form>

Как видно из примера, параметры записываются в виде

[имя параметра1] = [значения параметра1] & [имя параметра2] = [значения параметра2] &.

Часто употребим метод запроса - "GET". Фактически все запросы, не требующие отправки данных - например запрос страницы, производятся этим способом. Изменим форму запроса:

<form action="http://localhost/" method="get"> <input type=hidden name="param1" value="1">

<input type=hidden name="param2" value="2">

<input type=submit></form>

получим следующий HTTP запрос:

GET http://localhost/? param1=1&param2=2 <http://localhost/?param1=1&param2=2> HTTP/1.1: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*Language: ruAgent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0): localhostConnection: Keep-Alive

Как видно, строка "paraml=l&param2=2" переместилась выше и добавилась к строке "http://localhost/" после знака"?". Так же изменилось первое слово в HTTP заголовке, остальное осталось без изменения.

Существенным недостатком метода GET является то, что длина отправляемых данных лимитирована - некоторые серверы и браузеры имеют ограничение на длину адреса запрашиваемого документа. Соответственно адрес с длинной строкой запроса может быть либо срезан, либо сервер возвратит ошибку "414 Request-URI Too Long". К достоинством же метода GET можно отнести то, что данные, которые были отправлены отображаются в строке браузера.

Заключение

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

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

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

Список использованных источников

1. Келецкий Я. Энциклопедия языка Си/ Пер. с англ. - М.: Мир, 2011.

. Керниган Б., Ричи Д., Фьюер А. Язык программирования Си. Задачи по языку С / Пер. с англ. - М.: Финансы и статистика, 2005.

. Ю.И. Шемакин. "ТЕОРЕТИЧЕСКАЯ ИНФОРМАТИКА" - Учебное пособие. 2010г.

. Организация взаимодействия человека с техническими средствами АСУ, том 4: "Отображение информации", редакция В.Н. Четверикова, Москва, "Высшая Школа" 2009.

. Организация взаимодействия человека с техническими средствами АСУ, том 7: "Системное проектирование взаимодействия человека с техническими средствами", редакция В.Н. Четверикова, Москва, "Высшая Школа" 2009.

. "Кибернетические диалоговые системы", И.П.Кузнецов. 2008г.

. Интернет-журнал «Школа жизни»: [Каким будет пользовательский интерфейс будущего?] / URL: http://shkolazhizni.ru/archive/0/n-47067

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

. Мандел Тео. Разработка пользовательского интерфейса. М.: ДМК Пресс, 2011.

Похожие работы на - Интерфейсы интерактивного взаимодействия в информационных системах

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!