Скачиваний:
40
Добавлен:
29.01.2021
Размер:
5.08 Mб
Скачать
    1. Метрики

Все вышеперечисленные деятельности в своем исполнении опираются на те или иные метрики, которые регулярно собираются и анализируются для определения текущего состояния проекта и его соответствия утвержденному плану разработки. Эти метрики хранятся в БД проекта и накапливаются в организации-разработчике для сравнительного анализа и планирования. Всего известно свыше 500 различных метрик, которые могут собираться в программном проекте; из них в каждом конкретном проекте используется только небольшая часть, выбор которой определяется исполнителем и заказчиком, исходя из целей и задач проекта.

Все эти метрики, как правило, должны обладать следующими свойствами:

  • простота для понимания и точная определенность – для упрощения их вычисления и анализа;

  • дешевизна – для минимизации связанных с ними расходов на их сбор, анализ и дальнейшее применение;

  • устойчивость – чтобы изменения в их значениях в ходе проекта имели осмысленную интерпретацию;

  • согласованность между собой и с длительной историей использования – чтобы максимизировать свою ценность для исполнителей и заказчика;

  • ненавязчивость – чтобы обеспечивать наибольшие возможности для их собирания, желательно с минимальным участием исполнителей.

В программном проекте различают три типа метрик:

метрики самого процесса разработки (Process Metrics) – для улучшения разработки и сопровождения, такие как:

  • эффективность сдерживания дефектов (Defect Containment Effectiveness) в процентах числа дефектов, выявленных до сдачи продукта, от общего числа дефектов (выявленных до сдачи плюс выявленных уже после сдачи);

  • себестоимость программной разработки (Cost of Software Development) в суммарных затратах на одного участника разработки в денежном выражении в месяц, включая оборудование и накладные расходы;

  • производительность труда (Productivity) в KAELOC на 1 человеко-месяц;

метрики разрабатываемого продукта (Product Metrics) – для улучшения его качества, такие как:

  • размер исходного кода (Source Code Size) в KLOC или KAELOC;

  • сложность программного кода (Code Complexity) в единицах, определяемых выбранной моделью оценки сложности;

  • объем разработанной документации (Documentation Size) в числе страниц или строк текста;

  • стоимость разработки (Development Cost) в денежном выражении на KLOC или KAELOC продукта;

  • пост-релизные дефекты (Post-Release Defects) в количестве дефектов, выявленных уже после сдачи продукта, как на стороне заказчика, так и исполнителя в течение определенного срока (обычно 1 год или 6 месяцев), на 1 KLOC или KAELOC;

метрики данного проекта (Project Metrics) – для его улучшения, такие как:

  • количество разработчиков и тестировщиков (Staffing) в количестве ставок и фактическом количестве людей при использовании неполных ставок;

  • количество различных методов и инструментов, используемых в разработке (Methods and Tools), включая лицензии на ПО;

  • уже понесенные трудозатраты (Effort) в человеко-днях или человеко-месяцах;

  • суммарная текущая стоимость проекта (Project Cost) в денежном выражении;

  • достигнутый процент прохождения тестов из запланированного тестового набора (Tests Passed);

  • достигнутый процент покрытия тестами (Test Coverage) требований из спецификации и(или) кода по различным критериям покрытия;

  • обнаруженная плотность ошибок/дефектов (Defect Density) в количестве обнаруженных дефектов (ошибок) на 1 KLOC или 1 KAELOC продукта;

  • достигнутое качество кода (Product Quality) в оценке количества еще не выявленных дефектов плюс число уже известных, но еще не устраненных дефектов, на 1 KLOC или 1 KAELOC продукта;

  • достигнутая степень завершенности проекта (Project Completion) в процентах по объему готового кода или по количеству готовых модулей;

  • точность следования графику (Schedule Accuracy) в процентах отклонений фактических дат запланированных событий проекта от плановых дат;

  • точность поставок (On Time Delivery) в проценте поставок, сделанных точно в срок, от всех совершенный поставок в данном проекте;

  • затраты на обеспечение качества (Cost of Quality) в процентах от всех трудозатрат в данном проекте;

  • затраты на переделки (Cost of Poor Quality) в процентах от всех трудозатрат в данном проекте; включают в себя затраты на поиск найденных ошибок, их исправление и повторение разработки до верификации сделанных исправлений включительно; входят как часть в затраты на обеспечение качества;

  • текущая удовлетворенность заказчика ходом проекта (Customer Satisfaction) в баллах (обычно от 1 – самая низкая до 10 – самая высокая).

Для сравнения вот значения некоторых метрик, взятые из [8]:

Табл. 13. Эталонные данные по промышленности США

Метрика

Среднее

Лучшее в классе

Производительность (число KAELOC на 1 человеко-месяц)

3,23

7,14

Стоимость (стоимость разработки 1 KAELOC)

$4 334

$1 962

Плотность дефектов (число дефектов на 1 KAELOC)

15,6

8,1

Эффективность устранения дефектов (% от общего числа)

95%

99,50%

Пост-релизные дефекты (число дефектов на 1 KAELOC)

0,78

0,041

Источник: Capers Jones (2000) Software Assessments, Benchmarks, and Best Practice

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