SlideShare a Scribd company logo
1 of 30
Download to read offline
АВТОМАТИЗАЦИЯ СБОРКИ И
   ТЕСТИРОВАНИЯ В РАЗРЕЗЕ
ЭФФЕКТИВНОГО ПРОИЗВОДСТВА
     Олег Ладыгин. «Петер-Сервис»
О чем речь?
«Эффективное производство» – получение прибыли от
внедрения технологий.

• Примеры расчета целесообразности
• Дополнительные преимущества
  автоматизации


   Это еще
     один
   спорный
    взгляд
Кто я?
Олег Ладыгин      Ведущий инженер, менеджер группы
                  продуктов «Вспомогательные продукты»


                                     www.billing.ru
                                     900 сотрудников
                                     Сложный софт
Стоит ли мне верить?                  ISO 9001:2008
   • Создание системы CI с нуля?
   • 4 года автоматизации?
   • Продумать, реализовать, внедрить, поддерживать…?


                             Потому что это работает
Цель автоматизации -
               получение прибыли
Цели компании
• Ускорение циклов разработки и тестирования
• Соблюдение сроков
• Поднятие престижа компании / соблюдение
  стандартов
• Обеспечение заданного уровня качества продукта

               Личные цели
               • Увеличение инвестиций
               • Личное развитие, изучение новых технологий
               • Самореализация
Правила защиты от врагов

Любое решение проверяйте по пяти критериям.
 • Цель достижима и измеряема?
 • Цель выражается в числах?
 • Метод охватывает несколько направлений?
 • Технологии опережают потребности на 2 года?
 • Вы автоматизируете простой процесс?
Ускорение циклов
разработки и тестирования
 Где можно получить ускорение?
  • Разработка быстрее получает фидбэк
  • Чистая экономия времени тестирования
  • Используем нерабочее время
  • Нет переключения между задачами
  • Быстрее получаем анализ
Ускорение циклов
разработки и тестирования
    Немного советов
          • Система автоматизации
            эффективна для единообразных
            приложений – управляйте
            стандартами
          • Минимизируйте время на
            обучение – упрощайте операции
            и формы
          • Цена времени зависит от даты
            сдачи проекта
Ускорение циклов
            разработки и тестирования

Задача                Ручное    Авто     Итог
Сборка                14 мин    1 мин    13 мин
Передача в тест       3 мин     0 мин    3 мин
Установка             30 мин    5 мин    25 мин
Быстрая сборка        30 мин    10 мин   20 мин
Подготовка среды      20 мин    0 мин    20 мин



Итого на 1 продукт в день                81 мин
Итого на 10 продуктов в месяц            37 дней
Соблюдение сроков

                Почему увеличивается
60%             время? Непонятно…
код             «загадки во тьме»
          В
        итоге
        146%
 40%            Сколько стоит продлить
тесты
                срок проекта?
Соблюдение сроков

             • Единый прозрачный механизм оценки
             • Регулярное измерение выполненной
 Делать        работы
             • Контроль параметров задач


             • Перенос дат в конце цикла
Ограничить   • Изменение приоритетов
             • Добавление требований



             • Начинайте с неизвестного
  Знать      • Сразу исправляйте ошибки
             • Вы тратите время на передачу работы
Соблюдение сроков

Идеология расчета
• Переносы сроков за последний год
  берутся за эталон
• Повышаем точность на 5% в квартал – это
  наш выигрыш
• Виноват – последний менеджер


                     Цена сроков
                     • Недополученная прибыль
                       (просрочка/длительность*цена)
                     • Штрафы от заказчиков
                       (возможно, 1% в день)
Обеспечение заданного
         уровня качества продукта
Зане буду рассказывать о программного обеспечения!
Я обеспечение качества качестве!
                  И за орфографию!


        И промолчу о том, когда надо
        останавливать тестирование.



             Я уточню только 1 момент –
                  сколько стоит ошибка.
Обеспечение заданного
           уровня качества продукта
Измерьте хоть что-нибудь! К примеру…
• Отношение ошибок, найденных на тестировании и после.
• Если SLA на число ошибок – умножаете штраф
  на вероятность.
• Если выпускаете обновления – считайте затраты их выпуска.
• Сократите затраты на тестирование при достижении заданного
  порога.
Обеспечение заданного
            уровня качества продукта
Расчет для SLA
• Ошибка в релизе (квартал) стоит 50 000$, обычно 0.72 ошибки в
  релиз
• Затраты на тестирование – 4 месяца (32 000$)
• Тестируем 2 месяца, вероятность 0.91, выигрыш 4 500$


Выпуск обновлений
• Статистика – 4 патча в год, всего 3 месяца, 6 000$ в квартал
• Ускоряем выпуск на 1 месяц, выигрыш 2 000$ в квартал
Минимизация простоя
Поиск простоев в работе
• Тестировщик ждет: разработку, билд,
  прогон регрессов, машинные ресурсы
