пятница, 12 апреля 2013 г.

Характеристики и атрибуты качества программного обеспечения по ISO 9126

    Стандарт ISO 9126 предлагает использовать для описания внутреннего и внешнего качества ПО многоуровневую модель. На верхнем уровне выделено 6 основных характеристик качества ПО. Каждая характеристика описывается при помощи нескольких входящих в нее атрибутов. Для каждого атрибута определяется набор метрик, позволяющих его оценить. Множество характеристик и атрибутов качества согласно ISO 9126 показано на рисунке.


    

    1. Функциональность (functionality) - способность ПО в определенных условиях решать задачи, нужные пользователям. Определяет, что именно делает ПО, какие задачи оно решает.
  • Функциональная пригодность (suitability) - способность решать нужный набор задач.
  • Точность (accuracy) - способность выдавать нужные результаты.
  • Способность к взаимодействию (interoperability) - способность взаимодействовать с нужным набором других систем.
  • Соответствие стандартам и правилам (compliance) - соответствие ПО имеющимся индустриальным стандартам, нормативным и законодательным актам, другим регулирующим нормам.
  • Защищенность (security) - способность предотвращать неавторизированный, т.е. без указания лица, пытающегося его осуществить, и неразрешенный доступ к данным и программам. 

  2. Надежность (reliability)  -  способность  ПО  поддерживать  определенную  работоспособность в заданных условиях. 
  • Зрелость, завершенность (maturity) - величина, обратная частоте отказов ПО. Обычно измеряется средним временем работы без сбоев и величиной, обратной вероятности возникновения отказа за данный период времени.
  • Устойчивость к отказам (fault tolerance) - способность поддерживать заданный уровень работоспособности при отказах и нарушениях правил взаимодействия с окружением. 
  • Способность к восстановлению (recoverability): Способность восстанавливать определенный уровень работоспособности и целостность данных после отказа, необходимые для этого время и ресурсы. 
  • Соответствие стандартам надежности (reliability compliance).

    3. Удобство использования (usability) или практичность - способность ПО быть удобным в обучении и использовании, а также привлекательным для пользователей.
  • Понятность (understandability) - показатель, обратный к усилиям, которые затрачиваются пользователями на восприятие основных понятий ПО и осознание их применимости для решения своих задач.
  • Удобство обучения (learnability) - показатель, обратный усилиям, затрачиваемым пользователями на обучение работе с ПО. 
  • Удобство работы (operability) - показатель, обратный усилиям, предпринимаемым пользователями для решения своих задач с помощью ПО. 
  • Привлекательность (attractiveness) - способность ПО быть привлекательным для пользователей. 
  • Соответствие стандартам удобства использования (usability compliance).

    4. Производительность (efficiency) или эффективность - способность ПО при заданных условиях обеспечивать необходимую работоспособность по отношению к выделяемым для этого ресурсам. Можно определить ее и как отношение получаемых с помощью ПО результатов к затрачиваемым на это ресурсам всех типов.
  • Временная эффективность (time behaviour) - способность ПО выдавать ожидаемые результаты, а также обеспечивать передачу необходимого объема данных за отведенное время.
  • Эффективность использования ресурсов (resource utilisation) - способность решать нужные задачи с использованием определенных объемов ресурсов определенных видов. Имеются в виду такие ресурсы, как оперативная и долговременная память, сетевые соединения, устройства ввода и вывода и пр. 
  • Соответствие стандартам производительности (efficiency compliance).

    5. Удобство сопровождения (maintainability) - Удобство проведения всех видов деятельности, связанных с сопровождение программ.
  • Анализируемость (analyzability) или удобство проведения анализа - удобство проведения анализа ошибок, дефектов и недостатков, а также удобство анализа необходимости изменений и их возможных последствий.
  • Удобство внесения изменений (changeability) - показатель, обратный трудозатратам на выполнение необходимых изменений. 
  • Стабильность (stability) - показатель, обратный риску возникновения неожиданных эффектов при внесении необходимых изменений. 
  • Удобство проверки (testability) - показатель, обратный трудозатратам на проведение тестирования и других видов проверки того, что внесенные изменения привели к нужным результатам. 
  • Соответствие стандартам удобства сопровождения (maintainability compliance).

    6. Переносимость (portability) - способность ПО сохранять работоспособность при переносе из одного окружения в другое, включая организационные, аппаратные и программные аспекты окружения.
    Иногда эта характеристика называется в русскоязычной литературе мобильностью. Однако термин "мобильность" стоит зарезервировать для перевода "mobility" — способности ПО и компьютерной системы в целом сохранять работоспособность при ее физическом перемещении в пространстве.
  • Адаптируемость (adaptability) - способность ПО приспосабливаться различным окружениям без проведения для этого действий, помимо заранее предусмотренных.
  • Удобство установки (installability) - способность ПО быть установленным или развернутым в определенном окружении. 
  • Способность к сосуществованию (coexistence) - способность ПО сосуществовать с другими программами в общем окружении, деля с ними ресурсы. 
  • Удобство замены (replaceability) другого ПО данным - возможность применения данного ПО вместо других программных систем для решения тех же задач в определенном окружении. 
  • Соответствие стандартам переносимости (portability compliance).


    Помимо перечисленных характеристик и атрибутов качества, стандарт ISO 9126:2001 определяет наборы метрик для оценки каждого атрибута. Вот некоторые примеры таких метрик.
  1. Полнота реализации функций — процент реализованных функций по отношению к перечисленным в требованиях. Используется для измерения функциональной пригодности.
  2. Корректность реализации функций — правильность их реализации по отношению к требованиям. Используется для измерения функциональной пригодности. 
  3. Отношение числа обнаруженных дефектов к прогнозируемому. Используется для определения зрелости. 
  4. Отношение числа проведенных тестов к общему их числу. Используется для определения зрелости. 
  5. Отношение числа доступных проектных документов к указанному в их списке. Используется для измерения удобства проведения анализа. 
  6. Наглядность и полнота документации. Используется для оценки понятности.

1 комментарий: