Начальная
фаза разработки: концептуальный дизайн В этой фазе разработки вы должны
решить какой интерфейс лучше всего будет
подходить для достижения ваших целей - текстовый,
графический или мультимедиа. Затем выберите
наиболее подходящую структуру взаимодействия.
Например, для графического интерфейса
пользователя выбор следующий:
- Множественные окна
- MDI (много-документный интерфейс)
- Множественные фреймы
- Неструктурированное взаимодействие:
экраны с гиперссылками
Различные структуры
взаимодействия обеспечивают разные степени
гибкости для пользователей. Обычно, чем гибче
структура, тем больше она требует от
пользователя обучения, понимания, и времени на
работу с окнами (открыть, закрыть, разместить и
т.д.). Основывайте ваш выбор на той собранной вами
информации о пользователях и ситуациях, в
которых они работают, а не просто делайте вашу
программу похожей на среду разработки. В конце
концов, среда разработки была разработана для
вас, а не для пользователей.
Затем создайте концептуальную
модель программы. Под концептуальной моделью я
имею в виду чертеж, схему, которая показывает
главные элементы, процессы и связи в программе с
точки зрения пользователя. Вам нужно другое
определение концептуальной модели? Как насчет
такого: "абсолютный минимум, который
пользователь может понять о программе, и тем не
менее успешно пользоваться ею". Ваш дизайн -
ваши окна, меню и текст - должен передать это
понимание пользователю. Вот почему вы должны
разработать детальную концептуальную модель.
Если у вас есть только нечеткая модель того, что
вы пытаетесь сказать пользователю, он в конце
концов останется с еще более нечеткой идеей того
что делает ваша программа и как она работает.
Для выполнения начальной фазы
разработки погрузитесь целиком в задачи
пользователей и создайте бумажный прототип навигационной
модели. Навигационная модель показывает,
как вы планируете распределять функции или
задачи между окнами вашей программы.
Навигационная модель определяет как
пользователям смогут перемещаться как между
различными задачами так и внутри отдельной
задачи. Например, можно ли будет оставить
частично завершенную задачу и начать другую.
Для того чтобы создать хороший
интерфейс, на каждой стадии разработки
необходима обратная связь от пользователей.
Чтобы оценить концептуальную модель
программы, вы можете просто показать ее схему
пользователям и попросить объяснить ее вам.
Если у них возникнут трудности, значит вы еще не
достигли точки зрения пользователя в понимании
проблемы.
Если вы пропустите раннюю
фазу разработки, ваш интерфейс может страдать от
следующих проблем.
- Несоответствие группам
пользователей
- Сложность в обучении
- Неадекватная степень гибкости
- Нецелостное или непредсказуемое
использование разных типов окон
Разработка на основе задач
пользователя
Итак, ваши окна пока не
имеют содержания. Вы знаете для чего нужно
каждое, но для того чтобы наполнить их элементами
управления, вам необходимо четкое понимание
задач пользователя. Когда вы проводите интервью,
задавайте открытые вопросы, чтобы пользователь
мог дать вам ответ на основе своих действий.
"Пожалуйста покажите мне какие типы
документов вы храните на своем компьютере" -
гораздо лучший вопрос чем "Используете ли вы
текстовый редактор для заметок?".
Для создания дизайна,
представьте в деталях, как бы пользователь
выполнил данную задачу от начала до конца.
Отметьте те места, в которых ваша программа может
помочь ему в его работе. Затем сконструируйте
окна, основываясь на своих заметках. И снова,
проверьте результаты, проведя простые тесты с
окнами или их набросками.
Например, прорабатывая задачи
для программы планирования расписаний я
обнаружила, что учителя обычно создают планы
уроков для нескольких предметов даже если они
еще не знают в какой день и в какое время будут
проходить занятия. Исходная программа, которую я
оценивала, имела ориентированный на расписание
подход, встроенный в базу данных, так что учителя
могли планировать уроки только назначив их дату
и время.
Если вы не будете использовать
этот подход, вы рискуете создать программу, в
которой пользователи будут перемещаться от
одного окна к другому для того, чтобы выполнить
свою задачу. Процесс разработки, основанный на
задачах пользователей особенно важен, когда ваша
программа предназначена для того, чтобы помогать
пользователям работать быстрее и эффективнее. |