45
Метрики качества Метрики качества программного проекта программного проекта Лаборатория информационных технологий (ИТЛаб) Учебно-исследовательский проект по курсу технологии программирования Куратор Куратор проекта проекта : Карпенко С.Н. : Карпенко С.Н. Разработчики: Гришин Разработчики: Гришин А.В. А.В. Никонов С.Н. Никонов С.Н. Ионов Ионов А.А. А.А. Нижний Новгород Нижний Новгород 2 2 003 003 г. г. При поддержке фирмы Intel

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

  • Upload
    indra

  • View
    60

  • Download
    0

Embed Size (px)

DESCRIPTION

Лаборатория информационных технологий (ИТЛаб). При поддержке фирмы Intel . Метрики качества программного проекта. Учебно-исследовательский проект по курсу технологии программирования. Куратор проекта : Карпенко С.Н. Разработчики: Гришин А.В. Никонов С.Н. Ионов А.А. - PowerPoint PPT Presentation

Citation preview

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

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

Лаборатория информационных технологий (ИТЛаб)

Учебно-исследовательский проект по курсутехнологии программирования

Куратор Куратор проектапроекта: Карпенко С.Н.: Карпенко С.Н.

Разработчики: Гришин А.В. Разработчики: Гришин А.В. Никонов С.Н.Никонов С.Н.ИоновИонов А.А. А.А.

Нижний НовгородНижний Новгород 2 2003003г.г.

При поддержке фирмы Intel

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

ВведениеВведение

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

Жесткий управленческий контроль характеристик

Лекция 1Лекция 1

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

ВведениеВведение

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

Качество

“You cannot control what you cannot measure”

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

Понятие качества и его многомерность Характеристики качества и его ценаКачество продукта, процесса, его органи

зацииМетрики качестваИерархизация метрик Статистический анализ

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

Качество - это полнота свойств и характеристик продукта,

процесса или услуги, которые обеспечивают способность

удовлетворять заявленным или подразумеваемым

потребностям.(Определение ISO)

Качество программного обеспечения - это степень, в

которой оно обладает требуемой комбинацией свойств.

(Определение IEEE)

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

Качество обслуживаемого

бизнес процесса

Качество ПО

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

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

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

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

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

ISQISQ

Enterprise QualityEnterprise Quality

Information Systems Quality

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

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

аппаратного и поддерживающего

программного обеспечения (например, качество

операционных систем,

компьютерных сетей и т.п.).

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

информационной системы.

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

системой на входе

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

продуцируемое информационной

системой

качество менеджмента,

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

календарного контроля качество обучения,

системной поддержки и т.п.

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

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

Анализ

Сферы ответственности заинтересованных сторон

in-process end-of-process stakeholder stakeholders

Управление качеством будет успешным, если под контролем находятся все измерения качества.

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

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

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

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

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

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

НАЧАЛЬНЫЙ ЭТАП ЖЦ

Разработчики Заказчики

Цель проекта и детализация

Набор функций

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

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

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

Отсутствие характеристики при договоре

Разный учёт или пропуск при испытаниях

КОНФЛИКТ!

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

Дерево характеристик качестваДерево характеристик качестваНе существует единственной метрики

Спектр проектно-зависимых метрик

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

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

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

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

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

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

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

5. 5. Рафинирование множества метрик в Рафинирование множества метрик в целом во множество метрик, которые в целом во множество метрик, которые в совокупности адекватно отражают совокупности адекватно отражают качество программного обеспечения. качество программного обеспечения.

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

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

Гибкость 82%Гибкость 82%

Ремонтопригодность Ремонтопригодность 60%60%

Надежность 61%Надежность 61%

Корректность Корректность 97%97%

Удобство в использовании Удобство в использовании 100%100%

Безопасность Безопасность 100%100%

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

Цена качестваЦена качества - стоимость в составе продукта, которая может быть сэкономлена, если все исполнители работают безупречно.

Стоимость работ на доработку

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

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

СогласованнаяСогласованная

ЦенаЦена

предупрежденияпредупреждения Цена Цена контроляконтроля

НесогласованнаяНесогласованная

Внутренние Внутренние издержкииздержки

Внешние Внешние издержкииздержки

сумма, затраченная на

достижение качества продукта

включает все издержки

понесенные, вследствие выявления

недостатков, возникновения

ошибок и выхода из строя

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

Цена качестваЦена качества СогласованнаяСогласованная

ЦенаЦена

предупрежденияпредупреждения Цена Цена контроляконтроля

ППредупреждением дефектов редупреждением дефектов

преждепрежде,, чем они произойдут чем они произойдут

((обучение коллектива обучение коллектива , , переход на современные переход на современные технологиитехнологии))

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

СогласованнаяСогласованная

ЦенаЦена

предупрежденияпредупреждения Цена Цена контроляконтроля

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

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

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

Цена качестваЦена качества Несогласованная Несогласованная

Внутренние Внутренние издержки издержки

Внешние Внешние издержки издержки

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

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

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

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

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

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

– Применение ПО, его производительность,

результаты использования. Разработчик

– Требования пользователя к конечному продукту

– Характеристики качества промежуточной

продукции Руководитель

– Общее качество

– Коммерческие требования

Лекция 2Лекция 2

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

Продукт приемлем или нет

Продукция или промежуточный

продукт

Определение требований

качества

Выбор

Метрик

Определение уровня

ранжирования

Определение критерия

оценки

Разработка ПО

Измерение

Ранжирование

Оценка

Оп

ред

елен

ие

треб

ован

ий

Под

гото

вка

Оц

ени

