Метрики качества - Лаборатория ITLab

advertisement
Лаборатория информационных технологий (ИТЛаб)
При поддержке фирмы Intel
Учебно-исследовательский проект по курсу
технологии программирования
Метрики качества
программного проекта
Куратор проекта: Карпенко С.Н.
Разработчики: Гришин А.В.
Никонов С.Н.
Ионов А.А.
Нижний Новгород 2003г.
Лекция 1
Введение
Процессы разработки, приобретения и внедрения
сложных систем
Жесткий управленческий контроль характеристик
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
2
Введение
Наиболее важная характеристика программных
продуктов
Качество
“You cannot control what you cannot measure”
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
3
Метрики качества ПО
Понятие качества и его многомерность
 Характеристики качества и его цена
 Качество продукта, процесса, его
организации
 Метрики качества
 Иерархизация метрик
 Статистический анализ

(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
4
Понятие качества и его многомерность
Качество - это полнота свойств и характеристик продукта,
процесса или услуги, которые обеспечивают способность
удовлетворять
заявленным
или
подразумеваемым
потребностям.(Определение ISO)
Качество программного обеспечения - это степень, в
которой оно обладает требуемой комбинацией свойств.
(Определение IEEE)
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
5
Понятие качества и его многомерность
Information
Systems
Quality
Качество
организации
Качество
ПО
Качество
данных
ISQ
Качество
сервиса
Качество
информации
Качество
инфраструктуры
Качество
обслуживаемого
бизнес
процесса
Enterprise Quality
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
6
Понятие качества и его многомерность
Качество инфраструктуры
 Качество ПО
 Качество данных
 Качество информации
 Качество организации
 Качество сервиса
 Качество процесса

(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
качество
аппаратного и
качество
поддерживающего
информации,
программного
продуцируемое
обеспечения
информационной
качество
(например,
системой
программного
качество
качествообеспечения
данных,
операционных
использующихся
информационной
систем,
качество
информационной
компьютерных
системы.
менеджмента,
системой на
входе
сетей
и т.п.).
включая
качествокачество
бюджетирования,
обслуживаемого
планирования
бизнес
процесса и
календарного
качество обучения,
контроля
системной
поддержки и т.п.
7
Понятие качества и его многомерность
Анализ
Сферы ответственности заинтересованных
сторон
in-process
stakeholder
end-of-process
stakeholders
Управление качеством будет успешным, если под
контролем находятся все измерения качества.
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
8
Понятие качества и его многомерность
 Качество
продукта
 Качество
процесса
 Качество
организации
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
9
Характеристики качества
НАЧАЛЬНЫЙ ЭТАП ЖЦ
Разработчики
Заказчики
Цель проекта и детализация
Набор функций
Характеристики качества
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
10
Характеристики качества
Отсутствие характеристики при договоре
Разный учёт или пропуск при испытаниях
КОНФЛИКТ!
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
11
Дерево характеристик качества
Не существует единственной метрики
Спектр проектно-зависимых метрик
Метрики качества - изначально неочевидная
категория
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
12
Дерево характеристик качества
Исторически сначала были выделены ряд
универсальных и неполных метрик на
основе следующих шагов
1.Определение
множества
6.
2.
3.
4.
5. Рафинирование
Выделение
Корректировка
Исследование
Исследование
кандидатов
множества
корреляции
каждой
характеристик
в
метрики
метрики,
метрик
между
в
ив
характеристик,
которые
связанных
метриками,
итоговом
целом во множество
множестве
метрик,
измеряют
степени
которые,
для
метрик,
вопределения
перекрытия,
которые
контексте
являясь
степеньв
важными
удовлетворения
корреляции,
зависимости
зафиксированных
совокупностии недостатков.
для
значимости,
адекватно
программного
указанным
множеств
отражают
степени
обеспечения,
характеристикам.
автоматизируемости.
характеристик
качество программного
идопускают
метрик. обеспечения.
несложное
измерение и не перекрываются.
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
13
Дерево характеристик качества
Дифференциация
нижнего
Ручной сбор
уровня
иерархии
информации,
специальные
автоматизированные
средства или
экспертный способ
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
14
Пример графического изображения
качества
Корректность
97%
Надежность 61%
Ремонтопригодность
60%
Безопасность
100%
Гибкость 82%
Удобство в использовании
100%
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
15
Цена качества
Цена качества - стоимость в составе
продукта, которая может быть сэкономлена,
если все исполнители работают безупречно.
Стоимость работ на доработку
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
16
Цена качества
Цена качества
включает все
издержки
Согласованная
понесенные,
вследствие
выявления
недостатков,
возникновения
ошибок и
Цена
Цена
выхода из строя контроля
предупреждения
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
сумма,
затраченная на
достижение
качества
продукта
Несогласованная
Внутренние
издержки
Метрики качества ПО
Внешние
издержки
17
Цена качества
Согласованная
Цена
Цена
предупреждения контроля
Предупреждением дефектов
прежде, чем они произойдут
(обучение коллектива , переход на современные
технологии)
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
18
Цена качества
Согласованная
Цена
предупреждения
Цена
контроля
Измерение,
оценивание
или ревизия продукта
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
19
Несогласованная
Цена качества
Внутренние
издержки
Внешние
издержки
Издержки
связанные
с
проблемами, выявленными до
того, как продукт отправлен
заказчику
Затраты
связанные
с
ошибками, проявившимися
при эксплуатации продукта
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
20
Цена качества

Совершенствование
процесса
разработки
и
внедрения программного обеспечения значительно
уменьшают
относительную
несогласованную
стоимость качества при сохранении согласованной
стоимости не прежнем

Инвестиции
в
совершенствование
процесса
разработки ведут к значительному сокращению
дефектов и дают высокий положительный
экономический эффект
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
21
Лекция 2
Качество продукта
Какие характеристики важнее?

Пользователь
– Применение
ПО,
его
производительность,
результаты использования.

Разработчик
– Требования пользователя к конечному продукту
– Характеристики
качества
промежуточной
продукции

Руководитель
– Общее качество
– Коммерческие требования
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
22
Определение
требований
качества
Выбор
Метрик
Определение
уровня
ранжирования
Определение
критерия
оценки
Разработка
ПО
Продукция или
промежуточный
продукт
Измерение
Ранжирование
Оценка
Оценивание
Оценка качества программного продукта
Подготовка Определение
требований
Качество продукта
Продукт приемлем или нет
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
23
Качество процесса, его организация
Модель качества процесса разработки
Зрелость
программного
процесса
+
+
Качество
разработки
Сложность
продукта
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
+
+
Качество
реализации
+
+
+
Качество
продукта
-
-
Двусмысленность
требований
структура
продукта
Метрики качества ПО
24
Качество процесса, его организация
Следствия принятой модели:

Качество накапливается в продукте при сложном
производстве
кумулятивным
образом,
причем,
вклад в качество, осуществленный на ранних
стадиях, имеет более сильное влияние на конечный
продукт, чем на более поздних стадиях.

Тестирование
и
измерение
качества
должно
происходить на всех стадиях жизненного цикла.
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
25
Качество процесса, его организация
Подход тотального управления качеством
(TQM – Total Quality Management)
Стандарты:

ISO 9001 -проектирование в процессе производства

ISO 9000-3, формулирует требования модели
качества ISO 9001 к организации процесса
разработки программного обеспечения
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
26
Качество процесса, его организация

Наличие
процесса
разработки
программного
обеспечения, удовлетворяющего высокому уровню
качества,
не
гарантирует
выпуска
продукта
качестве
процесса
высокого качества.

Отсутствие
информации
о
означает, что качество разрабатываемого продукта
является непредсказуемым.
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
27
Метрики качества
При выборе метрик главными
показателями являются :

Адекватность метрик целям качества

Прозрачность и четкость интерпретации

Экономическая эффективность получения
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
28
Метрики качества
Метрики менеджмента:
 Цена (Cost)
расходы на
приобретение/
процент
целевых
разработку
компьютерных
мера
времени от
мера
способности
ресурсов,
формирования
производителя
используемых
заказа на
разрабатывать
системой до
программу
программное
поставки
обеспечение
высокого качества

Время разработки
(Time-to-market)

Среда разработки
(Software Engineering Environment)

Использование системных ресурсов
(System Resource Utilization)
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
29
Метрики качества
Метрики требований:

Соответствие требованиям
(requirement conformance)

Стабильность требований
(requirement stability)
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
дают возможность
контролировать
спецификации,
изменение
требований, а
также степень их
удовлетворения
30
Метрики качества
Метрики качества:
Адаптируемость(adaptibility)
 Сложность интерфейсов
и интеграции (complexity of
interfaces and integration)
 Тестовое покрытие
(test coverage)
 Надежность (reliability)
 Профили ошибок (fault profiles)
 Степень удовлетворения
потребностей заказчика
(customer satisfaction)

(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
кумулятивное число
обнаруженных
метрика,
ошибок
измеряющая
степень сложности
степень
полноты
интерфейса
или
мера
гибкости
вероятность
работы
степень
различных
типов
дополнительного
системы
системы
без отказов
соответствия
тестирования
программирования
программного
требуемого для
обеспечения
интеграции
ожиданиям и
компоненты в
требованиям
систему
заказчика
31
Метрики качества
Циклическая модель

Гибкость (flexability)
– Модульность (Modularity)
– Изменяемость (Changeability)
– Сопровождаемость (Maintainability)

Адаптивность (adaptability)
– Настраиваемость (customizability)
– Переносимость (Portability)
– Способность к взаимодействию (Interoperability)
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
32
Метрики качества
Стоимость
эксплуатации
и
сопровождения
в
составе общей стоимости владения системы (total
cost ownership ) увеличивается с ростом системы
опережающими темпами
Вывод:
Чем легче программный продукт модифицировать,
тем
легче
достичь
изначальных
показателей
качества ( кроме производительности )
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
33
Проектно-ориентированные
метрики качества
Лекция 3
Проектно-ориентированные
метрики
качества разрабатываются в виде стандарта
качества на ранних стадиях разработки
проекта.
Продукт
проекта
должен
удовлетворять этим метрикам на всех
стадиях. Такие метрики разрабатываются
структурно - сверху-вниз.
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
34
Методология создания проектноориентированных метрик качества

Определение нетехнического уровня

Определение технического уровня

Декомпозиция суб-факторов в метрики
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
35
Определение нетехнического уровня
(предназначен для заказчика)

Формирование требований качества

Выбор свойств, установка приоритетов и связи с
требованиями.

Присвоение свойств факторам качества, которые
отражают представление заказчика на качество.

Установка измерений для факторов качества.
Определение допустимых коридоров для величин
качества.
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
36
Определение технического уровня
(предназначен для разработчиков)
Производится декомпозиции факторов качества в
измеряемые характеристики программного
обеспечения, определяемые как суб-факторы.
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
37
Декомпозиция суб-факторов в метрики
(нижний уровень иерархии)
Это уровень разработанных правил и норм,
которым должен удовлетворять продукт или
процесс с тем, чтобы были выполнены
факторы качества.
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
38
Статистический анализ
Статистические методы предназначены для
получения объективных данных, которые
обеспечивают принятие эффективных решений
при производстве.
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
39
Методы статистического анализа
•
•
•
•
Гистограмма
Диаграммы рассеивания
Контрольные карты
Диаграммы Парето
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
40
Гистограмма
Гистограмма - это графический метод
представления данных, сгруппированных по
частоте попадания в определенный интервал.
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
41
Диаграммы рассеивания
Диаграммы рассеивания – графическое
представление пар исследуемых данных в виде
множества точек на координатной плоскости.
Предназначены для оценки наличия или
отсутствия
зависимости
между
двумя
изучаемыми величинами.
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
42
Контрольные карты
Контрольные карты графически отражают
динамику процесса, т.е. изменение показателей во
времени. На карте отмечен диапазон неизбежного
рассеивания, который лежит в пределах верхней и
нижней контрольных границ.
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
43
Диаграммы Парето
Диаграмма
Парето
графическое
отражает
причины
отражает
представление
степени важности
факторов.
проблем по кадрам,
нежелательные
методам
результаты в сферах
Предназначена
дляоборудованию,
определения
работы
качества,
немногочисленных
существенно
важных
себестоимости,
причин.
поставок, безопасности
Диаграмма Парето:
•
по результатам деятельности
•
по причинам
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
44
Список литературы
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/
(c)ИТЛаб, ННГУ,
ВМК, 2003г.
Метрики качества ПО
45
Download