- •Глава 5
- •5.1. Коллективный подход к разработке
- •5.2. Разработка, ориентированная на обучающихся
- •5.3. Четыре этапа разработки
- •5.4. Итерационная природа разработки пользовательского интерфейса
- •5.5. Первый этап: сбор и анализ информации, поступающей от пользователей
- •5.6. Второй этап: разработка пользовательского интерфейса
- •5.7. Третий этап: построение пользовательского интерфейса
- •5.8. Четвертый этап: подтверждение качества пользовательского интерфейса
- •5.9 Примеры результатов выполнения работ на этапах разработки пользовательского интерфейса
5.9 Примеры результатов выполнения работ на этапах разработки пользовательского интерфейса
Рассмотрим задачу гостиничного делопроизводства: клиенты могут выполнять бронирование номеров и заселяться в них, менеджеры должны выполнять регистрацию всех заказов.
Существует несколько задач, которые могут быть решены с помощью программы. Результаты каждого шага должны содержать детальную вспомогательную информацию по ее источникам, способам вычисления результатов, а при необходимости и по доступу к источнику данных.
В данной задаче пользователями программного продукта являются и клиенты, и представители сферы обслуживания. Результаты анализа первого этапа могут быть представлены в табличном виде, как показано в табл. 5.2.
Таблица 5.2 Первый этап: результаты анализа требований,
предъявляемых пользователями
Результаты анализа |
Клиенты |
Представители обслуживающего персонала |
Первый шаг: профиль пользователя |
Мужчины и женщины |
Мужчины и женщины |
Взрослые |
Взрослые |
|
Жители разных стран |
Жители разных стран |
|
Русско- и англоговорящие |
Русско- и англоговорящие |
|
Минимальное владение ЭВМ |
Средний уровень владения ЭВМ |
|
Предварительные знания по программе отсутствуют |
Средний уровень владения программой |
|
Второй шаг: задачи, стоящие перед пользователями |
Просмотр информации по гостинице и тарифам |
Просмотр информации по гостинице и тарифам |
Просмотреть и обновить бронирование |
Просмотреть и обновить бронирование |
|
Сохранить информацию о бронировании |
Проверить информацию о бронировании |
|
Третий шаг: . требования пользователей |
Требуется небольшой (или никакого) тренинг |
Требуется минимальный тренинг |
Требуется мало времени |
Возможность использовать программу, одновременно общаясь с клиентом по телефону |
|
Доступность 24 часа в сутки |
Стиль интерфейса аналогичный продукту клиента |
130
131
Человеко-машинное взаимодействие: теория и практика
Теория
Продолжение табл. 5.2
Окончание табл. 5.2
Результаты анализа |
Клиенты |
Представители обслуживающего персонала |
|
Возможность просмотра и вывода графической и текстовой информации о гостиницах |
Потребность в минимальной технической поддержке |
Успешное выполнение задачи |
Время ответа системы, допустимое для ожидающего клиента |
|
Отсутствие необходимости в другом инструментарии и программах |
Выполнение задачи может быть прервано и аннулировано |
|
Четвертый шаг: среда пользователя |
ПК-программа, использующая локальную базу данных |
Сетевые ПК, используемые в среде обслуживания клиентов |
ПК-Internet-программы, использующие системную базу данных |
Несколько представителей обслуживающего персонала, использующие системы одновременно |
|
Возможность использования дома, в офисе или в путешествии |
Несколько представителей обслуживающего персонала, имеющие доступ к сетевой базе данных одновременно |
|
Минимальные требования к компьютерной системе и телефонному обслуживанию |
Стандартизированные ПК, рабочие станции и телефонные системы |
Результаты анализа |
Клиенты |
Представители обслуживающего персонала |
Пятый шаг: соответствие требований задачам, стоящим перед пользователем |
Фотографии гостиниц, карты и другая информация должны быть доступны для просмотра и вывода на печать в соответствии с требованиями клиента |
Сетевая ПК система должна быть в состоянии обслужить несколько запросов одновременно |
Профиль клиента и информация по состоянию счета должны обновляться для соответствия его требованиям |
Аналогичные задачи должны решаться представителями сферы обслуживания и клиентами с помощью аналогичного интерфейса для того, чтобы первые имели возможность эффективно ответить на вопросы клиентов |
Итерационный метод подразумевает возврат к этапу анализа требований пользователя, чтобы проверить, не изменились ли в процессе проектирования и разработки профиль пользователей, задачи, характеристики среды или сами требования. Для построения качественного продукта вы должны периодически возвращаться к первому этапу, чтобы обновлять сведения о пользователях.
В табл. 5.3 приведены некоторые цели и задачи, стоящие перед системой. Именно они должны определять процесс разработки пользовательского интерфейса.
В табл. 5.4 представлены сценарии и задачи, стоящие перед пользователями системы.
В табл. 5.5 проиллюстрированы сценарии после идентификации объекта и действий для системы.
132
133
Человеко-машинное взаимодействие: теория и практика
Теория
Таблица 5.3 Второй этап: цели и задачи, стоящие перед продуктом
Цели и задачи, стоящие перед продуктом |
Клиенты |
Представители сферы обслуживания |
Удобство применения |
Цель: пользователи получают возможность использовать программу для выполнения своих задач |
Цель: пользователи получают возможность использовать программу для выполнения своих задач |
Задача: 100% потребителей смогут использовать систему для решения своей задачи уже после первой попытки |
Задача: 100% потребителей смогут использовать систему для решения своей задачи после прохождения соответствующего тренинга |
|
Эффективность |
Цель: деятельность пользователей станет более продуктивной (по сравнению с ручным методом работы) |
Цель: деятельность пользователей станет более продуктивной (по сравнению с ручным методом работы) |
Задача: 100% пользователей выполнят стоящие перед ними задачи в течение заданного промежутка времени |
Задача: 100% пользователей выполнят стоящие перед ними задачи в течение заданного промежутка времени |
|
Легкость в освоении |
Цель: пользователям потребуется минимальный тренинг |
Цель: пользователям потребуется минимальный тренинг |
Задача: пользователи будут в состоянии успешно работать с продуктом после прохождения соответствующего обучения |
Задача: пользователи будут в состоянии успешно работать с продуктом после прохождения 4-часового тренинга |
Цели и задачи, стоящие перед продуктом |
Клиенты |
Представители сферы обслуживания |
Оценка пользователями качества продукта |
Цель: пользователи будут удовлетворены качеством продукта |
Цель: пользователи будут удовлетворены качеством продукта |
Задача: пользователи будут высоко оценивать степень своего удовлетворения качеством продукта |
Задача: пользователи будут высоко оценивать степень своего удовлетворения качеством продукта |
Таблица 5.4
Второй этап: сценарии действий и задачи, стоящие перед пользователями
Клиенты |
Представители обслуживающего персонала |
Сценарий: клиент желает обновить телефонный номер в профиле и посмотреть, были ли отмечены последние заезды в гостиницу; клиент также отсылает карточку с комментариями на фирму |
Сценарий: клиент по телефону желает проверить, есть ли у него право бесплатного заезда в гостиницу, а также зарезервировать комнату в гостинице; клиент желает получить по факсу подтверждение бронирования и права на бесплатный заезд |
Задачи, стоящие перед клиентом: ввести номер счета в Mandel Manor Club и пароль; открыть профиль клиента; обновить телефонный номер; открыть сводку о состоянии счета; просмотреть последние записи о заездах в гостиницу; заполнить карточку |
Задачи, стоящие перед представителем обслуживающего персонала: найти номер счета члена клуба Mandel Manor Club; подтвердить пароль члена клуба; открыть сводку о состоянии счета; проверить, есть ли у клиента право на бесплатный заезд; просмотреть гостиницы, выбранные клиентом; забронировать заезд для клиента; |
134
135
Человеко-машинное взаимодействие: теория и практика
Теория
Окончание табл. 5.4
Клиенты |
Представители обслуживающего персонала |
с комментариями; отправить карточку |
отправить клиенту по факсу подтверждение бронирования и возможности бесплатного заезда |
Сценарий: клиент желает получить сведения о гостиницах, вывести на печать информацию о гостиницах и забронировать заезд для своей семьи на отпуск |
Сценарий: клиент звонит по телефону для того, чтобы исправить ошибку в стоимости комнаты, оплаченной во время последнего заезда в гостиницу, и получить возмещение на кредитную карточку |
Задачи, стоящие перед клиентом: ввести номер счета и пароль; получить сведения о гостиницах; отпечатать фотографии гостиниц, карту и маршрут из аэропорта; проверить доступность гостиницы; проверить расценки; забронировать две комнаты для семейного отпуска |
Задачи, стоящие перед представителем обслуживающего персонала: найти номер счета; найти запись, подтверждающую заезд в гостиницу; проверить истинность исправления в стоимости; исправить запись, подтверждающую заезд в гостиницу; кредитовать возмещение на членскую кредитную карточку;отправить по факсу исправленную запись о заезде в гостиницу, а также квитанцию о возмещении, перечисленном на кредитную карточку |
Таблица 5.5
Второй этап: определение существительных и глаголов в сценариях и задачах
Клиенты |
Представители обслуживающего персонала |
Сценарий: клиент желает обновить |
Сценарий: клиент по телефону желает |
|
Представители обслуживающего персонала |
|
проверить, есть ли у него право бесплатного заезда в гостиницу, а также забронировать комнату в гостинице; клиент желает получить по факсу подтверждение бронирования и права на бесплатный заезд. Задачи, стоящие перед представителем обслуживающего персонала: найти номер счета; открыть сводку о состоянии счета; проверить, есть ли у клиента право на бесплатный заезд; просмотреть гостиницы, выбранные клиентом; забронировать заезд для клиента; отправить клиенту по факсу подтверждение бронирования и премии
|
|
Сценарий: клиент звонит по телефону для того, чтобы исправить ошибку в стоимости комнаты, оплаченной во время последнего заезда в гостиницу. Задачи, стоящие перед представителем обслуживающего персонала: найти номер счета; найти запись, подтверждающую заезд в гостиницу; проверить истинность исправления в стоимости; исправить запись, подтверждающую заезд в гостиницу
|
136
137
Человеко-машинное взаимодействие: теория и практика
Теория
В табл. 5.6 приведена часть окончательного варианта списка объектов и данных для рассматриваемой системы.
Таблица 5.6 Второй этап: список объектов, типов объектов и действий
Объекты и данные |
Тип объекта |
Действия, не характерные для отдельных объектов |
Список клиентов |
Контейнер |
|
Клиент |
Контейнер/ данные |
Позвонить |
Список Mandel Manor Hotels |
Контейнер |
Аннулировать |
Представитель сферы обслуживания |
Данные |
Исправить |
Профиль клиента: номер счета пароль номер телефона |
Данные Данные Данные Данные |
Кредитовать Дебетировать |
Заезд в гостиницу |
Данные |
|
Ведомость о заезде в гостиницу |
Данные |
Просмотреть |
Список забронированных мест |
Данные |
|
Тарифы в гостинице |
Данные |
Выкупить |
Свободные места в гостинице |
Данные |
Запросить |
Специальная информация о гостинице |
Данные |
Отправить |
Карточка для комментариев |
Данные |
Обновить |
138
Окончание табл. 5.6
Объекты и данные |
Тип объекта |
Действия, не характерные для отдельных объектов |
Кредитная карточка |
Устройство |
Подтвердить |
Устройство поиска клиента |
Устройство |
Проверить вид |
Принтер |
Устройство |
|
Факс |
Устройство |
|
Мусорное ведро |
Устройство |
|
При уточнении содержания списка объектов сначала необходимо обдумать, к какому типу относится каждый из объектов. Вспомните определения типов объектов: данные, контейнер и устройство. На этой стадии у вас пока может не быть ясного представления обо всех объектах. Как уже было сказано, иногда сложно определить, являются ли некоторые объекты (например, объект «клиент») объектами-данными или объектами-контейнерами. Имеется масса сведений, связанных с клиентами, но в интерфейсе пользователи могут принимать клиента за объект-контейнер, содержащий другие объекты, к которым могут относиться части данных о клиентах, например «профиль клиента» или «счет клиента». Подобные моменты выясняются в ходе дискуссий непосредственно с пользователями на этом этапе разработки интерфейса.
Может показаться, что после этого шага у вас уже есть окончательный список объектов и действий, но нет гарантии, что вы еще не раз вернетесь к данному этапу (вспомните об итерации!) для оптимизации и совершенствования списка.
Все объекты вашего списка необязательно станут объектами интерфейса в финальной разработке. Некоторые из них могут превратиться в специфические виды основных объектов. Гостиница, конечно, будет ключевым объ-
139
Человеко-машинное взаимодействие: теория и практика
ектом в проекте. Однако другие элементы, например сведения о гостинице, фотографии, карты, тарифы, информация о свободных местах, могут представлять собой данные, содержащиеся в объекте «гостиница» или являющиеся отдельными его представлениями.
Теперь, имея некоторое представление о том, какие объекты могут потребоваться пользователям, начнем вычислять, как эти объекты взаимосвязаны. Можно построить схему отношений между ними.
Схема отношений между объектами пользовательского интерфейса отличается от традиционных схем программирования. Объекты пользовательского интерфейса необязательно параллельны объектам программирования или бизнес-объектам (рис. 5.6).
Рис. 5.6. Схема отношений между объектами
Далее продолжайте третий шаг. Подумайте о том, как пользователи будут напрямую манипулировать объектами — с помощью мыши или других устройств ввода, и заполните матрицу прямого манипулирования объектами (рис. 5.7).
Перечислите все ваши ключевые объекты в левой колонке матрицы и верхнем ряду. Подумайте о том, какие объекты можно перемещать (исходные объекты) и сбрасывать на другие объекты (конечные объекты). Если имеет смысл переместить какой-либо объект и сбросить его на другой, заполните соответствующую ячейку результатом
140
141
Человеко-машинное взаимодействие: теория и практика
Теория
прямого манипулирования. Например, сводка о состоянии счета может быть перемещена и сброшена на значок принтера, таким образом, будет отпечатана ее копия.
Обратите внимание, что большинство ячеек этого схематического представления не заполнено. Не все объекты являются кандидатами для операции перетаскивания и сброса. Некоторые объекты всегда используются определенным способом: либо как исходный, либо как конечный объект.
Устройства (принтер, факс и мусорная корзина), как правило, будут представлять собой только конечные объекты для операций перемещения и сбрасывания. Действия, выполняемые при сбрасывании объектов, записываются в колонку для конечных объектов.
Посмотрите на системные объекты (списки клиентов, забронированных мест и гостиниц). Пользователи работают с объектами, представленными в этих списках, а не с самими списками. Такие объекты из списков не являются исходными объектами для прямого манипулирования, поэтому в их строке матрицы никаких действий не будет. Например, клиент из списка клиентов может быть перемещен в резервирование для переноса туда информации о клиенте и его пристрастиях в области гостиниц. Пользователи имеют возможность перемещать объекты в эти списки для выполнения таких действий, как бронирование номеров или добавление клиента в систему.
В табл. 5.7 приведены варианты содержания всплывающего меню для этих объектов. Список бронирования является контейнером, следовательно, его действия из всплывающего меню соответствуют объекту-контейнеру.
Таблица 5.7 Варианты всплывающих меню для объектов
Объект |
Вариант из всплывающего меню |
Назначение |
Профиль клиента |
Открыть |
Открыть в режиме представления данных. |
Окончание табл. 5.7
Объект |
Вариант из всплывающего меню |
Назначение |
Сводка о состоянии счета |
Переместить Создать новый Вырезать Скопировать Удалить Вывести на печать Отправить Отправить по факсу |
Переместить в другое место. Создать новый объект. Вырезать объект в буфер обмена. Скопировать объект в буфер обмена. Удалить объект. Отпечатать на принтере. Отправить другому лицу. Отправить другому лицу по факсу. |
Список бронирования |
Открыть Содержание... Переместить Создать новый Вырезать Скопировать Удалить Вывести на печать Отправить Отправить по факсу |
Открыть в режиме вида содержания. Просмотреть содержимое, не открывая окна. Переместить в другое место. Создать новый объект. Вырезать объект в буфер обмена. Скопировать объект в буфер обмена. Удалить объект. Отпечатать на принтере. Отправить другому лицу. Отправить другому лицу по факсу. |
Результатом разработки пользовательского интерфейса является выбор формы диалога и разработка сценария диалога. Более подробно данный материал изложен в лабораторной работе 2.