Интеллектуальные продукты обладают памятью
Если задуматься, станет очевидно: чтобы человек воспринимал инте' рактивный продукт как тактичный и интеллектуальный, этот про' дукт должен обладать знанием о человеке и способностью учиться, на' блюдая за его поведением. Представленные выше качества тактичных продуктов подтверждают этот факт: чтобы продукт стал действитель' но полезным и тактичным, он должен запоминать важные факты о людях, с которыми взаимодействует.
Зачастую программами тяжело пользоваться потому, что они работа' ют исходя из рациональных, логических предположений – к сожале' нию, совершенно ошибочных. Программисты и проектировщики час' то предполагают, что поведение пользователей случайно и непредска' зуемо и что пользователя необходимо постоянно допрашивать, чтобы выявить правильный курс действий. Хотя поведение человека дейст' вительно не такое упорядоченное, как поведение цифрового компью' тера, оно редко бывает случайным, так что можно сказать заранее: глупые вопросы будут раздражать пользователей.
Если бы ваше приложение, веб'сайт или прибор могли предсказывать, что пользователь сделает в следующую минуту, разве это не улучшило бы взаимодействие с ним? Если бы ваша программа знала, какой вы' бор сделает пользователь в том или ином диалоговом окне или в фор' ме, разве нельзя было бы отказаться от этого компонента интерфейса? Разве не следует считать заведомое знание о действиях пользователя страшным секретным оружием при проектировании интерфейса?
Так вот: вы можете предсказывать поведение пользователей. Вы мо- жете встроить в приложение шестое чувство, которое подскажет ему со сверхъестественной точностью, что именно сделает пользователь в следующий момент! Все эти миллиарды впустую потраченных рабо' чих циклов процессора можно употребить с пользой: достаточно лишь добавить в интерфейс память.
Когда мы используем слово памятьв этом контексте, то не имеем в ви' ду оперативную память компьютера. Память – это способность прило' жения отслеживать действия пользователя в ходе многих сеансов его работы и реагировать на них. Если ваша программа будет просто запо' минать, что (и как) делал пользователь в ходе нескольких последних сеансов, она сможет руководствоваться этой информацией, выбирая линию своего поведения
Если мы наделим наши продукты сознанием в отношении поведения пользователя, то есть памятью, а также гибкостью, позволяющей представлять информацию и функциональность исходя из предшест' вующих действий пользователя, то сможем задействовать огромный потенциал и сделать работу пользователя более эффективной и прият' ной. Кому из нас не хотелось бы иметь умного и заинтересованного по' мощника, проявляющего инициативу, старание, здравый смысл и об' ладающего цепкой памятью? Продукт, эффективно использующий свою память, походит на такого мотивированного помощника, кото' рый вспоминает полезную информацию и предпочтения начальника без просьб и напоминаний. Простые вещи способны создавать рази' тельный контраст – контраст между продуктом, который пользовате' ли терпят, и продуктом, который они обожают. В следующий раз, об' наружив, что ваше приложение задает вопрос пользователю, заставьте его задавать это вопрос себе.
Можно подумать, что вся эта суета с памятью необязательна, – ведь проще каждый раз задавать пользователю вопросы. Программисты, не задумываясь, создают диалоговые окна, чтобы затребовать любую ин' формацию, недоступную напрямую. Однако, как мы говорили в гла' ве 10, людям не нравится, когда их допрашивают. Непрерывный до' прос – не просто излишнее налоговое бремя для пользователя, но и, с точки зрения психологии, неявный способ выражать сомнение в их компетентности.
Программы в большинстве своем забывчивы, от сеанса к сеансу они ничего или почти ничего не запоминают. Когда же наши программы все-таки оказываются достаточно умными, чтобы сохранять какую' то информацию между обращениями к ним, то это, как правило, ин' формация, облегчающая работу программиста, но не пользователя. Программа с легкостью выбрасывает информацию о том, как ее ис' пользовали, какие настройки были изменены, в каком окружении она работала, какие данные обрабатывала, кто ею пользовался и как часто он обращался к тем или иным функциональным возможностям. При этом она записывает в файлы инициализации имена драйверов, номе' ра портов и прочие подробности, облегчающие жизнь программисту. Можно использовать эти же файлы для существенного повышения уровня интеллектуальности программы с точки зрения пользователя.
Связность задач
Предсказания относительно поведения пользователя на основе его пре' дыдущих действий базируются на принципе связности задач: наши це' ли и способы достижения этих целей (с помощью задач), вообще говоря, являются одними и теми же изо дня в день. Это справедливо не только в отношении чистки зубов и поглощения завтрака, но и в том, что каса' ется нашей манеры пользоваться текстовыми редакторами, почтовыми программами, сотовыми телефонами и бизнес'приложениями.
Когда потребитель работает с вашим продуктом, высока вероятность, что и функции, которыми он пользуется, и способ обращения к ним бу' дут почти теми же, что в прошлые разы. Он, возможно, будет работать с теми же документами или хотя бы с документами того же типа, рас' положенными в тех же каталогах. Конечно, он не будет каждый раз делать одно и то же, но, скорее всего, выполняемые задачи будут укла' дываться в довольно ограниченный набор рабочих шаблонов. Вы смо' жете с высокой вероятностью предсказать поведение ваших пользова' телей, просто запоминая, что они делали в течение нескольких послед' них сеансов работы с программой. Это позволит значительно сокра' тить количество вопросов, задаваемых пользователю приложением.
Например, Салли использует Excel совершенно не так, как Кацуо, но вполне постоянна в своих привычках. Кацуо предпочитает шрифт Times размером 9 пунктов, а Салли – Helvetica 12 пунктов, причем Салли пользуется им регулярно. Программе не обязательно спрашивать Сал' ли, какой шрифт использовать: каждый раз Helvetica 12 пунктов бу' дет надежной отправной точкой.