Метрики качества программного проекта

Содержание

Слайд 2

Введение Процессы разработки, приобретения и внедрения сложных систем Жесткий управленческий контроль характеристик

Введение

Процессы разработки, приобретения и внедрения сложных систем
Жесткий управленческий контроль характеристик

Слайд 3

Качество “You cannot control what you cannot measure”

Качество

“You cannot control what you cannot measure”

Слайд 4

Метрики качества ПО Понятие качества и его многомерность Характеристики качества и

Метрики качества ПО

Понятие качества и его многомерность
Характеристики качества и его

цена
Качество продукта, процесса, его организации
Метрики качества
Иерархия метрик
Статистический анализ
Слайд 5

Понятие качества и его многомерность

Понятие качества и его многомерность

Слайд 6

Понятие качества и его многомерность Качество инфраструктуры Качество ПО Качество данных

Понятие качества и его многомерность

Качество инфраструктуры
Качество ПО
Качество данных
Качество информации


Качество организации
Качество сервиса
Качество процесса
Слайд 7

Качество инфраструктуры Качество аппаратного и поддерживающего программного обеспечения (например, качество операционных систем, компьютерных сетей и т.п.).

Качество инфраструктуры

Качество аппаратного и поддерживающего программного обеспечения (например, качество операционных систем,

компьютерных сетей и т.п.).
Слайд 8

Качество ПО качество программного обеспечения информационной системы.

Качество ПО

качество программного обеспечения информационной системы.

Слайд 9

Качество данных качество данных, использующихся информационной системой на входе

Качество данных

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

Слайд 10

Качество информации качество информации, продуцируемое информационной системой

Качество информации

качество информации, продуцируемое информационной системой

Слайд 11

Качество организации качество менеджмента, включая качество бюджетирования, планирования и календарного контроля

Качество организации

качество менеджмента, включая качество бюджетирования, планирования и календарного контроля

Слайд 12

Качество сервиса качество обучения, системной поддержки и т.п.

Качество сервиса

качество обучения, системной поддержки и т.п.

Слайд 13

Качество процесса качество обслуживаемого бизнес процесса

Качество процесса

качество обслуживаемого бизнес процесса

Слайд 14

Анализ Сферы ответственности заинтересованных сторон in-process end-of-process stakeholder stakeholders Управление качеством

Анализ
Сферы ответственности заинтересованных сторон
in-process end-of-process
stakeholder stakeholders
Управление качеством будет успешным,

если под контролем находятся все измерения качества.

Понятие качества и его многомерность

Слайд 15

НАЧАЛЬНЫЙ ЭТАП ЖЦ Разработчики Заказчики Цель проекта и детализация Набор функций Характеристики качества Характеристики качества

НАЧАЛЬНЫЙ ЭТАП ЖЦ
Разработчики Заказчики
Цель проекта и детализация
Набор функций
Характеристики качества

Характеристики

качества
Слайд 16

Характеристики качества Отсутствие характеристики при договоре Разный учёт или пропуск при испытаниях КОНФЛИКТ!

Характеристики качества

Отсутствие характеристики при договоре
Разный учёт или пропуск при испытаниях
КОНФЛИКТ!

Слайд 17

Дерево характеристик качества Исторически сначала были выделены ряд универсальных и неполных

Дерево характеристик качества

Исторически сначала были выделены ряд универсальных и неполных метрик

на основе следующих шагов

1. Определение множества характеристик, которые, являясь важными для программного обеспечения, допускают несложное измерение и не перекрываются. 

Слайд 18

Дерево характеристик качества 2. Выделение кандидатов в метрики, которые измеряют степень удовлетворения указанным характеристикам.

Дерево характеристик качества

2. Выделение кандидатов в метрики, которые измеряют степень удовлетворения

указанным характеристикам.
Слайд 19

Дерево характеристик качества 3. Исследование характеристик и связанных метрик, для определения корреляции, значимости, степени автоматизируемости.

Дерево характеристик качества

3. Исследование характеристик и связанных метрик, для определения корреляции,

