Дружественность программы.

Лекция №2 Дружественность программы. Жизненный цикл программы.

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

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

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

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

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

· пользовательский интерфейс должен быть единообразным;

· пользовательский интерфейс должен позволять пользователю исправлять собственные ошибки;

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

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

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

Графический пользовательский интерфейс предоставляет пользователю возможности:

· обращаться к ПС путем выбора на экране подходящего графического или текстового объекта,

· получать от ПС информацию на экране в виде графических и текстовых объектов,

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

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

· размещать на экране множество различных окон, в которые можно выводить информацию независимо;

· использовать графические объекты, называемые пиктограммами (или иконами), для обозначения различных информационных объектов или процессов;

· использовать экранный указатель для выбора объектов (или их элементов), размещенных на экране; экранный указатель управляется (перемещается) с помощью клавиатуры или мыши.

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