Пример документа "Высокоуровневый дизайн интерфейса пользователя"
Одним
из первых документов при создании программных продуктов по процессу разработки программного обеспечения (ПО) методологии Rational Unified Process (RUP), является документ "Видение", шаблоны которого общедоступны. Данный документ обобщает
все требования "видение" заказчиком продукта. Обычно данный документ ссылается на внешние документы для упрощения работы над проектом. Одним из основных таких документов является документ, описывающий высокоуровневый дизайн интерфейса
пользователя. Данный документ описывает предполагаемый визуальный дизайн продукта и его поведение. Детали реализации не затрагиваются. Вначале создается черновой вариант документа, который постоянно обсуждается с заказчиком. Как игре в ping-pong
документ пересылается заказчику с текущим списком вопросов, заказчик отвечает на вопросы, добавляет свои комментарии и отсылает обратно. Данный процесс повторяется многократно, пока не сформируется детальное описание разрабатываемого продукта.
Планируемые или еще не проработанные разделы документа помечают, например TBD (To Be Developed). На основе данного документа в дальнейшем формируется формирующий список требований к очередной версии продукта документ. Часто практикуемой ошибкой,
которой страдают многие менеджеры проектов является закрытие доступа разработчиков к документам общего дизайна по соображениям безопасности. Документ требований, который предоставляется разработчикам, часто не дает полной картины дальнейших планов
разработки и как следствие некоторые детали не учитываются. В результате чего увеличивается общее время на разработку продукта, а иногда и переделка части уже готовых модулей. Обычно практикуется начальная разработка ПО на английском языке, с
последующей локализацией на другие языки. Это связано с тем, что если сразу делать ресурсы локализации на русском языке, то в дальнейшем возникают проблемы с не читаемостью закодированных в юникоде строк.
3.1. Проекция менеджера файлов
Предварительный дизайн стартовой проекции размещения панелей:
-
Заголовок;
-
Панель системного меню;
-
Кнопки быстрого вызова модулей (Навигационный менеджер в стиле Windows Explorer, Ортодоксальный менеджер (двух панельный в стиле Norton Commander), Браузер) и включения/выключения панели навигации;
-
Панель навигации по файловым системам, закладкам, истории и т. д. По умолчанию эта панель выключена;
-
Панель открытых менеджеров;
-
Панель статуса.
3.1.1. Варианты размещения панелей
Вновь открываемые рабочие панели в проекции файлового менеджера по умолчанию будут выстраиваться закладками последовательно друг за другом.
При разработке среды eclipse вместо не всегда интуитивно понятного много оконного интерфейса (MDI) был разработан альтернативный интерфейс основанный на закладках. Особенность данного интерфейса в способности гибкого размещения дочерних
панелей в соответствии с решаемыми задачами путем перетаскивания панели в зону «дока». Панели могут «пришвартовываться» к левому, правому, нижнему, верхнему и центральной зонам «дока».
Данная особенность позволяет имитировать работу с ортодоксальным файловым менеджером путем размещения двух панелей рядом друг другом. Мало того, есть возможность создания как горизонтального, так и вертикального разбиения рабочих панелей.
Данная возможность позволяет организовать одновременную работу сразу с несколькими панелями.
3.2. Заголовок
Заголовок должен содержать наименование текущей активной панели и наименование программы.
3.3. Системное меню
Системное меню должно включать следующие операции:
(TBD)
3.4. Панель быстрого вызова
Кнопки быстрого вызова модулей (Навигационный менеджер в стиле Windows Explorer, Ортодоксальный менеджер (двух панельный в стиле Norton Commander), Браузер) и включения/выключения панели навигации.
3.5. Панель навигации
Панель навигации представляет собой иерархический список с различными режимами представления:
По умолчанию эта панель выключена. Соответственно на панели быстрого запуска и в системном меню должна быть кнопка включения выключения данной панели, а также режима ее отображения.
Рассматриваются варианты объединения в данной панели всех возможных режимов, либо создания отдельной панели для каждого режима отдельно. Во втором случае можно будет использовать встроенный механизм чередования панелей или механизм
«быстрых» панелей, когда они не занимают место на экране, а вызываются кнопками по необходимости.
В начальном прототипе должна быть реализована автоматическая загрузка локальной файловой системы. Данная панель должна включать меню (кнопки) настройки файловых систем. Например добавление / удаление ftp ресурсов. (TBD)
3.6. Панель навигационного файлового менеджера
Рабочая панель навигационного файлового менеджера включает в себя следующие элементы:
3.6.1. Заголовок
Заголовок должен выводить наименование текущей панель. Формат вывода (TBD).
3.6.2. Панель адреса
Адресная строка должна состоять из кнопок (или гипер-линков) для быстрого перехода в любой родительский каталог.
-
Кнопки более интуитивно понятны для неподготовленных пользователей;
-
Гиперлинки предпочтительны для подготовленных пользователей так как имеют более компактное представление, есть возможность набора адреса вручную, режима выделения и копирования части подстроки адреса в буфер обмена. По умолчанию адресная
строка показывается в текстовом режиме, перевод строки адреса в режим гиперлинков осуществляется по нажатию кнопки «Ctrl».
В случае, когда полная строка адреса не помещается в панель адреса должны активироваться кнопки контекстного меню со списком невидимых в данный момент адресов.
Кнопка родительского (root) каталога должна быть доступна всегда. Крайняя левая кнопка панели адреса предназначена для изменения режима отображения навигационной панели с деревом каталогов каталогов. Начальное состояние навигационной панели
должно задаваться в диалоге настроек. По умолчанию данная панель должна быть спрятана.
По умолчанию выбираем представление в виде кнопок с возможностью выбора отображения адресной строки в виде гиперлинков.
3.6.3. Выпадающий список адресов
Выпадающий список адресов должен показывать дерево родительских папок для текущего каталога и дерево доступных файловых систем.
3.6.4. Кнопки операций
Данная панель должна содержать кнопки доступных действий над файлами. Если операция в данный момент недоступна, то кнопка должна менять статус на «недоступна» и наоборот.
Должны быть реализованы следующие операции:
3.6.4.1. Copy to (Копировать в ...)
Если будет открыта только одна панель файлового менеджера, то должен быть вызван системный диалог выбора целевого каталога для копирования.
Если будет открыто несколько панелей файловых менеджеров, то должен быть вызван диалог выбора целевого каталога позволяющий выбрать один из доступных открытых каталогов, либо системный диалог выбора целевого каталога. (TBD)
3.6.4.2. Move to (Переместить в ...)
Если будет открыта только одна панель файлового менеджера, то должен быть вызван системный диалог выбора целевого каталога.
Если будет открыто несколько панелей файловых менеджеров, то должен быть вызван диалог выбора целевого каталога позволяющий выбрать один из доступных открытых каталогов, либо системный диалог выбора целевого каталога для перемещения файлов.
(TBD)
3.6.4.3. Delete (Удалить)
Перед удалением выбранных файлов и папок должно быть выдано диалоговое окно подтверждения удаления.
3.6.4.4. Properties (Свойства объекта)
Должен быть выведен диалог свойств объекта (TBD).
3.6.5. Навигационная панель
Данная панель должна выводить дерево выбранной в данный момент файловой системы. Выводиться должны только папки. При перемещении по папкам или выборе любой папки в панели списка должно отображаться ее содержимое. Аналогично выбранная папка
должна синхронизироваться при перемещении по иерархии файлов и папок в панели списка.
3.6.6. Панель статуса (информационная панель)
Предназначена для вывода информации по текущему каталогу и списку объектов (TBD).
3.6.7. Панель списка файлов
Панель списка файлов является основной панелью работы с файлами. Должны быть доступны различные форматы вывода списка объектов. Формат должен выбираться из меню. Выбранный в данный момент формат должен быть выделен.
3.6.7.1. Thumbnails (В виде миниатюр)
3.6.7.2. Tiles (В несколько колонок)
3.6.7.3. Icons (В виде значков)
3.6.7.4. List (Список с описанием)
3.6.7.5. Details (Подробный список)
Первым элементом в режиме подробного списка должен быть указатель на родительский элемент (если есть родительский элемент, например «папка»).
Заголовок списка должен включать контекстное меню настройки списка отображаемых колонок с возможностью загрузки предустановленных вариантов типа ”Classic” и ”Commander”, а так же элемент меню «More...»
расширенной настройки.
3.6.7.7. Стиль “Commander”
3.7. Панель статуса
Данная панель предназначена для вывода информации о текущей операции. (TBD)