Темная сторона метрик

Preview:

Citation preview

Темная сторона метрик

Роман ИВЛИЕВ

2002-....

• Тестировщик

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

• Руководитель разработчиков

• Руководитель тестировщиков

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

• CTO

• CIO

О СЕБЕ

• 10 лет в Интернете

• 570КК выручки за 2014 год

• 0,5КК уников в сутки

• 30+ сотрудников департамента информационных технологий

• 70Тб трафика в месяц

• А ещё мы покупаем конкурентов ;)

О BANKI.RU

• Метрики, что это и что с ними делать

• Метрики - примеры

• Темная сторона метрик, как не надо

• Темная сторона метрик, как избежать

ПРО ЧТО Я БУДУ РАССКАЗЫВАТЬ

БУДЬТЕ БДИТЕЛЬНЫ

Просто весёлая картинка в субботу

Метрики, что это?

• Метрика по ISO 14598 - это количественный масштаб и метод, который может использоваться для измерения.

• Метрика - это мера, позволяющая получить численное значение некоторого свойства объекта

Метрики, что это?

Метрики, зачем?

• Найденные дефекты/ исправленные дефекты

Метрики, примеры (простые)

• Найденные дефекты/ исправленные дефекты

• Процент выполненных тестов /процент успешных тестов

Метрики, примеры (простые)

• Найденные дефекты/ исправленные дефекты

• Процент выполненных тестов /процент успешных тестов

• Метрика стилистики и понятности (например, плотность комментариев)

Метрики, примеры (простые и один не простой)

 

Иллюстрация, как можно сломать мозг

• Major Defects Per Test Case Review• Minor Defects Per Test Case Review• Total Defects Per Test Case Review• Ratio of Major to Minor Defects Per Test Case Review• Total Defects Per Test Case Review Hour• Major Defects Per Test Case Review Hour• Ratio of Major to Minor Defects Per Test Case Review

Hour• Number of Open Defects Per Test Review• Number of Closed Defects Per Test Case Review• Ratio of Closed to Open Defects Per Test Case Review• Number of Major Open Defects Per Test Case Review• Number of Major Closed Defects Per Test Case Review• Ratio of Major Closed to Open Defects Per Test Case

Review• Number of Minor Open Defects Per Test Case Review• Number of Minor Closed Defects Per Test Case Review• Ratio of Minor Closed to Open Defects Per Test Case

Review• Percent of Total Defects Captured Per Test Case Review• Percent of Major Defects Captured Per Test Case Review• Percent of Minor Defects Captured Per Test Case Review• Ratio of Percent Major to Minor Defects Captured Per Test

Case Review• Percent of Total Defects Captured Per Test Case Review

Hour• Percent of Major Defects Captured Per Test Case Review

Hour• Percent of Minor Defects Captured Per Test Case Review

Hour

• Ratio of Percent Major to Minor Defects Captured Per Test Case Review Hour

• Percent of Total Defect Residual Per Test Case Review• Percent of Major Defect Residual Per Test Case Review• Percent of Minor Defect Residual Per Test Case Review• Ratio of Percent Major to Minor Defect Residual Per Test

Case Review• Percent of Total Defect Residual Per Test Case Review

Hour• Percent of Major Defect Residual Per Test Case Review

Hour• Percent of Minor Defect Residual Per Test Case Review

Hour• Ratio of Percent Major to Minor Defect Residual Per Test

Case Review Hour• Number of Planned Test Case Reviews• Number of Held Test Case Reviews• Ratio of Planned to Held Test Case Reviews• Number of Reviewed Test Cases• Number of Unreviewed Test Cases• Ratio of Reviewed to Unreviewed Test Cases• Number of Compliant Test Case Reviews• Number of Non-Compliant Test Case Reviews• Ratio of Compliant to Non-Compliant Test Case Reviews• Compliance of Test Case Reviews• Non-Compliance of Test Case Reviews• Ratio of Compliance to Non-Compliance of Test Case

Reviews

 

Иллюстрация, как можно сломать мозг

• Major Defects Per Test Case Review• Minor Defects Per Test Case Review• Total Defects Per Test Case Review• Ratio of Major to Minor Defects Per Test Case Review• Total Defects Per Test Case Review Hour• Major Defects Per Test Case Review Hour• Ratio of Major to Minor Defects Per Test Case Review