• Разработчик ждет сборку и юнит-тесты




                             Все ждут
                             • Если ночной CI сломается,
                               потеря 4 часов
                             • Ожидание восстановления
                               оборудования
                               и перезапуск
Минимизация простоя
Ищем альтернативы
• Автоматическое развертывание билда
• Диспетчеризация ресурсов
• Автовосстановление при сбоях


Задача              Ручное   Авто    P       Итог
Поиск билда         2 мин    0 мин   100%    2 мин
Сбой сборки         4 часа   0 мин   5%      12 мин
Прогон тестов       30 мин   0 мин   80%     24 мин
Свободный сервер    2 часа   0 мин   15%     18 мин


Итого на 1 продукт в день                   56 мин
Итого на 10 продуктов в месяц               29 дней
Рутинные действия
Рутина – удар по качеству. Либо ее не делают, либо
делают плохо.
                    • Постановка файлов под контроль VCS
                    • Создание дефекта и внесение в него
                      нот
                    • Заполнение регулярных отчетов
                    • Прогон тестов
                    • Подготовка среды тестирования
                    • Внесение изменений в эталонные БД
                    • Повторение среды заказчика
Рутинные действия
Рутинные действия
Считаем затраты
Задача                        Ручное    Авто     P      Итог
Файлы с VCS                   10 мин    0 мин    100%   10 мин
Ведение повторяющихся         1 час     0 мин    50%    30 мин
дефектов
Прогон тестов                 15 мин    0 мин    100%   15 мин
Подготовка чистой среды       1 час     0 мин    30%    20 мин
Ведение эталонных данных      30 мин    5 мин    20%    5 мин
Повторение среды              4 часа    10 мин   5%     11 мин



Итого на 1 продукт в день     91 мин
Итого на 10 продуктов в месяц 41 день
Обучение!
Обучение сотрудников – одна из самых трудоемких
операций. В случае выбора между продуктами считайте
стоимость:
• Обучения каждого сотрудника
• Внедрения системы
• Внесения в нее сборок
• Регистрация всех тестов

               А может
                 быть,
              забабахать
                свое?
Есть отличные идеи!
Написать что-то свое – отличная мысль! Благо есть
много успешных примеров…
Итого по времени
Выигрыш в чистом времени
• Всего 81+56+91 минут в день на двух сотрудников
• Итого 1.9 часа на человека в день (1/4 времени)


Дополнительно
• Что-то про сроки?
• Управление рисками и качеством?


Сервисные процессы
• Накопление Знания о продукте
• Взаимозаменяемость (минимум 12% времени)
К борщу еще пампушки

Сначала добавьте дешевые операции
• Проверка орфографии
• Контроль ненормативной лексики
• Проверка стандарта оформления
  документации
• Проверка корректности html
И что-то посерьезнее

      Особо интересные операции
      • Генерация справочников
        процедур кода
      • Формирование документации
        doxygen
      • Анализ SLOC (source line of
        code)
      • Анализ измененных процедур
Что они дают?

• Экономят время
• Внедряют качество в код
• Контролируют процесс
  изменения кода




Задача                        Ручное   Авто    P      Итог
Сравнение результатов между   30 мин   0 мин   30%    10 мин
версиями
Поиск ошибочной функции       Нет      0 мин   100%   Восторг
Поиск кода для ревью и        30 мин   5 мин   100%   25 мин
актуализации тестов
Не забудем про запасы!
Незавершенное производство – это:
• Непротестированный код - уныние
• Излишняя или не сданная функциональность - обида
• Тесты, которые мы не запускаем - бессмысленность
• Тесты, которые не ищут ошибки - жадность
• Дублирующие (лишние) тесты - страх
Запасы в тестировании
• Источник ошибок и косвенная потеря денег
• Понижатель настроения
Запасы в тестировании
Уменьшение запасов напрямую не приносит прибыли,
но делает производство более гибким.


Запас                           Потеря
Непротестированный билд         Время сборки + тестирования
Излишняя функциональность       % дохода соразмерно объему
Недоделанная функциональность   Все время работы
Незапущенные тесты              % найденных этими тестами
                                ошибок / общее число ошибок
Тесты, которые не ищут ошибки   Время создания и поддержки теста
Дублирующие тесты               Время создания и поддержки теста
Вывод
«Нельзя управлять тем, что вы не можете посчитать»
  (с)…

 • Упрощайте
 • Считайте
 • Ищите тонкости
   в нюансах
 • Начинайте
   с малого
Удачи!
Viam supervadet vadens / дорогу осилит идущий




     Олег Ладыгин   oladygin@gmail.com

More Related Content

What's hot

Эффективное взаимодействие тестировщика и аналитика
Эффективное взаимодействие тестировщика и аналитикаЭффективное взаимодействие тестировщика и аналитика
Эффективное взаимодействие тестировщика и аналитикаSQALab
 
