Лекции по курсу «Метрология и качество программного обеспечения»

advertisement
Лекции по курсу
«Метрология и качество программного
обеспечения»
Лекция 5. Измерения при разработке
и сопровождении программного
продукта. Основные метрики
эффективности процесса разработки
и метрики качества ПС
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Роль и место измерений в производстве
ПС
Определение и назначение программы измерений
Программа измерений компании – комплекс мероприятий,
направленных на количественную оценку эффективности работы
компании.
Программа измерений выполняется как в рамках отдельных
проектов, осуществляемых компанией, так и в рамках определённых
видов деятельности компании. На крупных предприятиях программа
измерений осуществляется специальным отделом по обеспечению
качества – SQA (Software Quality Assurance team).
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Роль и место измерений в производстве
ПС
Цели программы измерений
1. Изучение выполняемых процессов в количественном выражении
для обоснованного принятия управленческих решений;
2. Установка количественных целей компании по улучшению
выполняемых процессов;
3. Сбор и анализ количественных данных о выполняемых процессах
для отслеживания прогресса в достижении установленных целей.
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Роль и место измерений в производстве
ПС
Где необходима программа измерений







Планирование проекта или другой деятельности
Мониторинг выполнения проекта
Формулирование обязательств по контракту или формальных
требований заказчика
Поддержка потребностей менеджмента
Обеспечение стратегических целей компании
Сравнение показателей компании с показателями по индустрии
или иными внешними показателями
Разработка планов улучшения процесса разработки ПО
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Роль и место измерений в производстве
ПС
Понятие измерения
В обсуждаемом контексте под измерением понимается процесс
назначения символов (как правило, чисел) для представления
атрибутов интересующей нас сущности по некоторому правилу.
Элементами понятия измерения в данном случае являются:
-
измеряемый объект или процесс;
-
атрибуты объекта или процесса;
-
символы (обычно числа) и единицы измерения для
представления измеряемых атрибутов;
-
правило назначения символов атрибутам.
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Роль и место измерений в производстве
ПС
Понятие измерения (пример)

Измеряемый объект: код.
Атрибут объекта: размер.
Представление атрибута: в виде числа (единица измерения -

Правило вычисления: подсчитываются строки кода, не


LOC).
являющиеся пустыми или комментариями.
Целью измерений всегда является ответ на какие-либо вопросы
относительно измеряемого объекта или процесса. Если таковых
вопросов нет – измерения являются ненужными.
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Виды измерений, связанных с
разработкой ПО
Два вида измерений и связанные с ними понятия
Основными видами измерений при разработке ПО являются
-
измерения продуктов;
-
измерения процессов производства.
С ними связаны понятия метрики и индикатора.
Метрика – функция, получающая на вход некоторые данные и
дающая на выходе единственное числовое значение.
Индикатор – форма представления набора значений метрики,
удобная для анализа.
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Виды измерений, связанных с
разработкой ПО
Три типа индикаторов
Индикатор-цель (Success) – должно быть достигнуто некоторое
целевое значение метрики (например, успешно пройдено 95%
тестов);
Индикатор-прогресс (Progress) – отслеживается развитие процесса
во времени (например, число найденных ошибок увеличивается
или уменьшается);
Индикатор-анализ (Analysis) – используется с целью изучения
объекта измерений.
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Виды измерений, связанных с
разработкой ПО
Методика GQ(I)M – Goal Question Indicator Metric
Методика GQ(I)M предписывает соблюдение следующих этапов
формирования программы измерений:

Идентификация целей

Определить цели

Сформулировать вопросы

Выбрать и описать метрики и индикаторы

Планирование процесса измерений

Выполнение измерений

Собрать данные

Проверить правильность собранных данных

Анализ и интерпретация данных
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Виды измерений, связанных с
разработкой ПО
Методика GQ(I)M – иерархическая схема
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Виды измерений, связанных с
разработкой ПО
Методика GQ(I)M – пример фрагмента иерархической схемы
Стратегическая
цель
Подцель
Вопрос
Повысить качество
разрабатываемого ПО
Повысить эффективность формальных
инспекций
Какой объём рабочего продукта инспектируется
за единицу времени?
Индикатор
Метрика
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Inspection Rate
Примеры метрик эффективности
процесса производства
Наиболее употребительные метрики, характеризующие
эффективность производственного процесса




