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