Управление хаосом, или как жить когда число тестов перевалило за десятки тысяч
Управление хаосом, или как жить когда число тестов перевалило за десятки тысячУправление хаосом, или как жить когда число тестов перевалило за десятки тысяч
Управление хаосом, или как жить когда число тестов перевалило за десятки тысячSQALab
 
Внедрение измениений. Рефакторинг Vs реинжиниринг
Внедрение измениений. Рефакторинг Vs реинжинирингВнедрение измениений. Рефакторинг Vs реинжиниринг
Внедрение измениений. Рефакторинг Vs реинжинирингRina Uzhevko
 
QA Fest 2015. Василий Сливка, Игорь Роздобудько. Кросплатформенное тестирован...
QA Fest 2015. Василий Сливка, Игорь Роздобудько. Кросплатформенное тестирован...QA Fest 2015. Василий Сливка, Игорь Роздобудько. Кросплатформенное тестирован...
QA Fest 2015. Василий Сливка, Игорь Роздобудько. Кросплатформенное тестирован...QAFest
 
QA Fest 2014. Игорь Бондаренко. Agile crystal. Создание процесса нацеленного ...
QA Fest 2014. Игорь Бондаренко. Agile crystal. Создание процесса нацеленного ...QA Fest 2014. Игорь Бондаренко. Agile crystal. Создание процесса нацеленного ...
QA Fest 2014. Игорь Бондаренко. Agile crystal. Создание процесса нацеленного ...QAFest
 
Асхат Уразбаев, Руководство по организации тестирования в Agile
Асхат Уразбаев, Руководство по организации тестирования в AgileАсхат Уразбаев, Руководство по организации тестирования в Agile
Асхат Уразбаев, Руководство по организации тестирования в AgileSQADays_2009_Piter
 
Оптимизация процесса тестирования с использованием аналитических подходов RCA...
Оптимизация процесса тестирования с использованием аналитических подходов RCA...Оптимизация процесса тестирования с использованием аналитических подходов RCA...
Оптимизация процесса тестирования с использованием аналитических подходов RCA...Aleksandr Meshkov
 
Тестируем производительность с помощью Selenium
Тестируем производительность с помощью SeleniumТестируем производительность с помощью Selenium
Тестируем производительность с помощью SeleniumSQALab
 
Crystal Agile, или как мы приспособили процесс разработки для обеспечения мак...
Crystal Agile, или как мы приспособили процесс разработки для обеспечения мак...Crystal Agile, или как мы приспособили процесс разработки для обеспечения мак...
Crystal Agile, или как мы приспособили процесс разработки для обеспечения мак...SQALab
 
Эволюция нагрузочного тестирования – от простой автоматизации до BDD
Эволюция нагрузочного тестирования – от простой автоматизации до BDDЭволюция нагрузочного тестирования – от простой автоматизации до BDD
Эволюция нагрузочного тестирования – от простой автоматизации до BDDCEE-SEC(R)
 
Человеко-дни на тестирование или как не ошибиться с оценкой
Человеко-дни на тестирование или как не ошибиться с оценкойЧеловеко-дни на тестирование или как не ошибиться с оценкой
Человеко-дни на тестирование или как не ошибиться с оценкойSQALab
 
QA как драйвер трансформации
QA как драйвер трансформацииQA как драйвер трансформации
QA как драйвер трансформацииSQALab
 
Как заслужить доверие заказчика при передаче проекта новой команде тестирования?
Как заслужить доверие заказчика при передаче проекта новой команде тестирования?Как заслужить доверие заказчика при передаче проекта новой команде тестирования?
Как заслужить доверие заказчика при передаче проекта новой команде тестирования?SQALab
 
Waterfall revisited: практические метрики тестирования
Waterfall revisited: практические метрики тестированияWaterfall revisited: практические метрики тестирования
Waterfall revisited: практические метрики тестированияSQALab
 
Планирование трудозатрат на тестирование
Планирование трудозатрат на тестированиеПланирование трудозатрат на тестирование
Планирование трудозатрат на тестированиеSQALab
 
Переход на Docsvision 5 прямо сейчас
Переход на Docsvision 5 прямо сейчасПереход на Docsvision 5 прямо сейчас
Переход на Docsvision 5 прямо сейчасDocsvision
 
QA Fest 2015. Aлександр Кузняк. Тестовая документация. How-To и типичные ошибки
QA Fest 2015. Aлександр Кузняк. Тестовая документация. How-To и типичные ошибкиQA Fest 2015. Aлександр Кузняк. Тестовая документация. How-To и типичные ошибки
QA Fest 2015. Aлександр Кузняк. Тестовая документация. How-To и типичные ошибкиQAFest
 
How to estimate time for testing
How to estimate time for testingHow to estimate time for testing
How to estimate time for testingAlexandr Zinovyev
 
Оценка методологии автоматизации - MBT
Оценка методологии автоматизации - MBTОценка методологии автоматизации - MBT
Оценка методологии автоматизации - MBTSQALab
 
