Чтение онлайн

на главную - закладки

Жанры

Человеческий фактор в программировании
Шрифт:

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

Опытные лыжники, эксперты, одолевающие слалом и перелетающие через бугры, внушили нам, что это единственный способ катания на лыжах. Но совершенствующиеся середнячки тоже могут наслаждаться необыкновенными минутами, спускаясь с Небесной долины (Heavenly Valley). Внизу вы видите жемчужину — сияющее бирюзовое озеро Тахо (Lake Tahoe), к востоку — пустыню и коричнево-желтое море, простирающееся до горизонта. Морозный утренний воздух щиплет лицо, а

под лыжами скрипит свежевыпавший снег.

Трехфазный дизайн

Хорошо, но какое отношение это имеет к разработке программного обеспечения? Мечтая о катании на лыжах у Тахо, я хотел рассказать о трехфазной модели пользовательского интерфейса (Constantine, 1994 [13], 1994 [24]). Согласно трехфазной модели, у пользователей системы есть различные потребности на различных стадиях своего развития, а значит, пользовательский интерфейс должен разрабатываться с учетом этих изменяющихся потребностей. Для этого в программном обеспечении необходимо предусмотреть разные виды интерфейса для пользователей с разными уровнями владения продуктом. Каждый из этих вариантов должен иметь свои характерные черты и отдельные технические задачи. Как и сеть трасс на хорошем лыжном курорте, эти компоненты интерфейса должны быть не разделены, а тесно связаны между собой.

В трехфазной модели предусмотрены три интерфейса: интерфейс приобретения, переходный интерфейс и интерфейс производства. Интерфейс приобретения — это система, которую начинающий пользователь видит при первой встрече с продуктом. Хороший интерфейс приобретения позволяет начинающему пользователю сразу приступить к работе. Интерфейс производства дает возможность опытному, полностью подготовленному пользователю с большой эффективностью решать сложные задачи. Между этими двумя интерфейсами находится переходный интерфейс, предназначенный для совершенствующихся середнячков. Они уже прошли стадию медлительного и неуверенного новичка, но еще не стали и, наверное, никогда не станут опытными пользователями, способными при помощи «горячих клавиш» легко и стремительно лавировать между многими приложениями, которые каскадом расположены на экране. Трассы на лыжных курортах для начинающих, совершенствующихся и опытных лыжников различаются, но соединяются между собой. Точно так же в хорошей системе есть трехуровневый интерфейс, позволяющий легко переходить от одного уровня к другому.

Обделенное большинство

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

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

диалогов с двойным черным ромбом, которые понравятся только программисту, пишущему на С++.

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

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

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

Карты

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

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

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

Поделиться:
Популярные книги

Дайте поспать! Том III

Матисов Павел
3. Вечный Сон
Фантастика:
фэнтези
5.00
рейтинг книги
Дайте поспать! Том III

Путь Чести

Щукин Иван
3. Жизни Архимага
Фантастика:
фэнтези
боевая фантастика
6.43
рейтинг книги
Путь Чести

Энфис 2

Кронос Александр
2. Эрра
Фантастика:
героическая фантастика
рпг
аниме
5.00
рейтинг книги
Энфис 2

Сумеречный Стрелок 2

Карелин Сергей Витальевич
2. Сумеречный стрелок
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Сумеречный Стрелок 2

Сводный гад

Рам Янка
2. Самбисты
Любовные романы:
современные любовные романы
эро литература
5.00
рейтинг книги
Сводный гад

Книга пяти колец. Том 3

Зайцев Константин
3. Книга пяти колец
Фантастика:
фэнтези
попаданцы
аниме
5.75
рейтинг книги
Книга пяти колец. Том 3

Диверсант

Вайс Александр
2. Фронтир
Фантастика:
боевая фантастика
космическая фантастика
5.00
рейтинг книги
Диверсант

Ученичество. Книга 2

Понарошку Евгений
2. Государственный маг
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Ученичество. Книга 2

Титан империи 3

Артемов Александр Александрович
3. Титан Империи
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Титан империи 3

Последний попаданец 9

Зубов Константин
9. Последний попаданец
Фантастика:
юмористическая фантастика
рпг
5.00
рейтинг книги
Последний попаданец 9

Измена. Право на сына

Арская Арина
4. Измены
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Измена. Право на сына

Неестественный отбор.Трилогия

Грант Эдгар
Неестественный отбор
Детективы:
триллеры
6.40
рейтинг книги
Неестественный отбор.Трилогия

Хозяйка дома на холме

Скор Элен
1. Хозяйка своей судьбы
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Хозяйка дома на холме

Гром над Академией. Часть 2

Машуков Тимур
3. Гром над миром
Фантастика:
боевая фантастика
5.50
рейтинг книги
Гром над Академией. Часть 2