От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
1. Software quality assurance days
18 Международная конференция
по вопросам качества ПО
sqadays.com
Москва. 27–28 ноября 2015
Сергей Мартыненко
Москва, РФ
Подготовка стратегии тестирования под
высокорискованный, высокодоходный проект
9. Варианты стратегий II-мировой
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Реальность
01.09.1939 02.09.1945
План
весна- лето1944
10. Варианты стратегий II-мировой
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Быстрое уничтожение значительной части армии
Лишение противника трудоспособного населения
Парализация транспортной системы
Парализация производства
…
11. Варианты стратегий II-мировой
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Быстрое уничтожение значительной части армии
Лишение противника трудоспособного населения
Парализация транспортной системы
Парализация производства
13. Операция Chastise
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
минус 45% на 3-4 месяца – реальность
минус 65% на год - возможность
14. РАЗРАБОТКА СТРАТЕГИИ
ТЕСТИРОВАНИЯ
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Введение
Понятие стратегии
Разработка стратегии тестирования
Общие принципы
Рисуем фон
Строим стратегии
18. Связь стратегий
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Базовые принципы стратегии создания продукта:
1. 2.
Стратегия
системного
анализа
Стратегия
проектирования
Стратегия
программирова
ния
Стратегия
тестирования
19. РИСУЕМ ФОН
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Введение
Понятие стратегии
Разработка стратегии тестирования
Общие принципы
Рисуем фон
Строим стратегии
20. Рисуем фон. Приоритеты.
1. Более половины таких проектов не взлетает.
2. Те, которые взлетают, приносят миллионы в неделю. Не
рублей. Каждая лишняя неделя разработки - это
многомиллионные потери. Приоритет – скорость.
3. Ошибка в системе, подобная описанной в "данетке для
разработчика» или в «Дефект ценой в 440 миллионов
долларов», может сделать фирму банкротом в течении
часа.
4. Окно возможностей быстро захлопывается.
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
21. Пример. Встраиваемый софт.
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Жизненный цикл
продукта ранее
Жизненный цикл
продукта сейчас
Продажи
t
23. Рисуем фон. Архитектура
системы.
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Ядро
API
Наша разработка прикладных
модулей
Сторонняя разработка
прикладных модулей
Платформа А
Платформа B
24. Рисуем фон. Вехи.
• Выход в промышленную эксплуатацию
• Приемо-сдаточные испытания
• Начало разработки прикладных модулей
• Начало разработки ядра
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
26. Рисуем фон. Расчет бюджета
• Окно возможностей 100-300 рабочих дней
• Продажи в один рабочий день порядка $1 000 000
• Архитектор ядра обходится фирме в $1 000 / день
• Тестировщик ядра обходится фирме в $500 / день
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
27. СТРОИМ СТРАТЕГИИ
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Введение
Понятие стратегии
Разработка стратегии тестирования
Общие принципы
Рисуем фон
Строим стратегии
28. Фасеты стратегии тестирования
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Стратегия
тестирования
Негатив vs
Позитив
Исходя из
ограничения
системы
Автоматизация
vs вручную
ГОСТ 9126
Знание кода
Кем
проводится
…
Исследовател
ьское или
сценарное?
29. Фасет стратегии тестирования
«Позитив-Негатив»
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Стратегия
тестирования
Негатив vs
Позитив
При сдаче
ядра -
позитив
На ПСИ
согласно
ПМИ
В конце
негатив
Приоритеты на разных
вехах
В продакшене не
должно быть
возможности потерь
На ранней стадии
нужно увидеть
соответствие Идее
Как можно раньше
передать API
разработчикам
прикладных
модулей
30. Стратегия программирования
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Полная утилизация рабочего времени
t, дней
Работа
Легенда
Простои
0 дефектов
10095
33. Стратегия программирования
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Полная утилизация рабочего времени
t, дней
Работа
Легенда
Простои
0 дефектов
10095 120
Заморозка
нового
функционала
Заморозка
нового
функционала
34. Стратегия программирования
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Полная утилизация рабочего времени
t, дней
Работа
Легенда
Простои
0 дефектов
10095 120
Проект В
150
36. Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Склад
В производство
Делается
На проверку
Тестируется
В релиз
Если 5 программистов, то не более 7 задач в желтой зоне
37. Стратегия программирования
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
t, дней
Работа
Легенда
Простои
0 дефектов
10095 120
Заморозка
нового
функционала
150
+ $ 5 000 000
+ $ 35 000 000
38. Фасет из ограничения системы
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Стратегия
тестирования
Исходя из
ограничения
системы
Планируемая
норма простоя
тестировщиков
ядра 20-30%
Ограничение системы
Программисты
ядра – уникальный
ресурс
39. Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Роль Кол-во Стоимость
в день, $
Дней Итого
Сбалансиро-
ванная
цепочка
Архитектор 3 1000 130 585 000
Тестировщик 3 500 130
По теории
ограничений
Архитектор 3 1000 115 575 000
Тестировщик 4 500 115
40. Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Роль Кол-во Стоимость
в день, $
Дней Итого
Сбалансиро-
ванная
цепочка
Архитектор 3 1000 130 585 000
Тестировщик 3 500 130
По теории
ограничений
Архитектор 3 1000 115 575 000
Тестировщик 4 500 115
Заб [и|ы] ть
+ 15 дней = - $ 15 000 000
43. Фасет «вручную или
автоматизировать»?
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Работа
Легенда
Простои
Программирование
10095 120 150
+ $ 5 000 000
Программирование
44. Фасет «вручную или
автоматизировать»?
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
t, дней
Работа
Легенда
Простои
0 дефектов
10095 120
Заморозка
нового
функционала
Заморозка
нового
функционала
45. Фасет Автоматизации
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Стратегия
тестирования
Автоматизировать
Количество
тестировщиков
кардинально
возрастает
Приоритет - скорость
Программисты
ядра –
уникальный
ресурс
Уберите простои
программистов
ядра
Увеличьте
производительност
ь программистов
ядра
47. Фасет «Кто гоняет тесты?»
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Стратегия
тестирования
Автоматизировать
Тесты гоняют
программисты
Приоритет - скорость
Программисты
ядра –
уникальный
ресурс
Уберите простои
программистов
ядра
Увеличьте
производительност
ь программистов
ядра
48. Фасет по атрибутам качества ПО
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
ГОСТ 9126Надежность
(Reliability)
Функциональные
возможности
(Functionality)
Практичность
(Usability)
Эффективность
(Efficiency)
Мобильность
(Portability)
Сопровождаемость
(Maintainability)
49. Фасет по атрибутам качества ПО
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
ГОСТ 9126Надежность
(Reliability)
Функциональные
возможности
(Functionality)
Практичность
(Usability)
Эффективность
(Efficiency)
Мобильность
(Portability)
Сопровождаемость
(Maintainability)
50. Функциональные возможности
(Functionality)
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект
Важность
Пригодность (Suitability) ++
Правильность (Accuracy) ++
Способность к
взаимодействию
(Interoperability)
+++
Согласованность (Compliance) +
Защищенность (Security ++++
51. А есть еще фасеты?
Подготовка стратегии тестирования под высокорискованный, высокодоходный проект