ван

ие

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

++++

Двусмысленность требований

Сложность продукта

структура продукта

Зрелость программного

процесса

Качество разработки

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

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

++ ++ ++

++++

-- ----

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

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

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

вклад в качество, осуществленный на ранних

стадиях, имеет более сильное влияние на конечный

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

Тестирование и измерение качества должно

происходить на всех стадиях жизненного цикла.

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

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

(TQM – Total Quality Management)

Стандарты: ISO 9001 -проектирование в процессе производства

ISO 9000-3, формулирует требования модели

качества ISO 9001 к организации процесса

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

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

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

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

качества, не гарантирует выпуска продукта

высокого качества.

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

означает, что качество разрабатываемого продукта

является непредсказуемым.

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

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

Адекватность метрик целям качества

Прозрачность и четкость интерпретации

Экономическая эффективность получения

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

Метрики менеджмента: Цена (Cost)

Время разработки

(Time-to-market)

Среда разработки

(Software Engineering Environment)

Использование системных ресурсов

(System Resource Utilization)

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

разработку мера времени от формирования

заказа на программу до

поставки

процент целевых компьютерных

ресурсов, используемых

системой

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

высокого качества

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

Метрики требований: Соответствие требованиям

(requirement conformance)

Стабильность требований

(requirement stability)

дают возможность контролировать спецификации,

изменение требований, а

также степень их удовлетворения

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

и интеграции (complexity of interfaces and integration)

Тестовое покрытие (test coverage)

Надежность (reliability) Профили ошибок (fault profiles) Степень удовлетворения

потребностей заказчика (customer satisfaction)

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

метрика, измеряющая

степень сложности интерфейса или

дополнительного программирования

требуемого для интеграции

компоненты в систему

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

тестирования

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

отказов

кумулятивное число

обнаруженных ошибок

степень соответствия

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

заказчика

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

Циклическая модель Гибкость (flexability)

– Модульность (Modularity)

– Изменяемость (Changeability)

– Сопровождаемость (Maintainability)

Адаптивность (adaptability)

– Настраиваемость (customizability)

– Переносимость (Portability)

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

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

Стоимость эксплуатации и сопровождения в

составе общей стоимости владения системы (total

cost ownership ) увеличивается с ростом системы

опережающими темпами

Вывод:

Чем легче программный продукт модифицировать,

тем легче достичь изначальных показателей

качества ( кроме производительности )

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

Проектно-ориентированные Проектно-ориентированные метрики качестваметрики качества

Проектно-ориентированные метрики качества разрабатываются в виде стандарта качества на ранних стадиях разработки проекта. Продукт проекта должен удовлетворять этим метрикам на всех стадиях. Такие метрики разрабатываются структурно - сверху-вниз.

Лекция 3Лекция 3

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

Определение нетехнического уровня

Определение технического уровня

Декомпозиция суб-факторов в метрики

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

Формирование требований качества Выбор свойств, установка приоритетов и связи с

требованиями. Присвоение свойств факторам качества, которые

отражают представление заказчика на качество. Установка измерений для факторов качества.

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

Определение нетехнического уровняОпределение нетехнического уровня(предназначен для заказчика)(предназначен для заказчика)

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

Производится декомпозиции факторов качества в измеряемые характеристики программного обеспечения, определяемые как суб-факторы.

Определение технического уровняОпределение технического уровня(предназначен для разработчиков)(предназначен для разработчиков)

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

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

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

Статистические методы предназначены

для получения объективных данных, которые

обеспечивают принятие эффективных решений

при производстве.

Статистический анализСтатистический анализ

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

• Гистограмма• Диаграммы рассеивания• Контрольные карты• Диаграммы Парето

Методы статистического анализаМетоды статистического анализа

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

ГистограммаГистограмма - это графический метод представления данных, сгруппированных по частоте попадания в определенный интервал.

ГистограммаГистограмма

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

Диаграммы рассеиванияДиаграммы рассеивания

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

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

нижней контрольных границ.

Контрольные картыКонтрольные карты

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

Диаграмма Парето - графическое представление степени важности факторов. Предназначена для определения немногочисленных существенно важных причин.

Диаграмма Парето:

• по результатам деятельности

• по причинам 

Диаграммы ПаретоДиаграммы Парето

отражает нежелательные

результаты в сферах качества,

себестоимости, поставок, безопасности

отражает причины проблем по кадрам,

оборудованию, методам работы

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

(c)ИТЛаб, ННГУ, ВМК, 2003г.

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

Список литературыСписок литературы1. Александр Попов «Метрики качества программного обеспечения»,

http://www.pmprofy.ru/

2. Владимир Липаев, «Сетевой журнал» №3.2002

3. Владимир Липаев «Стандартизация характеристик и оценивания качества программных средств», http://www.fostas.ru/library/Lipaev_6.rtf

4. Владимир Липаев «Сертификация систем качества предприятий, разрабатывающих программные средства для информационных систем, на соответствие стандартам серии ISO 9000», http://tqm.stankin.ru/arch/n01/08.html

5. ГОСТ Р ИС09126 «Характеристики качества и руководства по их применению»

6. Жарко Е.Ф. «Проблемы управления качеством программного обеспечения» http://www31.ipu.rssi.ru/0887.pdf

7. Романов В.Ю. «Анализ программного обеспечения с использованием объектно-ориентированных метрик. Обзор метрик», http://oit.cmc.msu.ru/romanov/russian/pub/OOMetrics-Report.htm

8. http://www.ispu.ru/library/lessons/mizonov/index.html

9. http://spc-consulting.ru/