Как оценить время на тестирование. Александр Зиновьев, Test Lead Softengi
Как оценить время на тестирование. Александр Зиновьев, Test Lead SoftengiКак оценить время на тестирование. Александр Зиновьев, Test Lead Softengi
Как оценить время на тестирование. Александр Зиновьев, Test Lead SoftengiSoftengi
 

What's hot (20)

Эффективное взаимодействие тестировщика и аналитика
Эффективное взаимодействие тестировщика и аналитикаЭффективное взаимодействие тестировщика и аналитика
Эффективное взаимодействие тестировщика и аналитика
 
Управление хаосом, или как жить когда число тестов перевалило за десятки тысяч
Управление хаосом, или как жить когда число тестов перевалило за десятки тысячУправление хаосом, или как жить когда число тестов перевалило за десятки тысяч
Управление хаосом, или как жить когда число тестов перевалило за десятки тысяч
 
Внедрение измениений. Рефакторинг Vs реинжиниринг
Внедрение измениений. Рефакторинг Vs реинжинирингВнедрение измениений. Рефакторинг Vs реинжиниринг
Внедрение измениений. Рефакторинг Vs реинжиниринг
 
QA Fest 2015. Василий Сливка, Игорь Роздобудько. Кросплатформенное тестирован...
QA Fest 2015. Василий Сливка, Игорь Роздобудько. Кросплатформенное тестирован...QA Fest 2015. Василий Сливка, Игорь Роздобудько. Кросплатформенное тестирован...
QA Fest 2015. Василий Сливка, Игорь Роздобудько. Кросплатформенное тестирован...
 
QA Fest 2014. Игорь Бондаренко. Agile crystal. Создание процесса нацеленного ...
QA Fest 2014. Игорь Бондаренко. Agile crystal. Создание процесса нацеленного ...QA Fest 2014. Игорь Бондаренко. Agile crystal. Создание процесса нацеленного ...
QA Fest 2014. Игорь Бондаренко. Agile crystal. Создание процесса нацеленного ...
 
Асхат Уразбаев, Руководство по организации тестирования в Agile
Асхат Уразбаев, Руководство по организации тестирования в AgileАсхат Уразбаев, Руководство по организации тестирования в Agile
Асхат Уразбаев, Руководство по организации тестирования в Agile
 
Оптимизация процесса тестирования с использованием аналитических подходов RCA...
Оптимизация процесса тестирования с использованием аналитических подходов RCA...Оптимизация процесса тестирования с использованием аналитических подходов RCA...
Оптимизация процесса тестирования с использованием аналитических подходов RCA...
 
Тестируем производительность с помощью Selenium
Тестируем производительность с помощью SeleniumТестируем производительность с помощью Selenium
Тестируем производительность с помощью Selenium
 
Crystal Agile, или как мы приспособили процесс разработки для обеспечения мак...
Crystal Agile, или как мы приспособили процесс разработки для обеспечения мак...Crystal Agile, или как мы приспособили процесс разработки для обеспечения мак...
Crystal Agile, или как мы приспособили процесс разработки для обеспечения мак...
 
Эволюция нагрузочного тестирования – от простой автоматизации до BDD
Эволюция нагрузочного тестирования – от простой автоматизации до BDDЭволюция нагрузочного тестирования – от простой автоматизации до BDD
Эволюция нагрузочного тестирования – от простой автоматизации до BDD
 
Человеко-дни на тестирование или как не ошибиться с оценкой
Человеко-дни на тестирование или как не ошибиться с оценкойЧеловеко-дни на тестирование или как не ошибиться с оценкой
Человеко-дни на тестирование или как не ошибиться с оценкой
 
QA как драйвер трансформации
QA как драйвер трансформацииQA как драйвер трансформации
QA как драйвер трансформации
 
Как заслужить доверие заказчика при передаче проекта новой команде тестирования?
Как заслужить доверие заказчика при передаче проекта новой команде тестирования?Как заслужить доверие заказчика при передаче проекта новой команде тестирования?
Как заслужить доверие заказчика при передаче проекта новой команде тестирования?
 
Waterfall revisited: практические метрики тестирования
Waterfall revisited: практические метрики тестированияWaterfall revisited: практические метрики тестирования
Waterfall revisited: практические метрики тестирования
 
Планирование трудозатрат на тестирование
Планирование трудозатрат на тестированиеПланирование трудозатрат на тестирование
Планирование трудозатрат на тестирование
 
Переход на Docsvision 5 прямо сейчас
Переход на Docsvision 5 прямо сейчасПереход на Docsvision 5 прямо сейчас
Переход на Docsvision 5 прямо сейчас
 
QA Fest 2015. Aлександр Кузняк. Тестовая документация. How-To и типичные ошибки
QA Fest 2015. Aлександр Кузняк. Тестовая документация. How-To и типичные ошибкиQA Fest 2015. Aлександр Кузняк. Тестовая документация. How-To и типичные ошибки
QA Fest 2015. Aлександр Кузняк. Тестовая документация. How-To и типичные ошибки
 