Hour• Number of Open Defects Per Test Review• Number of Closed Defects Per Test Case Review• Ratio of Closed to Open Defects Per Test Case Review• Number of Major Open Defects Per Test Case Review• Number of Major Closed Defects Per Test Case Review• Ratio of Major Closed to Open Defects Per Test Case

Review• Number of Minor Open Defects Per Test Case Review• Number of Minor Closed Defects Per Test Case Review• Ratio of Minor Closed to Open Defects Per Test Case

Review• Percent of Total Defects Captured Per Test Case Review• Percent of Major Defects Captured Per Test Case Review• Percent of Minor Defects Captured Per Test Case Review• Ratio of Percent Major to Minor Defects Captured Per Test

Case Review• Percent of Total Defects Captured Per Test Case

Review Hour• Percent of Major Defects Captured Per Test Case Review

Hour• Percent of Minor Defects Captured Per Test Case Review

Hour

• Ratio of Percent Major to Minor Defects Captured Per Test Case Review Hour

• Percent of Total Defect Residual Per Test Case Review• Percent of Major Defect Residual Per Test Case Review• Percent of Minor Defect Residual Per Test Case Review• Ratio of Percent Major to Minor Defect Residual Per Test

Case Review• Percent of Total Defect Residual Per Test Case Review

Hour• Percent of Major Defect Residual Per Test Case Review

Hour• Percent of Minor Defect Residual Per Test Case Review

Hour• Ratio of Percent Major to Minor Defect Residual Per Test

Case Review Hour• Number of Planned Test Case Reviews• Number of Held Test Case Reviews• Ratio of Planned to Held Test Case Reviews• Number of Reviewed Test Cases• Number of Unreviewed Test Cases• Ratio of Reviewed to Unreviewed Test Cases• Number of Compliant Test Case Reviews• Number of Non-Compliant Test Case Reviews• Ratio of Compliant to Non-Compliant Test Case Reviews• Compliance of Test Case Reviews• Number Non-Compliance of Test Case Reviews• Ratio of Compliance to Non-Compliance of Test Case

Reviews

 

Вернёмся к…

• Счетчик новых и исправленных дефектов

• Счетчик удачных и неудачных тестов

• Число строк кода и число комментариев

Чем их мерять?

• Все дефекты найдены и задокументированы

• Есть цель исправить все дефекты

• Если все известные дефекты исправлены – продукт готов

• Есть разумное объяснение для всех исправленных дефектов

Смеркалось Счетчики, предположения

Смеркалось Проценты, предположения

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

• Все четко понимают, что такое «тест»

• Все четко понимают, что такое «выполненный»

• Выходом теста является либо «Прошел», либо «Не прошел»

Смеркалось Стилистика

Тот, кто считает, точно знает что делает

ВЫГЛЯДИТ НЕПЛОХО

ЧТО С ЭТИМ не нужно ДЕЛАТЬ?

КЛАССИЧЕСКИЙ ЗАГОН УПРАВЛЕНЦА

КЛАССИЧЕСКИЙ ЗАГОН УПРАВЛЕНЦА

• Взять цифры

КЛАССИЧЕСКИЙ ЗАГОН УПРАВЛЕНЦА

• Взять цифры (их кто-то написал)

КЛАССИЧЕСКИЙ ЗАГОН УПРАВЛЕНЦА

• Взять цифры (их кто-то написал)

• Изучить внимательно

КЛАССИЧЕСКИЙ ЗАГОН УПРАВЛЕНЦА

• Взять цифры (их кто-то написал)

• Изучить внимательно (это важно!)

КЛАССИЧЕСКИЙ ЗАГОН УПРАВЛЕНЦА

• Взять цифры (их кто-то написал)

• Изучить внимательно (это важно!)

• Сделать выводы

КЛАССИЧЕСКИЙ ЗАГОН УПРАВЛЕНЦА

• Взять цифры (их кто-то написал)

• Изучить внимательно (это важно!)

• Сделать выводы (ТОЛЬКО верные)

КЛАССИЧЕСКИЙ ЗАГОН УПРАВЛЕНЦА

• Взять цифры (их кто-то написал)

