Согласно общепринятому определению, качество программного обеспечения в QA-услугах определяет, насколько программный продукт соответствует требованиям. Тем не менее, иногда сложно понять: когда же продукт полностью соответствует требованиям? Как понять, что продукт достиг необходимого качества? Принятие критериев качества помогает решить этот вопрос не только компаниям по тестированию ПО, но и пользователям.
В данной статье мы выделили главные критерии, которые, как минимум, помогут ответить на вопрос: на основе чего были сделаны выводы о высоком качестве продукта?
Критерии качества программного продукта должны быть измеримыми, то есть, должна быть возможность представить их в количественном понятии. Эти измеримые критерии качества помогут согласовать с клиентом желаемое состояние продукта. Кстати, измерение критериев качества специализированной командой тестировщиков во время работы над проектом поможет спрогнозировать некоторые возможные отклонения от запланированной даты релиза.
Возможность программы выполнять свои функции (соответствие требованиям)
Это самый важный критерий качества, потому что пользователи платят деньги именно за функционал ПО. Данный критерий может измеряться двумя опциями:
- Количество открытых функциональных ошибок в продукте. Не должно быть критических или серьезных дефектов в функционале. Все существенные дефекты, которые невозможно исправить, должны быть описаны в документации заказчика.
- Количество пройденных тест-кейсов, если они покрывают все функциональные требования. Другими словами, все функциональные тест-кейсы должны быть пройдены, чтобы убедиться, что продукт соответствует требованиям.
Стабильность системы
Это возможность программного продукта функционировать корректно в течение длительного использования при определенной нагрузке. Это одна из ключевых характеристик ПО, но не всегда понятно, как ее измерить и что важно.
Дабы убедиться, что продукт стабилен, можно смоделировать условия, при которых продукт будет работать для пользователя. К примеру, если известно, что обычно продукт используется беспрерывно в течение 10 часов, необходимо проверить его работоспособность на протяжении 15 часов, так как могут быть отклонения из-за «ужесточения».
Другой пример: веб-приложение, обычное количество пользователей которого не превышает 5000 человек за один раз. В этом случае необходима стабильная работа 7500 пользователей одновременно, так как могут быть отклонения из-за увеличения количества пользователей.
Тестирование стабильности программного продукта должно выполняться при более жестких условиях. Соответственно, необходимо указывать рабочее время и объем нагрузки, который превысит ожидаемые время и объем при нормальных условиях. Кроме того, можно указывать уровень потребления ресурсов. Например, потребление пространства памяти не должно возрастать во время работы приложения.
Производительность программного продукта
Это скорость выполнения стандартных функциональных операций продукта. В этом случае критериями качества могут быть либо среднее время выполнения аналогичных операций конкурентоспособных продуктов, либо индекс может быть определен как «не хуже, чем в предыдущих версиях» (относительно продукта, который был выпущен).
Поддерживаемые платформы (конфигурации)
Все основные функциональные тесты выполняются на всех поддерживаемых платформах. Не всегда можно выполнить каждый доступный тест на всех конфигурациях, которые поддерживаются. Выполнение таких тестов требует много времени, они также позволяют доказать, что в продукте нет конкретных для платформы ошибок. В таком случае нужно включать только те тесты, успех которых зависит от вида платформы.
Количество инцидентов с проданной копией (на одного пользователя)
Это количество запросов в сервисную службу после релиза продукта. Критерий может быть измерен только после релиза. Иными словами, невозможно достичь цели до релиза, но можно поставить задачу снизить ее в следующих релизах. Таким образом можно помочь исправить большинство проблем, возникающих при работе пользователей с продуктом.
Конечно, достижение запланированных показателей не обеспечит отсутствие ошибок, но позволит прийти к выводу, что данный продукт имеет качество, согласованное с заказчиком.
Оставить комментарий