How to estimate time for testing
How to estimate time for testingHow to estimate time for testing
How to estimate time for testing
 
Оценка методологии автоматизации - MBT
Оценка методологии автоматизации - MBTОценка методологии автоматизации - MBT
Оценка методологии автоматизации - MBT
 
Как оценить время на тестирование. Александр Зиновьев, Test Lead Softengi
Как оценить время на тестирование. Александр Зиновьев, Test Lead SoftengiКак оценить время на тестирование. Александр Зиновьев, Test Lead Softengi
Как оценить время на тестирование. Александр Зиновьев, Test Lead Softengi
 

Similar to Автоматизация сборки и тестирования в разрезе эффективного производства

Управление и руководство в процессном подходе. Тренинг-семинар.
Управление и руководство в процессном подходе. Тренинг-семинар.Управление и руководство в процессном подходе. Тренинг-семинар.
Управление и руководство в процессном подходе. Тренинг-семинар.Ратнер Александр
 
Виталий Стрелюк
Виталий СтрелюкВиталий Стрелюк
Виталий СтрелюкSQALab
 
Как развить отдел тестирования от палки-копалки до CI
Как развить отдел тестирования от палки-копалки до CIКак развить отдел тестирования от палки-копалки до CI
Как развить отдел тестирования от палки-копалки до CICEE-SEC(R)
 
Автоматизация тестирования: почему умирают проекты?
Автоматизация тестирования: почему умирают проекты?Автоматизация тестирования: почему умирают проекты?
Автоматизация тестирования: почему умирают проекты?SQALab
 
Автоматизация Тестирования - Почему умирают проекты?
Автоматизация Тестирования - Почему умирают проекты?Автоматизация Тестирования - Почему умирают проекты?
Автоматизация Тестирования - Почему умирают проекты?Igor Khrol
 
Automation Overview
Automation OverviewAutomation Overview
Automation OverviewKiraKeiss
 
Can we have some more quality - Russian version
Can we have some more quality - Russian versionCan we have some more quality - Russian version
Can we have some more quality - Russian versionAlexander Pushkarev
 
Управление качеством в Agile. Как опередить баги
Управление качеством в Agile. Как опередить багиУправление качеством в Agile. Как опередить баги
Управление качеством в Agile. Как опередить багиSQALab
 
Anton Stoliar SQADays2012 Управление качеством в Agile. Как опередить баги.
Anton Stoliar SQADays2012 Управление качеством в Agile. Как опередить баги.Anton Stoliar SQADays2012 Управление качеством в Agile. Как опередить баги.
Anton Stoliar SQADays2012 Управление качеством в Agile. Как опередить баги.Anton Stoliar
 
Улучшить KPI в два раза? Сделано!
Улучшить KPI в два раза? Сделано!Улучшить KPI в два раза? Сделано!
Улучшить KPI в два раза? Сделано!SQALab
 
SQA Days 10: Фишки просветлённых тест-менеджеров
SQA Days 10: Фишки просветлённых тест-менеджеровSQA Days 10: Фишки просветлённых тест-менеджеров
SQA Days 10: Фишки просветлённых тест-менеджеровNatalya Rukol
 
Полезные "фишки" для построения успешного процесса тестирования
Полезные "фишки" для построения успешного процесса тестированияПолезные "фишки" для построения успешного процесса тестирования
Полезные "фишки" для построения успешного процесса тестированияSQALab
 
Внедрение тестирования в Scrum
Внедрение тестирования в ScrumВнедрение тестирования в Scrum
Внедрение тестирования в ScrumDenis Petelin
 
Внедрение тестирования в Scrum
Внедрение тестирования в ScrumВнедрение тестирования в Scrum
Внедрение тестирования в ScrumDenis Petelin
 
организация и проведение тестирования
организация и проведение тестированияорганизация и проведение тестирования
организация и проведение тестированияIgor Pozumentov
 
Обязательные практики Agile-проекта и правило ППП
Обязательные практики Agile-проекта и правило ПППОбязательные практики Agile-проекта и правило ППП
Обязательные практики Agile-проекта и правило ПППPavel Gabriel
 
Светлана Федянина - Процесс тестирования в распределенной команде
Светлана Федянина - Процесс тестирования в распределенной командеСветлана Федянина - Процесс тестирования в распределенной команде
Светлана Федянина - Процесс тестирования в распределенной командеSQALab
 
Процесс тестирования в распределенной команде
Процесс тестирования в распределенной командеПроцесс тестирования в распределенной команде
Процесс тестирования в распределенной командеSvetlana Fedyanina
 

Similar to Автоматизация сборки и тестирования в разрезе эффективного производства (20)

Управление и руководство в процессном подходе. Тренинг-семинар.
Управление и руководство в процессном подходе. Тренинг-семинар.Управление и руководство в процессном подходе. Тренинг-семинар.
Управление и руководство в процессном подходе. Тренинг-семинар.
 
