Человеческий фактор в программировании - Ларри Константин
- Дата:19.08.2024
- Категория: Бизнес / Управление, подбор персонала
- Название: Человеческий фактор в программировании
- Автор: Ларри Константин
- Просмотров:0
- Комментариев:0
Шрифт:
Интервал:
Закладка:
Приведу еще пример. В Сиднее впервые создали замечательную службу под названием «Cuisine Courier». Вы выбираете блюда из меню местных ресторанов, и за какие-то $2 заказ доставляют прямо к вашей двери. Позвонив в эту службу, вы просто сообщаете им свой телефон, а система предоставляет остальные данные. «Мистер Константин? Вы живете по тому же адресу? Хорошо, по какому меню вы хотели бы сделать заказ?» Вы называете краткий код, и оператор подтверждает его, сообщая полное название ресторана, — и так для каждого блюда. «Заказ будет доставлен через 45 минут». Через 45 минут в дверь стучат, и можно начинать пиршество.
Как им это удается? Просто их система хорошо разработана! Как только ваш заказ подтвержден, система отправляет факс с компьютера в нужный ресторан. К тому времени когда курьер прибывает в ресторан, заказ уже готов и к нему приложена инструкция по доставке. И нет никакого беспокойства, как говорят австралийцы, потому что все работают с одними и теми же данными.
Как разработчики программного обеспечения мы должны помнить, что такие небольшие детали, так же как и общая архитектура системы, имеют значение в оказании услуг конечному потребителю. От наших решений зависит, будет ли «голос клиента» недовольным или благодарным.
Из журнала Software Development, том 4, № 3, март 1996 г.
VII
Удобные объекты
42
Объекты, которые раздражают
Графические пользовательские интерфейсы не имеют ничего общего с юзабилити — они связаны с графикой. Какой смысл в фантастическом ГПИ, если вы не применяете его для рисования красивых картинок? А с учетом того, что качество изображения на экране монитора растет, почему бы не анимировать ваши замечательные картинки? Целью является повышение продаж, а мишенями — обозреватели и покупатели программного обеспечения, которые смотрят (не очень внимательно), а потом пишут восторженные рецензии или покупают лицензию на использование системы. Потребители, которые больше заботятся о том, чтобы действительно выполнять работу, — это совсем другая группа людей, поэтому вы больше слышите о пользовательских интерфейсах, чем о юзабилити; больше говорится о философии проектирования, ориентированного на пользователя, чем о реальной поддержке процесса работы; больше рассуждений о необходимости прислушиваться к голосу покупателя, чем о внимании к проблемам пользователей.
Возьмем объектную технологию. Если когда-то всему надлежало быть «структурированным», чтобы заслуживать внимания, то теперь все обязано быть «объектно-ориентированным». Если что-то не «объектно-ориентировано», оно не считается современным. Если программное обеспечение не построено из «объектов» и «классов», то в нем не может быть ничего хорошего. В примитивном представлении объекты считаются естественными и интуитивными. Более того, они политически корректны, потому как могут использоваться повторно!
Сегодня пользовательские интерфейсы стали объектно-ориентированными. По крайней мере, так написано на коробке.
Первый взглядПредставьте: вы подумываете об отдыхе, зная, что объекты надежно спрятаны в соответствующих библиотеках классов с огромными возможностями повторного использования — глубоко внутри кодового ядра устойчивого программного обеспечения. И как раз в ту минуту, когда вы подумали, что получили полное представление о полиморфизме, универсальности и перманентных объектах, а объектная технология обрела смысл, объекты неожиданно начинают появляться на экране вашего монитора. Если объекты полезны внутри программного обеспечения, то они должны быть полезны и вне его. Если объекты полезны для разработчиков, то они должны быть полезны и для пользователей. Во всяком случае так утверждается в рекламе.
На что же похожа эта объектная революция, когда она переходит из языка программирования в пользовательский интерфейс? Представьте такую картину. На экране показана модель карманной записной книжки-ежедневника. Вы можете щелкать мышью по вкладкам для перехода к любому разделу. Вы можете щелкнуть мышью в углу «страницы» и «пе-релистнуть» ее. Ну надо же, как удобно! Конечно, большую часть времени пол-экрана не задействовано, а для чтения надписей на вкладках нужно поворачивать голову — сначала по часовой стрелке, потом против, поскольку при перелистывании страниц текст переворачивается с одной стороны на другую. Ах, но зато это выглядит таким знакомым, а ведь каждый знает, что знакомые метафоры облегчают применение программного обеспечения, не так ли? Особенно не следует придавать значение тому, что на экране super-VGA помещается меньше информации, чем на старом DOS-дисплее с 80 колонками, хотя информация отображается более мелким шрифтом. Зато все в цвете. Это очень приятно, если только вы не являетесь одним из двенадцати мужчин, которые не различают цвета. Этот «персональный информационный менеджер», должно быть, очень полезная штука, раз в нем так много замечательных картинок. Но постойте, это не просто картинки, это объекты! Их можно перемещать, с ними можно работать, с ними можно взаимодействовать, и это делает вашу жизнь такой приятной.
В другом персональном информационном менеджере на экране показана картинка вращающегося файла предметного указателя (наподобие Rolodex™). Щелкаете по крышке, она открывается, и вы видите небольшие карточки, на которых написаны имена, адреса и телефонные номера. Щелкните и потяните за «ручки», расположенные по обе стороны, и карточки начнут переворачиваться.
Некоторые называют это объектно-ориентированной технологией, но из уст пользователей, на практике применяющих все это, можно услышать менее вежливые названия и описания. Мы вовсе не против лишних движений мышью, которые повышают риск вызвать сбой из-за многократных нажатий. Мы вовсе не против того, чтобы эти восхитительные картинки отвлекали нас от работы. В конце концов, ведь это объектно-ориентированный пользовательский интерфейс!
Что же такое объектно-ориентированный интерфейс? Пиктограммы, панели кнопок и выпадающие меню — ваш персональный вариант ГПИ? Или же это методы «указать-выбрать» (point-and-click) и «перетаскивание» (drag-and-drop), являющиеся догмами непосредственного манипулирования? (Кстати, если приводить точные аббревиатуры, то мы сейчас говорим об OOI GUI WIMP.) Может быть, это любой пользовательский интерфейс, созданный с помощью языка объектно-ориентированного программирования, или же пользовательский интерфейс любой системы, разработанной с помощью объектно-ориентированных методов, независимо от языка? Возможно, это означает, что интерфейс усыпан картинками «реальных» объектов. Или то, что пользователи могут взаимодействовать с системой, передавая объектам сообщения («Документ, распечатай себя»).
- Интерфейс: новые направления в проектировании компьютерных систем - Джефф Раскин - Техническая литература
- Мэйсон - John Hall - Боевая фантастика / Боевик / Научная Фантастика
- Право социального обеспечения - Владимир Галаганов - Детская образовательная литература
- Компьютерра PDA N143 (29.10.2011-04.11.2011) - Компьютерра - Прочая околокомпьтерная литература
- Быть полезным: Семь инструментов для жизни - Арнольд Шварценеггер - Прочая старинная литература