Читаем статью “Место тестирования среди методов оценки качества ПО”

http://www.software-testing.ru/library/5-testing/117-2008-10-13-19-25-13

Статья 2008 года, но, мне кажется, состояние дел не очень изменилось.

Статья рассматривает несколько моделей качества ПО и останавливается для практических целей на ISO-9126Список целей и аттрибутов качества по ISO-9126:

  • Функциональность
    • Пригодность к определенной работе(suitability)
    • Точность, правильность (accuracy)
    • Способность к взаимодействию (interoperability)
    • Соответствие стандартам и правилам (compliance)
    • Защищенность (security)
  • Надежность
    • Зрелость, завершенность (обратна к частоте отказов) (maturity)
    • Устойчивость к отказам (fault tolerance)
    • Способность к восстановлению работоспособности при отказах (recoverability)
    • Соответствие стандартам надежности (reliability compliance, добавлен в 2001)
  • Практичность, удобство использования
    • Понятность (understandability)
    • Удобство обучения (learnability)
    • Работоспособность (operability)
    • Привлекательность (attractiveness, добавлен в 2001)
    • Соответствие стандартам практичности (usability compliance, добавлен в 2001)
  • Эффективность
    • Временные характеристики (time behaviour)
    • Использование ресурсов (resource utilisation)
    • Соответствие стандартам эффективности (efficiency compliance, добавлен в 2001)
  • Сопровождаемость
    • Анализируемость (analyzability)
    • Изменяемость, удобство внесения изменений (changeability)
    • Риск возникновения неожиданных эффектов при внесении изменений (stability)
    • Контролируемость, удобство проверки (testability)
    • Соответствие стандартам сопровождаемости (maintainability compliance, добавлен в 2001)
  • Переносимость, мобильность
    • Адаптируемость (adaptability)
    • Устанавливаемость, удобство установки (installability)
    • Способность к сосуществованию с другим ПО (coexistence)
    • Удобство замены другого ПО данным (replaceability)
    • Соответствие стандартам переносимости (portability compliance, добавлен в 2001)

Далее предлагается список методов оценки качества (взятый из проекта SCOPE):

  • Тестирование
    • Функциональное тестирование (functional testing)
    • Структурное тестирование, нацеленное на покрытие кода (glass box testing)
    • Лабораторное тестирование удобства использования ПО (laboratory testing)
    • Тестирование производительности (performance testing)
    • Нагрузочное тестирование (load testing, добавлено), стрессовое тестирование (stress testing, добавлено)
  • Изучение документов с целью поиска проблемных мест и проверки соответствия стандартам, стилям, принятым правилам и соглашениям
    • Целенаправленное изучение кода (code inspection)
    • Целенаправленное изучение документации (documents inspection)
  • Формальный анализ
    • Формальное доказательство свойств ПО (formal verification)
    • Анализ алгоритмической сложности (complexity analysis)
  • Анализ
    • Проверка статической семантики языков программирования
    • Автоматический анализ кода (static analysis)
    • Анализ свойств ПО, выполняемый человеком
    • Анализ архитектуры и проекта (architecture review, design review)
    • Анализ процессов разработки (process analysis, добавлен)
  • Измерения
    • Определение метрик ПО, проекта, документации
    • Измерения производительности (benchmarks)
    • Профилирование (profiling, добавлено)
  • Моделирование, использование моделей для оценки свойств ПО
    • Модели использования (usability model)
    • Модели надежности (reliability model)
    • Модели функционирования: проверка на модели (model checking, добавлено), прототипирование (добавлено)

И список артифактов, связанных с разрабатываемым ПО, доступных для анализа:

  • Исполнимый код
  • Исходный код на языке программирования высокого уровня
  • Формальные модели ПО различного рода
  • Проектная документация на естественных языках
  • Пользовательская документация

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

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

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s