ГАПОУ ПО Пензенский колледж информационных и промышленных технологий
Дисциплина: МДК.04.01 Моделирование и анализ программного обеспечения
Метрики качества программного проекта
Преподаватель: Г.С. Лукьянова
Пенза 2020г.
Метрики качества ПО
- Понятие качества и его многомерность
- Характеристики качества и его цена
- Качество продукта, процесса, его организации
- Метрики качества
- Иерархизация метрик
- Статистический анализ
ПКИПТ - 2020
Метрики качества ПО
(c)ИТЛаб, ННГУ, ВМК, 2003г.
Понятие качества и его многомерность
Качество - это полнота свойств и характеристик продукта, процесса или услуги, которые обеспечивают способность удовлетворять заявленным или подразумеваемым потребностям.(Определение ISO)
Качество программного обеспечения - это степень, в которой оно обладает требуемой комбинацией свойств. (Определение IEEE)
ПКИПТ - 2020
Метрики качества ПО
Понятие качества и его многомерность
Information Systems Quality
Качество организации
Качество ПО
Качество сервиса
Качество обслуживаемого бизнес процесса
ISQ
Качество данных
Качество информации
Качество инфраструктуры
Enterprise Quality
Метрики качества ПО
ПКИПТ - 2020
Понятие качества и его многомерность
качество аппаратного и поддерживающего программного обеспечения (например, качество операционных систем, компьютерных сетей и т.п.).
- Качество инфраструктуры
- Качество ПО
- Качество данных
- Качество информации
- Качество организации
- Качество сервиса
- Качество процесса
качество информации, продуцируемое информационной системой
качество программного обеспечения информационной системы.
качество данных, использующихся информационной системой на входе
качество менеджмента, включая качество бюджетирования, планирования и календарного контроля
качество обслуживаемого бизнес процесса
качество обучения, системной поддержки и т.п.
Метрики качества ПО
4
ПКИПТ - 2020
Понятие качества и его многомерность
Анализ
Сферы ответственности заинтересованных сторон
in-process end-of-process
stakeholder stakeholders
Управление качеством будет успешным, если под контролем находятся все измерения качества.
5
Метрики качества ПО
ПКИПТ - 2020
Понятие качества и его многомерность
ПКИПТ - 2020
Метрики качества ПО
5
Понятие качества и его многомерность
ПКИПТ - 2020
Метрики качества ПО
5
Характеристики качества
Отсутствие характеристики при договоре
Разный учёт или пропуск при испытаниях
КОНФЛИКТ!
5
Метрики качества ПО
ПКИПТ - 2020
Дерево характеристик качества
Не существует единственной метрики
Спектр проектно-зависимых метрик
Метрики качества - изначально неочевидная категория
ПКИПТ - 2020
Метрики качества ПО
5
Дерево характеристик качества
Исторически сначала были выделены ряд универсальных и неполных метрик на основе следующих шагов
1. Определение множества характеристик, которые, являясь важными для программного обеспечения, допускают несложное измерение и не перекрываются.
2. Выделение кандидатов в метрики, которые измеряют степень удовлетворения указанным характеристикам.
3. Исследование характеристик и связанных метрик, для определения корреляции, значимости, степени автоматизируемости.
4. Исследование корреляции между метриками, степени перекрытия, зависимости и недостатков.
5. Рафинирование множества метрик в целом во множество метрик, которые в совокупности адекватно отражают качество программного обеспечения.
6. Корректировка каждой метрики в итоговом множестве в контексте зафиксированных множеств характеристик и метрик.
ПКИПТ - 2020
Метрики качества ПО
5
Дерево характеристик качества
Дифференциация нижнего
уровня иерархии
Р учной сбор информации, специальные автоматизированные средства или экспертный способ
ПКИПТ - 2020
Метрики качества ПО
5
Пример графического изображения качества
Корректность 97%
Надежность 61%
Ремонтопригодность 60%
Безопасность 100%
Гибкость 82%
Удобство в использовании 100%
Метрики качества ПО
12
ПКИПТ - 2020
Цена качества
Цена качества - стоимость в составе продукта, которая может быть сэкономлена, если все исполнители работают безупречно.
Стоимость работ на доработку
ПКИПТ - 2020
Метрики качества ПО
13
Цена качества
сумма, затраченная на достижение качества продукта
Цена качества
включает все издержки понесенные, вследствие выявления недостатков, возникновения ошибок и выхода из строя
Согласованная
Несогласованная
Цена
Внутренние
Внешние
контроля
издержки
издержки
Цена
предупреждения
13
Метрики качества ПО
ПКИПТ - 2020
Цена качества
Согласованная
Цена
контроля
Цена
предупреждения
П редупреждением дефектов
прежде, чем они произойдут
(обучение коллектива , переход на современные технологии)
(ПКИПТ - 2020
Метрики качества ПО
15
Цена качества
Согласованная
Цена
контроля
Цена
предупреждения
Измерение, оценивание или ревизия продукта
ПКИПТ - 2020
Метрики качества ПО
16
Цена качества
Несогласованная
Внешние
Внутренние
издержки
издержки
Издержки связанные с проблемами, выявленными до того, как продукт отправлен заказчику
Затраты связанные с ошибками, проявившимися при эксплуатации продукта
Метрики качества ПО
17
ПКИПТ - 2020
Цена качества
- Совершенствование процесса разработки и внедрения программного обеспечения значительно уменьшают относительную несогласованную стоимость качества при сохранении согласованной стоимости не прежнем
- Инвестиции в совершенствование процесса разработки ведут к значительному сокращению дефектов и дают высокий положительный экономический эффект
ПКИПТ - 2020
Метрики качества ПО
18
Качество продукта
Какие характеристики важнее?
- Применение ПО, его производительность, результаты использования.
- Применение ПО, его производительность, результаты использования.
- Разработчик Требования пользователя к конечному продукту Характеристики качества промежуточной продукции
- Требования пользователя к конечному продукту
- Характеристики качества промежуточной продукции
- Руководитель Общее качество Коммерческие требования
- Общее качество
- Коммерческие требования
ПКИПТ - 2020
Метрики качества ПО
18
Качество продукта
Определение требований
Подготовка
Оценивание
Оценка качества программного продукта
Определение требований качества
Определение критерия оценки
Определение уровня ранжирования
Выбор
Метрик
Разработка ПО
Измерение
Продукция или промежуточный продукт
Ранжирование
Оценка
Продукт приемлем или нет
Метрики качества ПО
18
ПКИПТ - 2020
Качество процесса, его организация
Модель качества процесса разработки
Зрелость программного процесса
+
+
+
Качество продукта
Качество реализации
Качество разработки
++
++
-
-
-
структура продукта
Двусмысленность требований
Сложность продукта
Метрики качества ПО
21
ПКИПТ - 2020
Качество процесса, его организация
Следствия принятой модели:
- К ачество накапливается в продукте при сложном производстве кумулятивным образом, причем, вклад в качество, осуществленный на ранних стадиях, имеет более сильное влияние на конечный продукт, чем на более поздних стадиях.
- Тестирование и измерение качества должно происходить на всех стадиях жизненного цикла.
ПКИПТ - 2020
Метрики качества ПО
22
Качество процесса, его организация
П одход тотального управления качеством
(TQM – Total Quality Management)
Стандарты:
- ISO 9001 -проектирование в процессе производства
- ISO 9000-3, формулирует требования модели качества ISO 9001 к организации процесса разработки программного обеспечения
ПКИПТ - 2020
Метрики качества ПО
22
Качество процесса, его организация
- Н аличие процесса разработки программного обеспечения, удовлетворяющего высокому уровню качества, не гарантирует выпуска продукта высокого качества.
- Отсутствие информации о качестве процесса означает, что качество разрабатываемого продукта является непредсказуемым.
ПКИПТ - 2020
Метрики качества ПО
22
Метрики качества
При выборе метрик главными показателями являются :
- Адекватность метрик целям качества
- Прозрачность и четкость интерпретации
- Экономическая эффективность получения
ПКИПТ - 2020
Метрики качества ПО
22
Метрики качества
расходы на приобретение/
разработку
процент целевых компьютерных ресурсов, используемых системой
Метрики менеджмента:
(Time-to-market)
(Software Engineering Environment)
- Использование системных ресурсов
(System Resource Utilization)
мера времени от формирования заказа на программу до поставки
мера способности производителя разрабатывать программное обеспечение высокого качества
Метрики качества ПО
22
ПКИПТ - 2020
Метрики качества
Метрики требований:
(requirement conformance)
(requirement stability)
дают возможность контролировать спецификации, изменение требований, а также степень их удовлетворения
ПКИПТ - 2020
Метрики качества ПО
22
Метрики качества
кумулятивное число обнаруженных ошибок
Метрики качества:
- Адаптируемость(adaptibility)
- Сложность интерфейсов
и интеграции (complexity of
interfaces and integration)
(test coverage)
- Надежность (reliability)
- Профили ошибок (fault profiles)
- Степень удовлетворения
потребностей заказчика
(customer satisfaction)
метрика, измеряющая степень сложности интерфейса или дополнительного программирования требуемого для интеграции компоненты в систему
степень полноты различных типов тестирования
мера гибкости системы
вероятность работы системы без отказов
степень соответствия программного обеспечения ожиданиям и требованиям заказчика
Метрики качества ПО
22
ПКИПТ - 2020
Метрики качества
Ц иклическая модель
- Модульность (Modularity) Изменяемость (Changeability) Сопровождаемость (Maintainability)
- Модульность (Modularity)
- Изменяемость (Changeability)
- Сопровождаемость (Maintainability)
- Адаптивность (adaptability) Настраиваемость (customizability) Переносимость (Portability) Способность к взаимодействию (Interoperability)
- Настраиваемость (customizability)
- Переносимость (Portability)
- Способность к взаимодействию (Interoperability)
ПКИПТ - 2020
Метрики качества ПО
22
Метрики качества
С тоимость эксплуатации и сопровождения в составе общей стоимости владения системы (total cost ownership ) увеличивается с ростом системы опережающими темпами
Вывод:
Чем легче программный продукт модифицировать, тем легче достичь изначальных показателей качества ( кроме производительности )
ПКИПТ - 2020
Метрики качества ПО
22
Проектно-ориентированные метрики качества
Проектно-ориентированные метрики качества разрабатываются в виде стандарта качества на ранних стадиях разработки проекта. Продукт проекта должен удовлетворять этим метрикам на всех стадиях. Такие метрики разрабатываются структурно - сверху-вниз.
ПКИПТ - 2020
Метрики качества ПО
22
Методология создания проектно-ориентированных метрик качества
- Определение нетехнического уровня
- Определение технического уровня
- Декомпозиция суб-факторов в метрики
ПКИПТ - 2020
Метрики качества ПО
22
Определение нетехнического уровня (предназначен для заказчика)
- Формирование требований качества
- Выбор свойств, установка приоритетов и связи с требованиями.
- Присвоение свойств факторам качества, которые отражают представление заказчика на качество.
- Установка измерений для факторов качества. Определение допустимых коридоров для величин качества.
ПКИПТ - 2020
Метрики качества ПО
22
Определение технического уровня (предназначен для разработчиков)
Производится декомпозиции факторов качества в измеряемые характеристики программного обеспечения, определяемые как суб-факторы.
ПКИПТ - 2020
Метрики качества ПО
22
Декомпозиция суб-факторов в метрики (нижний уровень иерархии)
Это уровень разработанных правил и норм, которым должен удовлетворять продукт или процесс с тем, чтобы были выполнены факторы качества.
ПКИПТ - 2020
Метрики качества ПО
22
Статистический анализ
Статистические методы предназначены для п олучения объективных данных , которые о беспечивают принятие э ффективных р ешений при производстве .
ПКИПТ - 2020
Метрики качества ПО
22
Методы статистического анализа
- Гистограмма
- Диаграммы рассеивания
- Контрольные карты
- Диаграммы Парето
ПКИПТ - 2020
Метрики качества ПО
22
Гистограмма
Гистограмма - это графический метод представления данных, сгруппированных по частоте попадания в определенный интервал.
ПКИПТ - 2020
Метрики качества ПО
22
Диаграммы рассеивания
Диаграммы рассеивания – графическое представление пар исследуемых данных в виде множества точек на координатной плоскости. Предназначены для оценки наличия или отсутствия зависимости между двумя изучаемыми величинами.
ПКИПТ - 2020
Метрики качества ПО
22
Контрольные карты
Контрольные карты графически отражают динамику процесса, т.е. изменение показателей во времени. На карте отмечен диапазон неизбежного рассеивания, который лежит в пределах верхней и нижней контрольных границ.
ПКИПТ - 2020
Метрики качества ПО
22
Диаграммы Парето
Диаграмма Парето - графическое представление степени важности факторов. Предназначена для определения немногочисленных существенно важных причин .
Диаграмма Парето:
- по результатам деятельности
- по причинам
отражает нежелательные результаты в сферах качества, себестоимости, поставок, безопасности
отражает причины проблем по кадрам, оборудованию, методам работы
ПКИПТ - 2020
Метрики качества ПО
22
Список литературы
- Александр Попов «Метрики качества программного обеспечения», http://www.pmprofy.ru/
- Владимир Липаев, «Сетевой журнал» №3.2002
- Владимир Липаев «Стандартизация характеристик и оценивания качества программных средств», http://www.fostas.ru/library/Lipaev_6.rtf
- Владимир Липаев «Сертификация систем качества предприятий, разрабатывающих программные средства для информационных систем, на соответствие стандартам серии ISO 9000», http://tqm.stankin.ru/arch/n01/08.html
- ГОСТ Р ИС09126 «Характеристики качества и руководства по их применению»
- Жарко Е.Ф. «Проблемы управления качеством программного обеспечения» http://www31.ipu.rssi.ru/0887.pdf
- Романов В.Ю. «Анализ программного обеспечения с использованием объектно-ориентированных метрик. Обзор метрик», http://oit.cmc.msu.ru/romanov/russian/pub/OOMetrics-Report.htm
- http :// www . ispu . ru / library / lessons / mizonov / index . html
- http://spc-consulting.ru/
ПКИПТ - 2020
Метрики качества ПО
22