
- •153003, Г. Иваново, ул. Рабфаковская, 34
- •Цель лабораторного практикума
- •Содержание лабораторного практикума
- •Тема 1 (2 часа). Постановка задачи
- •Формализация контекста использования
- •Формализация объективных критериев успеха
- •Определение необходимой функциональности системы
- •Анализ целей
- •Анализ действий пользователей
- •Низкоуровневые и высокоуровневые функции
- •Формализация бизнес-ролей пользователей
- •Формализация функциональности
- •Формализация сценариев действий пользователей
- •Обзор интерфейса конкурирующих систем
- •Формализация привычек и ожиданий пользователей
- •Тема 2 (6 часа). Проектирование интерфейса
- •Проектирование структуры экранов системы
- •Выделение независимых блоков
- •Проектирование навигационной системы
- •Низкоуровневое проектирование
- •Проектирование основных экранов
- •Проектирование второстепенных экранов
- •Проектирование компонентов
- •Тема 3 (2 часа). Тестирование интерфейса. Постановка экспериментов в целях выявления качества дизайна исследуемого продукта
- •Тема 4 (2 часа). Разработка системы помощи и документации. Зачет по системе
- •Классификация систем помощи
- •Классификация инструментов по созданию систем помощи
- •Использование инструментов по созданию систем помощи
- •Варианты заданий
- •Библиографический список
- •1. Цель лабораторного практикума 3
- •2. Содержание лабораторного практикума 3
- •2.1. Тема 1 (2 часа). Постановка задачи 3
- •2.2. Тема 2 (6 часа). Проектирование интерфейса 14
Низкоуровневые и высокоуровневые функции
Существует два принципиально разных подхода к определению функциональности системы. При первом подходе система снабжается максимальным количеством функций, при этом результаты многих из них являются суммой результатов других функций. При втором подходе разработчик снабжает систему набором базовых условно-элементарных функций, из которых пользователь может «собрать» более сложные необходимые ему функции.
Оба подхода имеют как недостатки, так и достоинства. Подход, при котором количество функций ограничено, позволяет упрощать интерфейс, но при этом от пользователя требуется понимание, как из многих низкоуровневых функций «собирать» функции более сложные. Подход, при котором помимо низкоуровневых функций есть высокоуровневые, позволяет потенциально обеспечивать большую скорость работы (за счет отсутствия пауз между низкоуровневыми функциями), но зато от пользователя требуются знания о том, где эти высокоуровневые функции найти и как с ними работать, при этом они перегружают интерфейс. Кроме того, остается возможность компромисса: всегда можно включить в систему средства автоматизации, чтобы пользователи получали возможность создавать (и распространять) свои метафункции. Этот подход является оптимальным.
Пример
К базовым функциям нового компонента относится измененный, более привлекательный внешний вид элементов CheckBox и RadioButton (включая цветную рамку вокруг элемента, изображение check-значка, подсветку неактивного элемента, подсветку элемента при наведении на него мышью). Эти базовые возможности пользователь может комбинировать, придавая тем самым соответствие интерфейса компонента общей интерфейсной концепции своей системы.
Формализация бизнес-ролей пользователей
Функциональность любой системы разделяется на несколько ролей пользователей: разным пользователям нужны разные блоки функциональности (в системах автоматизации эти роли называются бизнес-ролями). Навигация по системе прямо зависит от этих ролей, поскольку в пределах одной роли в навигацию нежелательно включать функции из чужой роли. Соответственно на этом этапе выделяются основные роли пользователей с относящимися к этим ролям функциями. Также на этом этапе проводятся собеседования с каждым из представителей определенной роли на предмет выявления особенностей данной роли и выяснения, какие дополнительные (по отношению к формальным) возможности следует предусмотреть.
На входе – доступ к пользователям, экспертам и проектной документации, знание основных аспектов предметной области.
На выходе – описание бизнес-ролей пользователей.
Пример
Мы уже выделили две группы пользователей: собственно пользователи и разработчики. Пользователи имеют доступ к работе с данными компонентами, необходимыми для форматирования текста, ввода данных в их бизнес-программы и т.п.
Категория пользователей «разработчики программ» имеет доступ к свойствам и методам компонента, которые добавляют ему требуемую функциональность, и могут настраивать поведение компонента в процессе разработки своих систем. В данном случае разработчики могут менять внешний вид компонентов и их реакции на указатель «мышь».