Интерфейс: новые направления в проектировании компьютерных систем
Шрифт:
Разработчики могут поставлять разные средства в зависимости от потребностей пользователя. Для пользователей, предпочитающих старые методы, можно предусмотреть утилиты для создания документов, которые могли бы выглядеть и действовать так же, как и те неудобные каталоги, которыми мы сейчас пользуемся.
Другой тип организации, который легче изучить и использовать, чем обычные файловые системы, происходит из естественной иерархичности, присущей многим естественным языкам. В них слова разделяются пробелами, предложения (или последовательности слов) разделяются одним из небольшого числа разделителей (в английском языке в число этих разделителей входит точка, вопросительный и восклицательный знаки) и последующим пробелом. Абзацы (или последовательности предложений) разделяются, по крайней мере, одним знаком возврата каретки. Символ раздела или разрыва страниц служит для отделения глав или других уровней организации текста.
В последовательной системе разрыв страницы должен быть символом и, в отличие от большинства современных систем, он должен вести себя как любые другие символы с точки зрения их вставки, удаления и поиска. Как и символ возврата каретки, символы разрыва страниц могут быть скрытыми символами,
Имеет смысл не ограничиваться этими иерархическими уровнями, как это делается во многих современных системах. Документы являются последовательностями страниц, разделенных символами этого документа, каждый из которых может быть набран, найден или удален так же, как и любой другой символ. Также могут быть разделители и более высокого уровня, как, например, символ папки и тома или даже разделитель секции и библиотеки. Тем не менее, число уровней определяется объемом данных. Набор из двух последовательных символов документа является хорошим разделителем для наборов документов. Если требуются другие уровни организации, то три или четыре последовательных символа документа можно использовать в качестве разделителей. Вместо клавиш «Папка» (Folder), «Том» (Volume) и «Библиотека» (Library), которые будут использоваться редко, можно предусмотреть клавишу «Документ» (Document), которую можно нажимать многократно, вплоть до четырех раз соответственно. Такое решение позволит избежать резкого увеличения количества клавиш на клавиатуре. Важно, чтобы все символы разделителей имели специальную клавишу, иначе они не будут работать как все другие набираемые символы. То есть пользователь не должен нажимать на какую-то клавишу (например, «Return») и потом применять команду Вставить разрыв страницы. Для этого он должен использовать только специальный символ страницы.
31
Доктор Джеймс Уинтер (James Winter) из Information Appliance продолжил такого рода унификацию структуры, указав на то, что в английском языке уже имеется аналогичная иерархическая структура с символами-разделителям, которая используется для отражения высших уровней организации текста.
Если разнообразные символы разделения работают так же, как и все другие символы, исчезает необходимость в обучении пользователей тому, как с ними управляться. Если пользователь все же настаивает на использовании явных имен документов, он может ставить такие имена сразу после символа документа. Для того чтобы найти документ с именем «Собаки Азии», поиск должен будет производиться по фразе «Собаки Азии», перед которой стоит символ документа. При таком поиске будут игнорироваться все случаи использования последовательности «Собаки Азии», кроме тех, которые используются в качестве имени документа. Для получения каталога может использоваться команда, которая сможет собрать документы, включающие искомую подстроку и предваряющиеся символом документа, а также другими символами, вплоть до и включая ближайший символ конца абзаца или разделитель более высокого уровня.
Отказ от использования иерархической файловой структуры не означает отказ от структурирования сохраняемой информации. Ничто не мешает вам создавать оглавления и указатели или размещать все ваши письма к дяде Альберту и тете Агате на соответствующих страницах. Ничто не мешает вам создавать сразу перед письмами титульную страницу (как отдельный документ) «Письма к дяде Альберту и тете Агате». В этом случае вы, в сущности, создадите файловое имя, но оно не потребует использования специальных механизмов в программном обеспечении. По желанию, если вы действительно любите файловые имена и иерархии, вы можете создать свою собственную иерархическую файловую структуру. Однако тогда, структура будет частью вашего содержания, а не интерфейса. [32] Поэтому вместо специального механизма поиска файлов вы сможете использовать обычные средства поиска. Перед группой файлов вы можете поместить в виде документа название папки. Также перед группой папок вы можете поместить название тома. (В этом случае за символом тома будет следовать название тома, чтобы избежать совпадений с другими такими названиями, не являющимися именами тома.) Отсутствие встроенной файловой организации не мешает созданию файла, предназначенного для какой-либо цели, но, в то же время, понятного вам, т. к. он создан именно вами. Тем не менее, поскольку система при этом никак не изменяется, другой пользователь может искать что-либо в ваших данных и фактически проигнорировать вашу структуру и рассматривать ее как сплошной, неструктурированный файл.
32
То же самое касается и файловых имен и меню, которые были предложены в этой книге.
Преимуществом организации произвольной файловой структуры является то, что такая структура не устанавливается разработчиками системы, у которых могут быть совсем другие идеи, отличные от ваших. В этом случае вам не приходится создавать ментальную модель того, что разработчики пытались сделать. У многих пользователей формируются неправильные модели того, как та или иная система работает. Ментальные модели трудно изменяются и поэтому они могут долгое время создавать трудности для таких пользователей (Norman, 1988).
Сказанное не является теорией. Отказ от использования в компьютерах SwyftWare и Canon Cat файловых имен, директорий, а также от механизмов, с помощью которых с ними производятся манипуляции, оказался одним из самых удачных решений. Пользователи, привыкшие к использованию обычных компьютерных систем, признавали, что им было трудно перейти к использованию систем, основанных на принципе организации информации по содержанию. Но когда такой переход происходил, обычные методы вскоре казались им неудобными. А пользователи,
которые начинали знакомиться с компьютерной техникой с компьютера Canon Cat, не испытывали радости от необходимости изучать более сложные методы использования обычных файловых систем, когда они переходили на PC или Macintosh.В сравнении с обычными графическими пользовательскими интерфейсами методы, описываемые в этой книге, могут показаться сложными. Но кажущаяся сложность возникает только лишь из-за того, что новый подход еще не знаком, а также из-за того, что мы привыкли к тому множеству действий, которое мы должны выполнить, и к тем проблемам, которые возникают при использовании существующих сегодня систем. Конечно, новая система потребует от пользователя усилий на изучение. Но если вы сравните успехи начинающих пользователей, работающих с разными системами, или сравните эффективность работы опытных пользователей, преимущества более простой системы станут очевидными.
Представьте, что у вас есть n документов, которые вы должны скопировать на внешний носитель – пусть это будет жесткий диск. Для этого, используя, например, операционную систему Macintosh, вы должны будете перетащить пиктограмму каждого документа на пиктограмму диска. Новая парадигма, на первый взгляд, делает операцию более сложной. Вам нужно найти начало и конец каждого документа, выбрать документ, переместить курсор к нужному месту на диске и затем переместить каждый документ.
Вспомните, что в обычном графическом пользовательском интерфейсе вы всегда начинаете с открытия некоторого общего приложения. Ваш первый шаг – это добраться до рабочего стола. Вы должны помнить, какие пиктограммы соответствуют нужным документам, и вам (или кому-то другому) всегда приходится выполнять действия по назначению имен этим документам. Вы также должны помнить, в какой папке эти документы находятся. Поэтому кажущаяся простота достигается только после того, как выполнен значительный объем работы, и пользователь разделался с большим количеством обременительных ментальных требований. Более эффективным методом является изобретение под названием LEAP. Предположим, что, как и в случае для обычного графического интерфейса, курсор находится в одном из документов, которые вы хотите переместить. С помощью LEAP пользователь может выбрать документ шестью нажатиями клавиш, причем не глядя на экран и не держа в голове имя документа. Нажатие 6 клавиш отнимает меньше времени, чем перетаскивание пиктограммы.
Функция LEAP работает следующим образом: имеется две клавиши «LEAP», находящиеся под большими пальцами. «LEAP-Up» производит поиск вперед от позиции курсора, a «LEAP-Down» – назад. При нажатии на клавишу «LEAP» включается квазирежим, после чего все, что вы ввели, воспринимается как шаблон поиска. Для выборки документа вы должны нажать «LEAP-Up» и ввести символ документа (LEAP-UpV DocV ^^). Мы перемещаемся к началу документа. Затем мы нажимаем «LEAP-Down» и вводим символ документа (поиск в этом случае найдет символ документа в конце документа). Одновременное нажатие на обе клавиши «LEAP» позволяет выделить весь текст. (Вероятно, удобнее всего это делать с помощью больших пальцев, которые редко используются при работе с клавиатурой. См. рис. 2.1 с изображением обычной клавиатуры, снабженной клавишами «LEAP». Альтернативным вариантом является клавиша «Выбрать» (Select).) Для того чтобы сделать эту функцию видимой, рядом с клавишами «LEAP» необходимо поместить какое-то обозначение. Например, можно использовать надпись: «Для создания выделения нажмите одновременно на обе клавиши LEAP». Обратите внимание, что пользователю не требуется смотреть на экран при выборе документа. Когда документ выбран, нажатием клавиши «LEAP» курсор перескакивает на тот объект, куда нам необходимо вставить текст, после чего дается команда Копировать (Copy). При таком выделении документ включает свои разделители. Таким образом, если документ перемещается, он сохраняет в себе свою сущность как документ, поскольку эти разделители перемещаются вместе с ним.
Та же самая техника, которая использовалась для копирования документов (или другой выборки любой длины, начиная от единственного символа и заканчивая набором документов или даже всем содержанием системы (!)) из одного места в другое, может быть использована и для перемещения выборки. Разница состоит только в том, что подается команда Переместить (Move) вместо команды Копировать (Copy). В функциональном отношении этот процесс является не более сложным, чем аналогичные процессы в обычных пользовательских графических интерфейсах. Зачастую он оказывается более быстрым, а число методов, понятий и структур, которые должен знать пользователь, оказывается меньшим.
Сравним перемещение нескольких выборок из разных документов на диск с помощью клавиши «LEAP» с выполнением этой же задачи в обычном пользовательском графическом интерфейсе. В первом случае метод будет аналогичным тому, который применялся для перемещения документов на диск. Объекты, предназначенные для выборки, сначала находятся (при этом необходимости их открывать нет), потом они выбираются, как это было описано выше (за исключением того, что в начале и в конце выборки используются символы не документа, а текста), и затем они копируются в нужное место. В обычном пользовательском графическом интерфейсе пользователь должен сначала открыть документ, в который будет производиться копирование (возможно, это потребует использования команды Создать (New) из меню Файл (File)), потом найти документ, который содержит нужную выборку, открыть этот документ, найти выборку внутри документа, выделить ее, применить команду Копировать (Copy), сделать активным документ назначения, вставить выборку, активировать рабочий стол, найти следующий документ, содержащий нужную выборку, повторить всю процедуру до тех пор, пока все выборки не будут – вставлены в документ назначения. После этого вы должны сохранить результат на диске, используя специальное диалоговое окно.