Тестирование на удобство применения является ключевым элементом итерационного процесса разработки. Оно заключается в том, чтобы выдать продукт на руки большому количеству пользователей и посмотреть, смогут ли они с ним работать. Цель тестирования на удобство применения должна заключаться в оценке поведения, действий и степени удовлетворения пользователей. Многие разработчики обращаются к подобному виду тестирования ближе к концу проектирования. Но это слишком поздно для того, чтобы на основании его результатов вносить изменения. Даже если они и вносятся, нельзя быть уверенным в том, что исправленный продукт можно использовать без проведения повторного тестирования.
Разработчики должны обязательно присутствовать при проведении тестирования, и оказать техническую поддержку. Деятельность по оценке удобства применения не прекращается после продажи продукта или внедрения его в производство (таблица 5.1).
Разработка и проектирование программного продукта могут потребовать внедрения множества подсистем, сетей, баз данных, других программ и т.д. Как правило, операционная система, языки программирования и инструментарий для проектирования определяются раньше, еще до разработки пользовательского интерфейса. При создании программного продукта необходимо привязываться к предыдущим версиям, другим продуктам или специальному набору языков программирования и инструментарию. На рисунке 5.4 представлены два различных подхода к разработке интерфейса.
|
|
Таблица 5.1 –Действия по оценке удобства применения продукта
Стадии разработки продукта | Действия по оценке возможности использования |
Определение концепции | Сбор требований пользователей концептуальное определение разработки |
Подтверждение концепции | Концептуальные оценки разработки (бумага/карандаш, прототипы) |
Разработка | Оценки прототипов. Отслеживание и фиксирование проблем, возникающих у пользователей |
Проектирование | Итерационное тестирование на ранних стадиях разработки (индивидуальные модели, ключевые задачи). Итерационное тестирование окончательных вариантов разработки (целиком продукт, все задачи). Отслеживание и фиксирование проблем, возникающих у пользователей |
Распространение пилотной версии. Анкета для пользователей пилотной версии | Наблюдение на месте за пользователями пилотной версии. Обратная связь с пользователями пилотной версии. Отслеживание и фиксирование проблем, возникающих у пользователей |
Внедрение продукта | Наблюдение на месте за пользователями продукта. Обратная связь с пользователями продукта. Отслеживание и фиксирование проблем, возникающих у пользователей. Анкета для пользователей продукта |
Поддержка и обслуживание | Сравнение показателей удобства применения за длительный период времени (1-месячный, 3-месячный, 6-месячный интервалы). Обновление и внесение изменений в тесты. Тест для пилотных разработок новых продуктов |
|
|
Рисунок 5.4 – Два направления разработки интерфейса
При разработке, основанной на вовлечении пользователей, проектируются интерфейсные метафоры, визуальные элементы и способы ввода/вывода, соответственно их пожеланиям.
Историческим примером проектирования компьютерной системы на базе ее интерфейса является Apple Computer. Данный пример стал классикой успешной истории, где сначала был создан проект интерфейса, а затем построен сам компьютер для его поддержания. Персонал компании Apple всегда гордился своим дружественно настроенным к пользователю компьютером Macintosh.
Разработчик пользовательского интерфейса разделяет два очень различных мира – пользователей и разработчиков приложения. Разработка, ориентированная на пользователя, основана на ряде руководящих принципов:
· понимание нужд пользователей является движущей силой всего проекта;
· все, что пользователи видят и к чему прикасаются, должно проектироваться совместными усилиями;
· инновационный проект всегда является результатом интенсивной работы;
· используются команды специалистов в разных областях;
· конкурентоспособный проект требует постоянного акцента на соревнование;
· проект, утвержденный пользователями, управляет разработкой кода;
· принимаемые решения должны основываться на обратной связи с пользователями;
· информация от обратной связи с пользователями должна собираться часто, точно и быстро;
· обратная связь осуществляется как с потенциальными, так и с уже существующими клиентами;
· разработка, ориентированная на пользователя, должна постоянно совершенствоваться.