On project % time
Productivity
Phase Containment
Effectiveness
Inspection Fault Density
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС




Inspection Preparation Rate
Inspection Rate
Problem Resolution Rate
Faults Screening
Примеры метрик эффективности
процесса производства
On project % time (OPPT)
OPPT = (Рабочее время, затраченное на проект / Общее рабочее
время)*100%
Стратегическая цель метрики – сокращение сроков выполнения
проектов по разработке ПО.
Изучаемый объект метрики – рабочее время,
измеряемый атрибут – доля рабочего времени, затраченная на
работу по проектам.
Единица измерения - %.
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Примеры метрик эффективности
процесса производства
Productivity
Productivity = LOC / Рабочее время, затраченное на проект;
Стратегическая цель метрики – повысить производительность труда.
Изучаемый объект метрики – проект,
измеряемый атрибут – производительность труда на проекте.
Единица измерения – LOC / человеко-час.
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Примеры метрик эффективности
процесса производства
Phase Containment Effectiveness (PCE)
PCE = [D(I, I) / Sum(D(I, J))]*100%,
где I, J =1,2,..,5, D(I,J) – число ошибок внесённых на фазе I и обнаруженных
на фазе J. 1,…,5 – номера фаз проекта (1 – планирование, 2 –
разработка требований, 3 – разработка дизайна, 4 – кодирование, 5 –
тестирование).
Стратегическая цель метрики – повысить качество разрабатываемого ПО,
сократить сроки выполнения проектов по разработке ПО.
Изучаемый объект метрики – фаза проекта, измеряемый атрибут –
эффективность обнаружения ошибок, внесённых на этой фазе.
Единица измерения – %.
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Примеры метрик эффективности
процесса производства
Phase Containment Effectiveness (PCE) – визуальное представление
PCE Performance
80,00%
70,00%
60,00%
50,00%
40,00%
30,00%
20,00%
90,00%
75,00%
63,2%
75,0%
66,7%
70,00%
66,2%
53,5%
Good!
PCE %
100,00%
90,00%
40,4%
10,00%
0,00%
PCE-Req
PCE-Design
Mean
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
PCE
PCE-Coding
Goal
Примеры метрик эффективности
процесса производства
Inspection Fault Density (IFD)
IFD = (Количество найденных ошибок / Размер рабочего продукта)
Стратегическая цель метрики – повысить качество разрабатываемого
ПО.
Изучаемый объект метрики – инспекция,
измеряемый атрибут – плотность найденных в ходе инспекции
ошибок.
Единица измерения – ошибка / <страница, требование, LOC, тест>.
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Примеры метрик эффективности
процесса производства
Inspection Preparation Rate (IPR)
IPR = (Количество инспекторов * Размер продукта) / Общее время
подготовки;
Стратегическая цель метрики – повысить качество разрабатываемого
ПО.
Изучаемый объект метрики – подготовка к инспекции, измеряемый
атрибут – производительность подготовки к инспекции.
Единица измерения – <страница, требование, LOC, тест>/ час.
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Примеры метрик эффективности
процесса производства
Inspection Rate (IR)
IR = Размер продукта / Общее время инспектирования;
Стратегическая
цель
метрики
разрабатываемого ПО.
–
повысить
качество
Изучаемый объект метрики – проведение инспекции, измеряемый
атрибут – производительность инспектирования.
Единица измерения – <страница, требование, LOC, тест>/ час.
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Примеры метрик эффективности
процесса производства
Problem Resolution Rate (PRR)
PRR = Количество дней на обработку задачи;
Стратегическая цель метрики – сократить сроки выполнения
проектов по разработке ПО.
Изучаемый объект метрики – задача, измеряемый атрибут – время
обработки.
Единица измерения – день.
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
0,00
MOTrh04571
MOTrh04578
MOTrh04626
LIBbb89398
MOTrh04691
MOTrh04745
LIBbb96615
LIBbb97209
LIBdd00024
LIBdd00037
LIBdd00056
MOTrh04799
LIBdd00691
LIBdd01124
LIBdd01242
LIBdd01850
LIBdd04365
LIBdd06013
LIBdd06056
LIBdd06886
LIBdd07275
MOTrh04900
LIBdd07740
MOTrh04910
LIBdd07935
LIBdd08250
LIBdd08605
LIBdd08817
MOTrh04921
LIBdd09155
LIBdd09684
LIBdd09822
LIBdd10009
MOTrh04949
LIBdd10894
MOTrh04965
LIBdd11188
LIBdd11201
LIBdd11202
LIBdd11519
LIBdd11829
MOTrh04985
MOTrh04996
LIBdd12657
LIBdd13030
LIBdd13045
LIBdd13171
LIBdd13185
MOTrh05019
LIBdd14100
LIBdd14711
LIBdd14925
LIBdd15304
LIBdd15305
LIBdd15336
LIBdd15345
LIBdd15729
MOTrh05046
LIBdd16193
LIBdd16211
MOTrh05064
LIBdd17104
LIBdd17168
LIBdd17723
MOTrh05073
LIBdd18204
LIBdd18642
MOTrh05101
MOTrh05102
LIBdd19963
LIBdd22393
MOTrh05123
LIBdd23407
LIBdd23430
LIBdd27716
LIBdd23965
MOTrh05162
MOTrh05166
LIBdd26239
LIBdd26535
LIBdd27322
LIBdd27737
MOTrh05205
LIBdd28828
LIBdd30572
LIBdd30835
LIBdd30925
LIBdd30977
LIBdd31236
Days
40,00
30,00
Good!
Примеры метрик эффективности
процесса производства
Problem Resolution Rate (PRR) – визуальное представление
PCR Resolution Time
New To Resolve (DDTS)
60,00
50,00
20,00
10,00
Actual PCR R-N
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Mean
UCL
LCL
Goal
Примеры метрик эффективности
процесса производства
Faults Screening (FS)
FS = (Общее количество ошибок – Число не найденных ошибок)/
Общее количество ошибок * 100%;
Стратегическая цель метрики – повысить качество разрабатываемого
ПО.
Изучаемый объект метрики – проект, измеряемый атрибут –
эффективность обнаружения дефектов.
Единица измерения – %.
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Примеры метрик эффективности
процесса производства
Faults Screening (FS) – визуальное представление
99,00%
98,50%
98,00%
PS
Goal
97,50%
97,00%
96,50%
96,00%
Project1 Project2 Project3 Project4 Project5 Project6
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Примеры метрик качества продуктов
Наиболее употребительные метрики, характеризующие качество
производимых программных продуктов