• Изучить внимательно (это важно!)

• Сделать выводы (ТОЛЬКО верные)

• Наказать виновных

КЛАССИЧЕСКИЙ ЗАГОН УПРАВЛЕНЦА

• Взять цифры (их кто-то написал)

• Изучить внимательно (это важно!)

• Сделать выводы (ТОЛЬКО верные)

• Наказать виновных (и остальных)

КЛАССИЧЕСКИЙ ЗАГОН УПРАВЛЕНЦА

• Взять цифры (их кто-то написал)

• Изучить внимательно (это важно!)

• Сделать выводы (ТОЛЬКО верные)

• Наказать виновных (и остальных)

• Внести «коррективы»

КЛАССИЧЕСКИЙ ЗАГОН УПРАВЛЕНЦА

• Взять цифры (их кто-то написал)

• Изучить внимательно (это важно!)

• Сделать выводы (ТОЛЬКО верные)

• Наказать виновных (и остальных)

• Внести «коррективы» (а как иначе?)

КЛАССИЧЕСКИЙ ЗАГОН УПРАВЛЕНЦА

• Взять цифры (их кто-то написал)

• Изучить внимательно (это важно!)

• Сделать выводы (ТОЛЬКО верные)

• Наказать виновных (и остальных)

• Внести «коррективы» (а как иначе?)

• ПРОФИТ!

Методы «управления» Счетчики

• Объединение дефектов в один

• «Альтернативный» коллектор дефектов

• Добавление дефекта, только после того, как он был исправлен

• Самостоятельный поиск и исправление дефектов разработчиком

Следствие Счетчики

• А как корректно учитывать дефекты?

• Как заставить отказаться от альтернативных путей?

• Как считать сложные дефекты?

• И т.д.

Методы «управления» Проценты

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

• Прогон только «хороших» тестов

• Исправление тестов по поведению софта

Следствие Проценты

• Падает ли тест дважды, если он находит два дефекта?

• Надо ли прогонять тест, который наверняка упадет?

• Надо ли включать в отчет такой дефект?

• Если функционал работает частично, все тесты отклонять, или только те, что реально упали?

Методы управления Стилистика

• Комплексное

Следствие Стилистика

• Комплексное

НИЧОСИ…

ПОПРОБУЕМ РАЗОБРАТЬСЯ

ВАЖНО! Стратегия должна быть

Стратегия выбора метрик: измерения

• Понять назначение измерения. Какое измерение для чего будет использоваться

• Понять цель измерения. Как широко будут использоваться измерения

• Найти объект измерения

• Определиться с масштабом измерения.

Просто пример измерения

Просто пример масштаба

Стратегия выбора метрик: инструмент

• Найти описание естественного изменения объекта измерений, т.е. некоторый алгоритм, по которому изменяется объект измерения.

• Найти инструмент для измерения свойств объекта. Например, счетчик новых дефектов.

• Важно, чтобы инструмент был исправен!

Стратегия выбора метрик: инструмент

• Понять как изменяются измерения, сделанные с использованием выбранного инструмента.

• Определиться с масштабом инструмента для измерений.

Стратегия выбора метрик: инструмент

• Понять каким образом объект измерения соотносится с инструментом.

• Выяснить побочные эффекты, которые могут возникнуть при измерениях объекта выбранным инструментом.

СТАБИЛЬНОСТЬ И РЕГУЛЯРНОСТЬ

ЕДИНАЯ ТОЧКА ЗРЕНИЯ

ПРИМЕР

• Команда А: тех.долг - 11 задач .

• Команда Б: тех.долг - 110 задач .

• Команда В: тех.долг - 0 задач .

• Команда Д: тех.долг - 35 задач .

ПРИМЕР

• Команда А: тех.долг - 11 задач .

• Команда Б: тех.долг - 110 задач .

• Команда В: тех.долг - 0 задач .

• Команда Д: тех.долг - 35 задач .

• О чём нам говорят эти цифры?

КАЖДОМУ СВОЕ

«Слова вы услышали, поиск пути за вами»

Уильям Деминг

СПАСИБО

С удовольствием отвечу на Ваши вопросы

@dumtest

roman.ivliev@mail.ru

roman.ivliyev

Recommended