Виталий Стрелюк
Виталий СтрелюкВиталий Стрелюк
Виталий Стрелюк
 
Как развить отдел тестирования от палки-копалки до CI
Как развить отдел тестирования от палки-копалки до CIКак развить отдел тестирования от палки-копалки до CI
Как развить отдел тестирования от палки-копалки до CI
 
Автоматизация тестирования: почему умирают проекты?
Автоматизация тестирования: почему умирают проекты?Автоматизация тестирования: почему умирают проекты?
Автоматизация тестирования: почему умирают проекты?
 
Автоматизация Тестирования - Почему умирают проекты?
Автоматизация Тестирования - Почему умирают проекты?Автоматизация Тестирования - Почему умирают проекты?
Автоматизация Тестирования - Почему умирают проекты?
 
Automation Overview
Automation OverviewAutomation Overview
Automation Overview
 
Can we have some more quality - Russian version
Can we have some more quality - Russian versionCan we have some more quality - Russian version
Can we have some more quality - Russian version
 
Управление качеством в Agile. Как опередить баги
Управление качеством в Agile. Как опередить багиУправление качеством в Agile. Как опередить баги
Управление качеством в Agile. Как опередить баги
 
Anton Stoliar SQADays2012 Управление качеством в Agile. Как опередить баги.
Anton Stoliar SQADays2012 Управление качеством в Agile. Как опередить баги.Anton Stoliar SQADays2012 Управление качеством в Agile. Как опередить баги.
Anton Stoliar SQADays2012 Управление качеством в Agile. Как опередить баги.
 
Улучшить KPI в два раза? Сделано!
Улучшить KPI в два раза? Сделано!Улучшить KPI в два раза? Сделано!
Улучшить KPI в два раза? Сделано!
 
SQA Days 10: Фишки просветлённых тест-менеджеров
SQA Days 10: Фишки просветлённых тест-менеджеровSQA Days 10: Фишки просветлённых тест-менеджеров
SQA Days 10: Фишки просветлённых тест-менеджеров
 
Полезные "фишки" для построения успешного процесса тестирования
Полезные "фишки" для построения успешного процесса тестированияПолезные "фишки" для построения успешного процесса тестирования
Полезные "фишки" для построения успешного процесса тестирования
 
Внедрение тестирования в Scrum
Внедрение тестирования в ScrumВнедрение тестирования в Scrum
Внедрение тестирования в Scrum
 
Внедрение тестирования в Scrum
Внедрение тестирования в ScrumВнедрение тестирования в Scrum
Внедрение тестирования в Scrum
 
Testing
TestingTesting
Testing
 
организация и проведение тестирования
организация и проведение тестированияорганизация и проведение тестирования
организация и проведение тестирования
 
Enter: testing
Enter: testingEnter: testing
Enter: testing
 
Обязательные практики Agile-проекта и правило ППП
Обязательные практики Agile-проекта и правило ПППОбязательные практики Agile-проекта и правило ППП
Обязательные практики Agile-проекта и правило ППП
 
Светлана Федянина - Процесс тестирования в распределенной команде
Светлана Федянина - Процесс тестирования в распределенной командеСветлана Федянина - Процесс тестирования в распределенной команде
Светлана Федянина - Процесс тестирования в распределенной команде
 
Процесс тестирования в распределенной команде
Процесс тестирования в распределенной командеПроцесс тестирования в распределенной команде
Процесс тестирования в распределенной команде
 

More from SQALab

Готовим стажировку
Готовим стажировкуГотовим стажировку
Готовим стажировкуSQALab
 
Куда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщикаКуда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщикаSQALab
 
Оптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержкиОптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержкиSQALab
 
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программированияАвтоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программированияSQALab
 
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...SQALab
 
Continuous performance testing
Continuous performance testingContinuous performance testing
Continuous performance testingSQALab
 
Конфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нуженКонфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нуженSQALab
 
Команда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихииКоманда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихииSQALab
 
API. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советовAPI. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советовSQALab
 
Добиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестовДобиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестовSQALab
 
Делаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIsДелаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIsSQALab
 
Вредные привычки в тест-менеджменте
Вредные привычки в тест-менеджментеВредные привычки в тест-менеджменте
Вредные привычки в тест-менеджментеSQALab
 
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизацииМощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизацииSQALab
 
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеSQALab
 
Стили лидерства и тестирование
Стили лидерства и тестированиеСтили лидерства и тестирование
Стили лидерства и тестированиеSQALab
 
"Давайте не будем про качество"
"Давайте не будем про качество""Давайте не будем про качество"
"Давайте не будем про качество"SQALab
 
Apache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектовApache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектовSQALab
 
Тестирование геолокационных систем
Тестирование геолокационных системТестирование геолокационных систем
Тестирование геолокационных системSQALab
 
Лидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопросЛидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопросSQALab
 
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...SQALab
 

More from SQALab (20)

Готовим стажировку
Готовим стажировкуГотовим стажировку
Готовим стажировку
 
