Человеческий фактор в программировании.

Что важно.

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

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

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

Три описанных показателя оценивают только отдельные аспекты качества пользовательского интерфейса — главным образом те, которые связаны с эффективностью применения. Для проведения более глубокой оценки эти показатели необходимо объединить с другими параметрами и образовать большой метрический комплект. Хотя измерения не являются ответом на все вопросы разработки, «численная» разработка пользовательского интерфейса, основанная на хорошо продуманных измерениях параметров, позволяет на порядки поднять уровень юзабилити объектно-ори-ентированного программного обеспечения.

По материалам журнала Оbjесt Маgаzinе, сентябрь 1997 г.