значимости, степени автоматизируемости.
Слайд 20

Дерево характеристик качества 4. Исследование корреляции между метриками, степени перекрытия, зависимости и недостатков.

Дерево характеристик качества

4. Исследование корреляции между метриками, степени перекрытия, зависимости и

недостатков.
Слайд 21

Дерево характеристик качества 5. Рафинирование множества метрик в целом во множество

Дерево характеристик качества

5. Рафинирование множества метрик в целом во множество метрик,

которые в совокупности адекватно отражают качество программного обеспечения.
Слайд 22

Дерево характеристик качества 6. Корректировка каждой метрики в итоговом множестве в

Дерево характеристик качества

6. Корректировка каждой метрики в итоговом множестве в контексте

зафиксированных множеств характеристик и метрик. 
Слайд 23

Дерево характеристик качества Ручной сбор информации, специальные автоматизированные средства или экспертный способ

Дерево характеристик качества

Ручной сбор информации, специальные автоматизированные средства или экспертный способ


Слайд 24

Пример графического изображения качества

Пример графического изображения качества

Слайд 25

Цена качества Цена качества - стоимость в составе продукта, которая может

Цена качества

Цена качества - стоимость в составе продукта, которая может

быть сэкономлена, если все исполнители работают безупречно.
Стоимость работ на доработку
Слайд 26

Цена качества Цена качества

Цена качества

Цена качества

Слайд 27

Цена качества Цена качества

Цена качества

Цена качества

Слайд 28

Цена качества Предупреждением дефектов прежде, чем они произойдут (обучение коллектива , переход на современные технологии)

Цена качества

Предупреждением дефектов
прежде, чем они произойдут
(обучение коллектива ,

переход на современные технологии)
Слайд 29

Измерение, оценивание или ревизия продукта Цена качества

Измерение, оценивание или ревизия продукта

Цена качества

Слайд 30

Цена качества Издержки связанные с проблемами, выявленными до того, как продукт

Цена качества

Издержки связанные с проблемами, выявленными до того, как продукт отправлен

заказчику

Затраты связанные с ошибками, проявившимися при эксплуатации продукта

Слайд 31

Цена качества Совершенствование процесса разработки и внедрения программного обеспечения значительно уменьшают

Цена качества

Совершенствование процесса разработки и внедрения программного обеспечения значительно уменьшают относительную

несогласованную стоимость качества при сохранении согласованной стоимости на прежнем уровне
Инвестиции в совершенствование процесса разработки ведут к значительному сокращению дефектов и дают высокий положительный экономический эффект
Слайд 32

Качество продукта Какие характеристики важнее? Пользователь Применение ПО, его производительность, результаты

Качество продукта

Какие характеристики важнее?
Пользователь
Применение ПО, его производительность, результаты использования.
Разработчик
Требования пользователя

к конечному продукту
Характеристики качества промежуточной продукции
Руководитель
Общее качество
Коммерческие требования
Слайд 33

Качество продукта Оценка качества программного продукта

Качество продукта

Оценка качества программного продукта

Слайд 34

Качество процесса, его организация Модель качества процесса разработки

Качество процесса, его организация

Модель качества процесса разработки

Слайд 35

Качество процесса, его организация Следствия принятой модели: Качество накапливается в продукте

Качество процесса, его организация

Следствия принятой модели:
Качество накапливается в продукте при сложном

производстве кумулятивным образом, причем, вклад в качество, осуществленный на ранних стадиях, имеет более сильное влияние на конечный продукт, чем на более поздних стадиях.
Тестирование и измерение качества должно происходить на всех стадиях жизненного цикла.
Слайд 36

