Теоретическая часть
Ошибки в программном обеспечении, ухудшающие его эксплуатационные характеристики, приводят к убыткам как потребителей, так и разработчиков. Однако эти характеристики зависят и от множества различных факторов, и одним из самых значительных из них является качество пользовательского интерфейса.
Ошибки в интерфейсе наиболее критичны для таких свойств продукта, как производительность пользователей системы (этот показатель определяется из расчета, сколько единиц продукции в час может создать пользователь), количество человеческих ошибок (как часто пользователь ошибается при выполнении определенной операции), скорость обучения работе с системой и субъективное удовлетворение пользователей. Удобство применения является «клеем», который скрепляет все части, которые должны соединиться вместе, чтобы составить какой-либо продукт.
Согласно определению международной организации стандартизации (ISO), удобство применения – это эффективность, рентабельность и удовлетворение, с которым пользователи смогут выполнить те или иные задачи в заданной среде.
Существуют следующие способы проведения тестирования:
– наблюдение;
– проведение опросов и исследований;
– контекстуальные опросы;
– эвристические оценки;
– работа с выделенными группами;
– лабораторное тестирование.
Каждый из этих способов характеризуется различной степенью сложности и ориентирован на конкретные категории пользователей.
Важной частью любого тестирования является правильный подбор пользователей (и достаточного их числа). Участники теста должны быть типичными представителями пользователей данного продукта. Их количество зависит от многих факторов, в том числе, времени, ресурсов, проекта теста, типа тестируемых задач и вида статистического анализа, который вы планируете провести по полученным результатам.
Прежде чем планировать и проводить тестирование на удобство применения, следует четко определить цели и задачи, стоящие перед ним. Эта ответственность лежит на владельцах продукта, специалистах, составляющих планы, проектировщиках и разработчиках. Цель – это обеспечение преимуществ продукта перед конкурирующими в области простоты изучения, эффективности, гибкости и т. д. Для большей точности и достоверности каждая цель делится на подзадачи.
В качестве факторов, определяющих удобство применения пользователем, можно выделить:
– полезность – степень, до которой продукт позволяет пользователю достичь стоящей перед ним цели. Оценка мотивации пользователя в использовании данного продукта. Оценка полезности, как правило, осуществляется с помощью оценки качества выполненной работы.
– эффективность – насколько успешно продукту удается содействовать пользователю в выполнении стоящей перед ним задачи. Оценка эффективности, как правило, осуществляется с помощью оценки качества выполненной работы.
– простота изучения. Пользователи могут начать использовать продукт, приобретя определенный уровень знаний после прохождения тренинга. Оценка простоты изучения, как правило, осуществляется с помощью оценки качества выполненной работы.
– отношение пользователей – восприятие, ощущения и мнения пользователей по поводу изучения и использования данного продукта. Оценка, как правило, осуществляется в соответствии с отзывами пользователей (устной или письменной обратной связи).
Можно сформулировать следующие рекомендации по тестированию:
– сравнительные тесты могут представить полезную информацию при исследовании удобства применения новых версий программных продуктов;
– используйте задачи общего характера и области известных проблем в качестве базовых задач, чтобы произвести точные сравнительные измерения между версиями продуктов;
– применяйте стандартные измерения удобства применения, например, качество выполнения работ пользователем (выполняемость задач и показатель успешности их выполнения), степень удовлетворенности пользователей (данные по степени удовлетворенности и предпочтений);
– используйте внешних, независимых производителей для планирования и проведения тестирования на удобство применения, чтобы уменьшить субъективность восприятия.
– необходимой частью каждого теста должно являться описание ожидаемых результатов работы программы;
– программе не должна тестироваться её автором;
– организация-разработчик программного обеспечения не должна «единолично» его тестировать;
– необходимо подбирать тесты не только для правильных (предусмотренных) входных данных, но и для неправильных (непредусмотренных);
– при анализе результатов каждого теста необходимо проверять, не делает ли программа того, что она не должна делать.
Существуют стандарты тестирования, которые зависят от того, в какой области применяется разрабатываемое программное обеспечение. Среди них можно выделить:
1. Стандарт ISO 9001. ISO 9001 – стандарт, основанный на принципах контроля качества. В нём задаются ключевые функциональные требования, для каждого из которых нужно сказать, что делается, как сделать то, что сказано, и иметь возможность показать, что было сделано. Реализация данного стандарта в среде программного обеспечения – ISO 9000-3.
2. Стандарт ISO/IEC 12207 и IEEE/EIA 12207. ISO/IEC 12207 – это международный стандарт, описывающий структуру процессов жизненного цикла программного обеспечения от концепции до изъятия из обращения.