In Process Faults
Product Fault Density
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Примеры метрик качества продуктов
In Process Faults (IPF)
IPF = (Число обнаруженных ошибок до выпуска его релиза) / LOC;
Стратегическая цель метрики – повысить качество разрабатываемого
ПО.
Изучаемый объект метрики – продукт,
измеряемый атрибут – плотность неполадок.
Единица измерения – неполадка / LOC.
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Примеры метрик качества продуктов
In Process Faults (IPF) – визуальное представление
IPF Performance
(IPF/Delta KAELOC)
3,00
2,50
Good!
IPF/ Delta KAELOC
3,50
2,00
1,50
1,00
0,50
0,00
IPF Total
IPF-Req
IPF-Design
IPF (Faults/KAELOC)
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
IPF-Coding
Mean
Goal
IPF-Test
Примеры метрик качества продуктов
Product Fault Density (PFD)
PFD-Req = Число ошибок, допущенных на этапе разработки
требований / Размер требований;
PFD-Design = Число ошибок, допущенных на этапе дизайна / Размер
документов дизайна;
PFD-Coding = Число ошибок, допущенных на этапе кодирования /
LOC;
PFD-Test = Число ошибок, допущенных на этапе тестирования /
Количество тестов;
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Примеры метрик качества продуктов
Product Fault Density (PFD) - продолжение
Стратегическая
цель
метрики
разрабатываемого ПО.
–
повысить
качество
Изучаемый объект метрики – продукт, измеряемый атрибут –
плотность неполадок (учитывает все ошибки).
Единица измерения – неполадка / единица размера.
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
Примеры метрик качества продуктов
Product Fault Density (PFD) – визуальное представление
Fault / Size unit
Products Fault Density
2
1,8
1,6
1,4
1,2
1
0,8
0,6
0,4
0,2
0
1,8085
0,6136
0,2861
0,2077
FD-Req (Fault/Req)
FD-Design
(Fault/Page)
FD-Coding
(Fault/KAELOC)
Products Fault Density
© В.М. Гриняк, доц. каф. ИСКТ ВГУЭС
FD-Test (Fault/Test)
Download