Опубликован: 18.09.2006 | Уровень: специалист | Доступ: свободно | ВУЗ: Московский государственный университет имени М.В.Ломоносова
Лекция 9:

Принципы создания удобного пользовательского интерфейса

Методы разработки удобного программного обеспечения

Одним из наиболее технологичных подходов к разработке удобного пользовательского интерфейса является проектирование, ориентированное на использование (usage-centered design), предложенное Л. Константайном и Л. Локвуд (L. Constantine, L. Lockwood) [3].

Основная идея этого метода — использование специальных моделей, способствующих адекватному определению набора задач, которые необходимо решать пользователям, и способов организации информации, позволяющих упростить их решение.

Список моделей, которые используются в рамках проектирования, ориентированного на использование, следующий:

  • Модель ролей.

    Эта модель представляет собой список ролей пользователей системы. Каждая роль — это группа связанных задач и потребностей некоторого множества пользователей. Модель ролей может определять связи между ролями (роли могут уточнять друг друга, включать друг друга или просто быть похожими) и набор из одной-трех центральных ролей, на которые, в основном, и будет нацелено проектирование.

    Кроме того, каждая роль может быть снабжена профилями, указывающими различные ее характеристики по отношению к контексту использования системы. Профили могут включать следующую информацию.

    • Обязанности — требования к знаниям (о предметной области, о самой системе и пр.), которым пользователь в данной роли, скорее всего, удовлетворяет.
    • Умения — уровень мастерства в работе с системой.
    • Взаимодействия — типичные варианты взаимодействия пользователя в этой роли с системой, включая их частоту, регулярность, непрерывность, концентрацию, интенсивность, сложность, предсказуемость, а также управление взаимодействием (направляется ли оно пользователем, или он только реагирует на действия системы).
    • Информация — источники, объем, направление передачи и сложность информации при взаимодействии с системой.
    • Критерии удобства — специфические критерии удобства работы для данной роли (быстрота реакции, точность указаний, удобство навигации и пр.).
    • Функции — специфические функции, возможности и свойства системы, необходимые или полезные для данной роли.
    • Возможные убытки от ошибок, которые может совершить человек в данной роли, риски использования различных функций.

    Пример модели ролей для пользователей банкомата приведен на рис. 9.5.

    Модель ролей пользователей банкомата

    увеличить изображение
    Рис. 9.5. Модель ролей пользователей банкомата
  • Модель задач.

    Модель задач при проектировании пользовательского интерфейса строится на основе сущностных вариантов использования (essential use cases). Описание сущностного варианта использования отличается от обычного тем, что в рамках его сценариев выделяются только цели и задачи пользователя, а не конкретные его действия.

    Таблица 9.9. Описание обычного (слева) и сущностного (справа) вариантов использования
    Действия Реакции     Задачи Обязательства
    Вставить карту Регистрация в системе
    Считать данные
    Запросить PIN Проверка личности
    Ввести PIN
    Проверить PIN
    Вывести меню Предложение набора операций
    Нажать клавишу выдачи денег Выбор операции выдачи денег
    Запросить сумму
    Ввести сумму
    Вывести сумму
    Запросить подтверждение
    Нажать клавишу подтверждения
    Вернуть карту
    Выдать деньги Выдача денег
    Напечатать чек Выдача чека
    Выдать чек

    Целью такого выделения является освобождение от неявных предположений о наличии определенных элементов интерфейсов, что помогает разрабатывать их именно для решаемых задач. Удобно описывать такие сценарии в виде двух последовательностей — устремлений пользователя (не действий, а задач, которые он хочет решить) и обязательств системы в ответ на эти устремления.

    Пример описания обычного и сущностного варианта использования при работе приведен в табл. 9.

    В результате модель задач представляет собой набор переработанных вариантов использования со связями между ними по обобщению, расширению и использованию. Некоторые из вариантов использования объявляются основными — без них программа потеряет значительное количество пользователей.

    Всякая пользовательская роль при этом должна быть связана с одним или несколькими вариантами использования.

Владислав Нагорный
Владислав Нагорный

Подскажите, пожалуйста, планируете ли вы возобновление программ высшего образования? Если да, есть ли какие-то примерные сроки?

Спасибо!

Лариса Парфенова
Лариса Парфенова

1) Можно ли экстерном получить второе высшее образование "Программная инженерия" ?

2) Трудоустраиваете ли Вы выпускников?

3) Можно ли с Вашим дипломом поступить в аспирантуру?