Куда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщикаКуда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщика
 
Оптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержкиОптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержки
 
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программированияАвтоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
 
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
 
Continuous performance testing
Continuous performance testingContinuous performance testing
Continuous performance testing
 
Конфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нуженКонфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нужен
 
Команда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихииКоманда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихии
 
API. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советовAPI. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советов
 
Добиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестовДобиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестов
 
Делаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIsДелаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIs
 
Вредные привычки в тест-менеджменте
Вредные привычки в тест-менеджментеВредные привычки в тест-менеджменте
Вредные привычки в тест-менеджменте
 
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизацииМощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
 
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
 
Стили лидерства и тестирование
Стили лидерства и тестированиеСтили лидерства и тестирование
Стили лидерства и тестирование
 
"Давайте не будем про качество"
"Давайте не будем про качество""Давайте не будем про качество"
"Давайте не будем про качество"
 
Apache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектовApache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектов
 
Тестирование геолокационных систем
Тестирование геолокационных системТестирование геолокационных систем
Тестирование геолокационных систем
 
Лидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопросЛидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопрос
 
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
 

Автоматизация сборки и тестирования в разрезе эффективного производства

  • 1. АВТОМАТИЗАЦИЯ СБОРКИ И ТЕСТИРОВАНИЯ В РАЗРЕЗЕ ЭФФЕКТИВНОГО ПРОИЗВОДСТВА Олег Ладыгин. «Петер-Сервис»
  • 2. О чем речь? «Эффективное производство» – получение прибыли от внедрения технологий. • Примеры расчета целесообразности • Дополнительные преимущества автоматизации Это еще один спорный взгляд
  • 3. Кто я? Олег Ладыгин Ведущий инженер, менеджер группы продуктов «Вспомогательные продукты» www.billing.ru 900 сотрудников Сложный софт Стоит ли мне верить? ISO 9001:2008 • Создание системы CI с нуля? • 4 года автоматизации? • Продумать, реализовать, внедрить, поддерживать…? Потому что это работает
  • 4. Цель автоматизации - получение прибыли Цели компании • Ускорение циклов разработки и тестирования • Соблюдение сроков • Поднятие престижа компании / соблюдение стандартов • Обеспечение заданного уровня качества продукта Личные цели • Увеличение инвестиций • Личное развитие, изучение новых технологий • Самореализация
  • 5. Правила защиты от врагов Любое решение проверяйте по пяти критериям. • Цель достижима и измеряема? • Цель выражается в числах? • Метод охватывает несколько направлений? • Технологии опережают потребности на 2 года? • Вы автоматизируете простой процесс?
  • 6. Ускорение циклов разработки и тестирования Где можно получить ускорение? • Разработка быстрее получает фидбэк • Чистая экономия времени тестирования • Используем нерабочее время • Нет переключения между задачами • Быстрее получаем анализ
  • 7. Ускорение циклов разработки и тестирования Немного советов • Система автоматизации эффективна для единообразных приложений – управляйте стандартами • Минимизируйте время на обучение – упрощайте операции и формы • Цена времени зависит от даты сдачи проекта
  • 8. Ускорение циклов разработки и тестирования Задача Ручное Авто Итог Сборка 14 мин 1 мин 13 мин Передача в тест 3 мин 0 мин 3 мин Установка 30 мин 5 мин 25 мин Быстрая сборка 30 мин 10 мин 20 мин Подготовка среды 20 мин 0 мин 20 мин Итого на 1 продукт в день 81 мин Итого на 10 продуктов в месяц 37 дней
  • 9. Соблюдение сроков Почему увеличивается 60% время? Непонятно… код «загадки во тьме» В итоге 146% 40% Сколько стоит продлить тесты срок проекта?
  • 10. Соблюдение сроков • Единый прозрачный механизм оценки • Регулярное измерение выполненной Делать работы • Контроль параметров задач • Перенос дат в конце цикла Ограничить • Изменение приоритетов • Добавление требований • Начинайте с неизвестного Знать • Сразу исправляйте ошибки • Вы тратите время на передачу работы
  • 11. Соблюдение сроков Идеология расчета • Переносы сроков за последний год берутся за эталон • Повышаем точность на 5% в квартал – это наш выигрыш • Виноват – последний менеджер Цена сроков • Недополученная прибыль (просрочка/длительность*цена) • Штрафы от заказчиков (возможно, 1% в день)
  • 12. Обеспечение заданного уровня качества продукта Зане буду рассказывать о программного обеспечения! Я обеспечение качества качестве! И за орфографию! И промолчу о том, когда надо останавливать тестирование. Я уточню только 1 момент – сколько стоит ошибка.
  • 13. Обеспечение заданного уровня качества продукта Измерьте хоть что-нибудь! К примеру… • Отношение ошибок, найденных на тестировании и после. • Если SLA на число ошибок – умножаете штраф на вероятность. • Если выпускаете обновления – считайте затраты их выпуска. • Сократите затраты на тестирование при достижении заданного порога.
  • 14. Обеспечение заданного уровня качества продукта Расчет для SLA • Ошибка в релизе (квартал) стоит 50 000$, обычно 0.72 ошибки в релиз • Затраты на тестирование – 4 месяца (32 000$) • Тестируем 2 месяца, вероятность 0.91, выигрыш 4 500$ Выпуск обновлений • Статистика – 4 патча в год, всего 3 месяца, 6 000$ в квартал • Ускоряем выпуск на 1 месяц, выигрыш 2 000$ в квартал
  • 15. Минимизация простоя Поиск простоев в работе • Тестировщик ждет: разработку, билд, прогон регрессов, машинные ресурсы • Разработчик ждет сборку и юнит-тесты Все ждут • Если ночной CI сломается, потеря 4 часов • Ожидание восстановления оборудования и перезапуск
  • 16. Минимизация простоя Ищем альтернативы • Автоматическое развертывание билда • Диспетчеризация ресурсов • Автовосстановление при сбоях Задача Ручное Авто P Итог Поиск билда 2 мин 0 мин 100% 2 мин Сбой сборки 4 часа 0 мин 5% 12 мин Прогон тестов 30 мин 0 мин 80% 24 мин Свободный сервер 2 часа 0 мин 15% 18 мин Итого на 1 продукт в день 56 мин Итого на 10 продуктов в месяц 29 дней
  • 17. Рутинные действия Рутина – удар по качеству. Либо ее не делают, либо делают плохо. • Постановка файлов под контроль VCS • Создание дефекта и внесение в него нот • Заполнение регулярных отчетов • Прогон тестов • Подготовка среды тестирования • Внесение изменений в эталонные БД • Повторение среды заказчика
  • 19. Рутинные действия Считаем затраты Задача Ручное Авто P Итог Файлы с VCS 10 мин 0 мин 100% 10 мин Ведение повторяющихся 1 час 0 мин 50% 30 мин дефектов Прогон тестов 15 мин 0 мин 100% 15 мин Подготовка чистой среды 1 час 0 мин 30% 20 мин Ведение эталонных данных 30 мин 5 мин 20% 5 мин Повторение среды 4 часа 10 мин 5% 11 мин Итого на 1 продукт в день 91 мин Итого на 10 продуктов в месяц 41 день
  • 20. Обучение! Обучение сотрудников – одна из самых трудоемких операций. В случае выбора между продуктами считайте стоимость: • Обучения каждого сотрудника • Внедрения системы • Внесения в нее сборок • Регистрация всех тестов А может быть, забабахать свое?
  • 21. Есть отличные идеи! Написать что-то свое – отличная мысль! Благо есть много успешных примеров…
  • 22. Итого по времени Выигрыш в чистом времени • Всего 81+56+91 минут в день на двух сотрудников • Итого 1.9 часа на человека в день (1/4 времени) Дополнительно • Что-то про сроки? • Управление рисками и качеством? Сервисные процессы • Накопление Знания о продукте • Взаимозаменяемость (минимум 12% времени)
  • 23. К борщу еще пампушки Сначала добавьте дешевые операции • Проверка орфографии • Контроль ненормативной лексики • Проверка стандарта оформления документации • Проверка корректности html
  • 24. И что-то посерьезнее Особо интересные операции • Генерация справочников процедур кода • Формирование документации doxygen • Анализ SLOC (source line of code) • Анализ измененных процедур
  • 25. Что они дают? • Экономят время • Внедряют качество в код • Контролируют процесс изменения кода Задача Ручное Авто P Итог Сравнение результатов между 30 мин 0 мин 30% 10 мин версиями Поиск ошибочной функции Нет 0 мин 100% Восторг Поиск кода для ревью и 30 мин 5 мин 100% 25 мин актуализации тестов
  • 26. Не забудем про запасы! Незавершенное производство – это: • Непротестированный код - уныние • Излишняя или не сданная функциональность - обида • Тесты, которые мы не запускаем - бессмысленность • Тесты, которые не ищут ошибки - жадность • Дублирующие (лишние) тесты - страх
  • 27. Запасы в тестировании • Источник ошибок и косвенная потеря денег • Понижатель настроения
  • 28. Запасы в тестировании Уменьшение запасов напрямую не приносит прибыли, но делает производство более гибким. Запас Потеря Непротестированный билд Время сборки + тестирования Излишняя функциональность % дохода соразмерно объему Недоделанная функциональность Все время работы Незапущенные тесты % найденных этими тестами ошибок / общее число ошибок Тесты, которые не ищут ошибки Время создания и поддержки теста Дублирующие тесты Время создания и поддержки теста
  • 29. Вывод «Нельзя управлять тем, что вы не можете посчитать» (с)… • Упрощайте • Считайте • Ищите тонкости в нюансах • Начинайте с малого
  • 30. Удачи! Viam supervadet vadens / дорогу осилит идущий Олег Ладыгин oladygin@gmail.com