Качество процесса, его организация Подход тотального управления качеством (TQM – Total

Качество процесса, его организация

Подход тотального управления качеством
(TQM – Total Quality

Management)
Стандарты:
ISO 9001 -проектирование в процессе производства
ISO 9000-3, формулирует требования модели качества ISO 9001 к организации процесса разработки программного обеспечения
Слайд 37

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

Качество процесса, его организация

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

качества, не гарантирует выпуска продукта высокого качества.
Отсутствие информации о качестве процесса означает, что качество разрабатываемого продукта является непредсказуемым.
Слайд 38

Метрики качества При выборе метрик главными показателями являются : Адекватность метрик

Метрики качества


При выборе метрик главными показателями являются :
Адекватность метрик целям качества


Прозрачность и четкость интерпретации
Экономическая эффективность получения
Слайд 39

Метрики качества Метрики менеджмента: Цена (Cost) Время разработки (Time-to-market) Среда разработки

Метрики качества

Метрики менеджмента:
Цена (Cost)
Время разработки
(Time-to-market)
Среда разработки
(Software

Engineering Environment)
Использование системных ресурсов
(System Resource Utilization)

расходы на приобретение /
разработку

Слайд 40

Метрики качества Метрики менеджмента: Цена (Cost) Время разработки (Time-to-market) Среда разработки

Метрики качества

Метрики менеджмента:
Цена (Cost)
Время разработки
(Time-to-market)
Среда разработки
(Software

Engineering Environment)
Использование системных ресурсов
(System Resource Utilization)

мера времени от формирования заказа на программу до поставки

Слайд 41

Метрики качества Метрики менеджмента: Цена (Cost) Время разработки (Time-to-market) Среда разработки

Метрики качества

Метрики менеджмента:
Цена (Cost)
Время разработки
(Time-to-market)
Среда разработки
(Software

Engineering Environment)
Использование системных ресурсов
(System Resource Utilization)

процент целевых компьютерных ресурсов, используемых системой

Слайд 42

Метрики качества Метрики менеджмента: Цена (Cost) Время разработки (Time-to-market) Среда разработки

Метрики качества

Метрики менеджмента:
Цена (Cost)
Время разработки
(Time-to-market)
Среда разработки
(Software

Engineering Environment)
Использование системных ресурсов
(System Resource Utilization)

мера способности производителя разрабатывать программное обеспечение высокого качества

Слайд 43

Метрики качества Метрики требований: Соответствие требованиям (requirement conformance) Стабильность требований (requirement

Метрики качества

Метрики требований:
Соответствие требованиям
(requirement conformance)
Стабильность требований
(requirement stability)

дают

возможность контролировать спецификации, изменение требований, а также степень их удовлетворения
Слайд 44

Метрики качества Метрики качества: Адаптируемость(adaptibility) Сложность интерфейсов и интеграции (complexity of

Метрики качества

Метрики качества:
Адаптируемость(adaptibility)
Сложность интерфейсов
и интеграции (complexity of
interfaces and integration)


Тестовое покрытие
(test coverage)
Надежность (reliability)
Профили ошибок (fault profiles)
Степень удовлетворения
потребностей заказчика
(customer satisfaction)

мера гибкости системы

Слайд 45

Метрики качества Метрики качества: Адаптируемость(adaptibility) Сложность интерфейсов и интеграции (complexity of

Метрики качества

Метрики качества:
Адаптируемость(adaptibility)
Сложность интерфейсов
и интеграции (complexity of
interfaces and integration)


Тестовое покрытие
(test coverage)
Надежность (reliability)
Профили ошибок (fault profiles)
Степень удовлетворения
потребностей заказчика
(customer satisfaction)

метрика, измеряющая степень сложности интерфейса или дополнительного программирования требуемого для интеграции компоненты в систему

Слайд 46

Метрики качества Метрики качества: Адаптируемость(adaptibility) Сложность интерфейсов и интеграции (complexity of

Метрики качества

Метрики качества:
Адаптируемость(adaptibility)
Сложность интерфейсов
и интеграции (complexity of
interfaces and integration)


Тестовое покрытие
(test coverage)
Надежность (reliability)
Профили ошибок (fault profiles)
Степень удовлетворения
потребностей заказчика
(customer satisfaction)

степень полноты различных типов тестирования

Слайд 47

Метрики качества Метрики качества: Адаптируемость(adaptibility) Сложность интерфейсов и интеграции (complexity of

Метрики качества

Метрики качества:
Адаптируемость(adaptibility)
Сложность интерфейсов
и интеграции (complexity of
interfaces and integration)


Тестовое покрытие
(test coverage)
Надежность (reliability)
Профили ошибок (fault profiles)
Степень удовлетворения
потребностей заказчика
(customer satisfaction)

вероятность работы системы без отказов

Слайд 48

Метрики качества Метрики качества: Адаптируемость(adaptibility) Сложность интерфейсов и интеграции (complexity of

Метрики качества

Метрики качества:
Адаптируемость(adaptibility)
Сложность интерфейсов
и интеграции (complexity of
interfaces and integration)


Тестовое покрытие
(test coverage)
Надежность (reliability)
Профили ошибок (fault profiles)
Степень удовлетворения
потребностей заказчика
(customer satisfaction)

кумулятивное число обнаруженных ошибок

Слайд 49

Метрики качества Метрики качества: Адаптируемость(adaptibility) Сложность интерфейсов и интеграции (complexity of

Метрики качества

Метрики качества:
Адаптируемость(adaptibility)
Сложность интерфейсов
и интеграции (complexity of
interfaces and integration)


Тестовое покрытие
(test coverage)
Надежность (reliability)
Профили ошибок (fault profiles)
Степень удовлетворения
потребностей заказчика
(customer satisfaction)

степень соответствия программного обеспечения ожиданиям и требованиям заказчика

Слайд 50

АДАПТИРУЕМОСТЬ «Adaptability» - мера гибкости системы, оценивает способность системы адаптироваться к

АДАПТИРУЕМОСТЬ

«Adaptability» - мера гибкости системы, оценивает способность системы адаптироваться к изменениям

требований либо перепроектированием системы, либо интеграцией приложений.
Слайд 51

Complexity of interfaces and integration «Complexity of interfaces and integration» -

Complexity of interfaces and integration

«Complexity of interfaces and integration» - метрика,

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

Покрытие тестами Метрики «test coverage» указывают степень полноты различных типов тестирования.

Покрытие тестами

Метрики «test coverage» указывают степень полноты различных типов тестирования.

Слайд 53

Надежность «Reliability»- метрика, оценивающая вероятность работы системы без отказов. Данная метрика

Надежность

«Reliability»- метрика, оценивающая вероятность работы системы без отказов. Данная метрика

может быть получена в рамках традиционного подхода.
Слайд 54

Профили ошибок «Fault profiles» - метрика, измеряющая кумулятивное число обнаруженных ошибок.

Профили ошибок

«Fault profiles» - метрика, измеряющая кумулятивное число обнаруженных ошибок.

Слайд 55

Удовлетворенность пользователя «Customer satisfaction» - метрика, оценивающая степень соответствия программного обеспечения

Удовлетворенность пользователя

«Customer satisfaction» - метрика, оценивающая степень соответствия программного обеспечения ожиданиям

и требованиям заказчика. Данная метрика может быть оценена перед поставкой на этапе опытной эксплуатации на основе прогнозирующих параметров.
Слайд 56

Качество программного кода Единственным доступным механизмом определения «ожиданий заказчика» являются требования

Качество программного кода

Единственным доступным механизмом определения «ожиданий заказчика» являются требования (software

requirement specifications). Требования Технического задания определяют функции программного обеспечения и нефункциональные требования, такие как производительность, надежность и т.п. Нетехнические требования, такие как цена, сроки поставки утверждаются в контрактных документах.
Слайд 57

Метрики качества, выводимые из требований чрезвычайно важны для анализа качества продукта

Метрики качества, выводимые из требований

чрезвычайно важны для анализа качества продукта
создаются на

начальных этапах разработки, когда степень неопределенности и риск, связанный с разработкой и внедрением новых программных продуктов велики.
Для эволюционного процесса разработки должны быть приняты к рассмотрению метрики качества программ, используемые в процессе реализации циклов разработки.
Слайд 58

Метрики качества, выводимые из требований (2) Гибкость (flexability), которая аккумулирует ряд

Метрики качества, выводимые из требований (2)

Гибкость (flexability), которая аккумулирует ряд свойств:
Модульность

(Modularity)
Изменяемость (Changeability)
Сопровождаемость (Maintainability
Слайд 59

Метрики качества, выводимые из требований (3) Адаптивность (adaptability), которая подразумевает: Настраиваемость

Метрики качества, выводимые из требований (3)

Адаптивность (adaptability), которая подразумевает:
Настраиваемость (customizability)
Переносимость

(Portability)
Способность к взаимодействию (Interoperability)
Слайд 60

Метрики качества, выводимые из требований (4) Оценка качества по приведенным выше

Метрики качества, выводимые из требований (4)

Оценка качества по приведенным выше метрикам,

как правило, не проводится.
Однако уже через короткое время обычно происходит снижение уровня качества программного обеспечения, связанное с расхождением текущих требований заказчика к системе.
Обычно причиной этого является высокая стоимость исправлений или изменений в программной системе.
Слайд 61

Исправления Исправления программного обеспечения может быть инициировано по следующим причинам: исправление

Исправления

Исправления программного обеспечения может быть инициировано по следующим причинам:
исправление программы с

недостаточным уровнем качества (bug fixing),
изменение программы для повышения уровня качества (enhancement),
изменение программы для удовлетворения изменения в требованиях.
Слайд 62

Качество технического проекта Измерение качества проектирования является очень важной составляющей частью

Качество технического проекта

Измерение качества проектирования является очень важной составляющей частью в

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

Уровни повторного использования повторное использование и модификация может быть произведена на

Уровни повторного использования

повторное использование и модификация может быть произведена на нескольких

уровнях:
уровень исходного кода,
физический дизайн,
логический дизайн,
требования
в рамках системы,
в рамках проекта,
в рамках компании.
Слайд 64

Процесс модификации Процесс модификации программной системы включает три главных фазы: реструктуризация

Процесс модификации

Процесс модификации программной системы включает три главных фазы:
реструктуризация (создание

логически эквивалентной системы);
обратный инжиниринг (reverse engineering, анализ системы с целью выделения системных компонент, их функций и взаимосвязей, включая спецификации верхнего уровня системы)
прямой инжиниринг (forward engineering, разработка системы от спецификаций до кодирования и внедрения).
Слайд 65

Процесс модификации (2) В настоящее время выполняется большое количество проектов, связанных

Процесс модификации (2)

В настоящее время выполняется большое количество проектов, связанных с

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

Процесс модификации (3) В процессе инжиниринга программных систем в дополнение к

Процесс модификации (3)

В процессе инжиниринга программных систем в дополнение к классическим

метрикам должны быть включены в число наиболее важных такие метрики качества объектно-ориентированного дизайна как: надежность (reliability), сложность (complexity) и возможность повторного использования (reusabiblity).
Измерение качества проектирования является принципиально важной частью процесса разработки, поскольку, как показывает статистика, стоимость ошибки проектирования в среднем на два порядка выше стоимости ошибки кодирования
Слайд 67

Модель факторов качества При измерении факторов качества широко используется модель: фактор

Модель факторов качества

При измерении факторов качества широко используется модель: фактор -

критерий - метрика (factor а criteria а measurement). Установка связи фактор а критерий требует анализа составляющих факторов качества.
Слайд 68

фактор - критерий - метрика

фактор - критерий - метрика

Слайд 69

Модель факторов качества (2) конкретные метрики выводятся в соответствии с особенностями

Модель факторов качества (2)

конкретные метрики выводятся в соответствии с особенностями проекта

из критериев качества:
accuracy (точность),
completeness (полнота),
consistency (согласованность),
module size (размер модулей),
data coupling (связь модулей по данным),
cohesion (связность),
modularity (модульность),
span of control (норма управляемости).
Слайд 70

Измерение качества на основе сопровождения продукта Одной из главных путей способов

Измерение качества на основе сопровождения продукта

Одной из главных путей способов повышения

качества является путь анализа практического опыта использования данного продукта или процесса и использования полученных данных для его совершенствования.
Речь идет о так называемой парадигме QIP – Quality Improvement Paradigm
Слайд 71

Quality Improvement Paradigm Парадигма совершенствования качества дает систематический подход к организации

Quality Improvement Paradigm

Парадигма совершенствования качества дает систематический подход к организации

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

Quality Improvement Paradigm (2) Наиболее применимым способом реализации парадигмы улучшения качества

Quality Improvement Paradigm (2)

Наиболее применимым способом реализации парадигмы улучшения качества является

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

Вывод решений Проблема Решение

Вывод решений

Проблема

Решение

Слайд 74

Quality Improvement Paradigm (3) Итогом процесса является накопление знаний о качестве.

Quality Improvement Paradigm (3)

Итогом процесса является накопление знаний о качестве.
Для

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

Фрейм качества

Фрейм качества

Слайд 76

Диаграмма влияния для подмножества метрик качества

Диаграмма влияния для подмножества метрик качества

Слайд 77

Интегральная оценка качества Интегральная оценка качества производится на основе анализа взаимовлияния

Интегральная оценка качества

Интегральная оценка качества производится на основе анализа взаимовлияния различных

параметров характеризующих качество продукта
Традиционные метрики не учитывают качество обрабатываемых данных и взаимодействие данных с потоком вычислений.
Слайд 78

Интегральная оценка качества (2) Для обеспечения полноты измерения качества требуется на

Интегральная оценка качества (2)

Для обеспечения полноты измерения качества требуется на ранних

стадиях проекта на основе анализа целей проекта, области применения, ограничений и характеристик разработать
проектно-ориентированные (design-oriented)
или структурные метрики (structural metrics) качества
Слайд 79

Интегральная оценка качества (3) Термин «проектно-ориентированный» в данном контексте означает, что

Интегральная оценка качества (3)

Термин «проектно-ориентированный» в данном контексте означает, что метрики

разрабатываются в виде стандарта качества проекта на его ранних стадиях и представляют собой правила или нормы (guideline), которым должен удовлетворять промежуточный или конечный продукт.
Термин структурный означает, что метрики разрабатываются структурным методом сверху - вниз (top – down) для обеспечения целостности и полноты.
Слайд 80

методология создания метрик качества Измерение качества в соответствии с данными метриками

методология создания метрик качества

Измерение качества в соответствии с данными метриками состоит

в вычислении отклонения фактических характеристик продукта от норм и правил.
Методология создания метрик качества указанным способом утверждена в стандарте IEEE 1061
Слайд 81

методология создания метрик качества (2) Первый шаг (верхний уровень иерархии): Определение

методология создания метрик качества (2)

Первый шаг (верхний уровень иерархии): Определение нетехнического

уровня (то есть уровня предназначенного для менеджеров, пользователей, заказчика):
Формирование требований качества
Выбор свойств (атрибутов), установка приоритетов и связи с требованиями
Присвоение атрибутов факторам качества, которые отражают представление заказчика на качество.
Установка измерений для факторов качества. Определение допустимых коридоров для величин качества.
Слайд 82

методология создания метрик качества (3) Второй шаг (средний уровень иерархии): Определение

методология создания метрик качества (3)

Второй шаг (средний уровень иерархии):
Определение технического

уровня (то есть уровня предназначенного для аналитиков, конструкторов, разработчиков):
Осуществление декомпозиции факторов качества в измеряемые характеристики программного обеспечения, определяемые как суб-факторы.
Слайд 83

методология создания метрик качества (3) Третий шаг (нижний уровень иерархии): Декомпозиция

методология создания метрик качества (3)

Третий шаг (нижний уровень иерархии):
Декомпозиция суб-факторов в

метрики, которые могут быть применены непосредственно к программному продукту или процессу разработки. Данные метрики служат как непрямые меры (индикаторы) прямых измерений факторов качества на верхних уровнях иерархии. Иными словами это уровень разработанных правил и норм, которым должен удовлетворять продукт или процесс с тем, чтобы были выполнены факторы качества
Слайд 84

Схема вывода метрик качества

Схема вывода метрик качества

Слайд 85

Факторы качества программной системы (пример): Переносимость (portability) – усилия, требуемые для

Факторы качества программной системы (пример):

Переносимость (portability) – усилия, требуемые для переноса

системы с одной платформы на другую.
Надежность (reliability) – ожидаемая степень корректного выполнения системой требуемых функций
Тестируемость (testability) – усилия, требуемые для тестирования функций программы
Слайд 86

Факторы качества программной системы (пример): (2) Прямые измерения факторов качества: Переносимость

Факторы качества программной системы (пример): (2)

Прямые измерения факторов качества:
Переносимость (portability) –

трудоемкость - количество чел.-час., требуемое для переноса программы с платформы X на платформу Y. Допустимый порог: 1 чел.-час. на 1K строк исходного кода .
Надежность (reliability) – среднее время наработки на отказ. Допустимый порог: 120 операционных дней.
Тестируемость (testability) – трудоемкость – количество чел.-час., требуемое для полного тестирования 90% всех модулей. Допустимый порог 10 чел.-час. на 1K строк исходного кода.
Слайд 87

Факторы качества программной системы (пример): (3) Следующий шаг – проведение декомпозиции приведенных факторов на суб-факторы

Факторы качества программной системы (пример): (3)

Следующий шаг – проведение декомпозиции приведенных

факторов на суб-факторы
Слайд 88

Пример структуры факторов качества

Пример структуры факторов качества

Слайд 89

Примеры требуемых определений по Артуру (Arthur L.A.) Точность (accuracy) – правильность

Примеры требуемых определений по Артуру (Arthur L.A.)

Точность (accuracy) – правильность вычислений

и контроля;
Сложность (complexity) – трудность разработки и модификации;
Совместимость (consistency) – использование унифицированной технологии проектирования и разработки на протяжении всего цикла разработки;
Устойчивость к ошибкам (error tolerance) – степень ущерба от возникающих ошибок;
Универсальность (generality) – широта потенциального использования;
Аппаратная независимость (hardware independence) – степень применимости программы на другом аппаратном обеспечении;
Слайд 90

Примеры требуемых определений по Артуру (Arthur L.A.) (2) Оснащенность средствами контроля

Примеры требуемых определений по Артуру (Arthur L.A.) (2)

Оснащенность средствами контроля (instrumentation)

– степень контроля программы собственного выполнения и идентификации возникающих ошибок;
Модульность (modularity) – степень функциональной независимости программных компонент;
Удобочитаемость (readability) – уровень смыслового наполнения комментирования, соответствие стандартам кодирования и именования;
Простота (simplicity) – легкость понимания программы;
Системная независимость (system independence) степень независимости от нестандартных характеристик системного окружения и ограничений.
Слайд 91

Уточнение метрик Сложность (complexity): – использование метрики цикломатической сложности Мак Каба

Уточнение метрик

Сложность (complexity): – использование метрики цикломатической сложности Мак Каба (McCabe’s

cyclomatic complexity metric [60])
Устойчивость к ошибкам (error tolerance): использование правила (нормы): «все модули должны содержать обработчики предопределенных исключительных ситуаций. Все обрабатываемые исключительные ситуации должны быть либо распространены на внешний уровень, либо разрешены».
Слайд 92

Ключевые моменты Опыт управления качеством показывает, что финансовые затраты, произведенные для

Ключевые моменты

Опыт управления качеством показывает, что финансовые затраты, произведенные для улучшения

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

Дерево характеристик качества Не существует единственной метрики Спектр проектно-зависимых метрик Метрики качества - изначально неочевидная категория

Дерево характеристик качества

Не существует единственной метрики
Спектр проектно-зависимых метрик
Метрики качества -

изначально неочевидная категория