SlideShare a Scribd company logo
Автоматизация
процесса разработки
• Как мы почти полностью автоматизировали
процесс разработки ФРИИ
• Как облегчить взаимодействие с QA
• Как облегчить появление нового члена команды
• Расскажу какая боль лежала в основе 

"Software process framework"
Немного примеров
Слайд с кодом 

со сложной бизнес логикой
Слайд с историей коммитов

изменяющих сложную бизнес логику
и отдал

на тестирование
• Проект со сложной бизнес логикой

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

недельные спринты
Например
Pull Requests
Pull Requests
Pull Requests
Pull Requests
Pull Requests
Pull Requests
Pull Requests
Сложности
Pull Requests
• Нужно дергать разработчика чтобы задеплоил
• Нужно постоянно мержить и деплоить
• Нужно за всем этим следить
• Нет возможности “Раздеплоить” 

и много еще чего
• Протестированные задачи лучше оставлять 

на этом же сервере
Последствия
• Большая несогласованность
• Вместо написания кода мы постоянно 

мержим, правим конфликты и деплоим
• Нас дергает тестировщик 

и другие члены команды
Попытки решения
Автоматизация 

ручных действий
1. Форкает текущую ветку
2. Мержит в нее все PR с меткой
3. Форс пуш на гитхаб
4. Деплой на тестирование
Результат
• Меньше конфликтов
• Просто "раздеплоить PR"
• Меньше ручной работы
Что осталось
• Несогласованность
• Новым разработчикам рассказывать по новой
• Все равно нужно что-то запускать
Формализация
процесса
Software process
framework
achempion / software_process_framework
Зачем нужен
• Общий подход
• Уже решенные проблемы
• Рекомендации по организации процесса
Git-flow
Git-flow
История
└── releases/
├── current/
│   ├── .keep
│   ├── task-11
│   ├── task-13
│   └── task-15
└── history/
   ├── .keep
└── 2017-02-02
└── releases/
├── current/
│   ├── .keep
│   ├── task-11
│   ├── task-13
│   └── task-15
└── history/
   ├── .keep
└── 2017-02-02
releases / current / task-11
rake db:seed:anketa:load VERSION=base_v9
rake single2:rewrite_text_adequate
└── releases/
├── current/
│   ├── .keep
│   ├── task-11
│   ├── task-13
│   └── task-15
└── history/
   ├── .keep
└── 2017-02-02
└── releases/
├── current/
│   ├── .keep
│   ├── task-11
│   ├── task-13
│   └── task-15
└── history/
   ├── .keep
├── 2017-02-02
└── 2017-03-19
releases/history/2017-02-02
preac-1523

rake single2:preac_1523_fill_refreshed_at

preac-1539

preac-1542

preac-1222

preac-1254

preac-1285

rake db:seed:cofoundit:load VERSION=selection_v3

preac-1326

rake single:preac_1326

preac-1327

rake db:seed:anketa:load VERSION=base_v9

rake db:seed:cofoundit:load VERSION=selection_v3

preac-1329

preac-1330

preac-1339

preac-1498

rake db:seed:anketa:load VERSION=base_v9

rake single2:rewrite_text_adequate

preac-1499

rake single2:peac_1498_set_default_cofoundit_selection_rating

preac-1522

preac-1524
achempion / srelease
Соглашения
Формат коммитов
[refs #task-13] commit message

для одной задачи

[refs #task-11, #task-15] commit message

для нескольких
Отсылка к номеру задачи
Управление задачами
Каждая задача должна содержать
ссылку на Pull Request
Поставка задач QA
Скоро в open-source
Спасибо
/ achempion
/ achempion

More Related Content

What's hot

Тестируем производительность с помощью Selenium
Тестируем производительность с помощью SeleniumТестируем производительность с помощью Selenium
Тестируем производительность с помощью Selenium
SQALab
 
WP как экспериментальная платформа
WP как экспериментальная платформаWP как экспериментальная платформа
WP как экспериментальная платформа
SQALab
 
Работа с рисками в Scrum проектах
Работа с рисками в Scrum проектахРабота с рисками в Scrum проектах
Работа с рисками в Scrum проектах
Denis Tuchin
 
А. Ахметов "Когда тесты пишут разработчики", DUMP-2014
А. Ахметов "Когда тесты пишут разработчики", DUMP-2014А. Ахметов "Когда тесты пишут разработчики", DUMP-2014
А. Ахметов "Когда тесты пишут разработчики", DUMP-2014it-people
 
Александр Шуров, Олег Николенко «Как устроено автоматическое frontend-тестир...
Александр Шуров, Олег Николенко  «Как устроено автоматическое frontend-тестир...Александр Шуров, Олег Николенко  «Как устроено автоматическое frontend-тестир...
Александр Шуров, Олег Николенко «Как устроено автоматическое frontend-тестир...
WrikeTechClub
 
Теория ограничений в Agile команде
Теория ограничений в Agile командеТеория ограничений в Agile команде
Теория ограничений в Agile команде
yiiconf
 
Константин Назаров – Распараллеливание сборки Parallels Desktop для Mac
Константин Назаров – Распараллеливание сборки Parallels Desktop для MacКонстантин Назаров – Распараллеливание сборки Parallels Desktop для Mac
Константин Назаров – Распараллеливание сборки Parallels Desktop для Mac
404fest
 
C&C for coffee'n'code
C&C for coffee'n'codeC&C for coffee'n'code
C&C for coffee'n'codeIvan Mosiev
 
GUI-автоматизация в Telerik Test Studio
GUI-автоматизация в Telerik Test StudioGUI-автоматизация в Telerik Test Studio
GUI-автоматизация в Telerik Test Studio
SQALab
 
Асхат Уразбаев, Руководство по организации тестирования в Agile
Асхат Уразбаев, Руководство по организации тестирования в AgileАсхат Уразбаев, Руководство по организации тестирования в Agile
Асхат Уразбаев, Руководство по организации тестирования в Agile
SQADays_2009_Piter
 
Дефицит ресурсов тестирования... или нет?
Дефицит ресурсов тестирования... или нет?Дефицит ресурсов тестирования... или нет?
Дефицит ресурсов тестирования... или нет?
SQALab
 
Enter: testing
Enter: testingEnter: testing
Enter: testing
Kamil Samigullin
 
9 релизов в неделю, 15 разработчиков, 4 тестировщика. Секрет успеха
9 релизов в неделю, 15 разработчиков, 4 тестировщика. Секрет успеха9 релизов в неделю, 15 разработчиков, 4 тестировщика. Секрет успеха
9 релизов в неделю, 15 разработчиков, 4 тестировщика. Секрет успеха
SQALab
 
Visual Studio Team Services /TFS helps doing devops
Visual Studio Team Services /TFS helps doing devops Visual Studio Team Services /TFS helps doing devops
Visual Studio Team Services /TFS helps doing devops
Konstantin Neradovsky
 
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
SQALab
 
Эволюция нагрузочного тестирования – от простой автоматизации до BDD
Эволюция нагрузочного тестирования – от простой автоматизации до BDDЭволюция нагрузочного тестирования – от простой автоматизации до BDD
Эволюция нагрузочного тестирования – от простой автоматизации до BDD
CEE-SEC(R)
 
Имплементация инженерных практик для 1C
Имплементация инженерных практик для 1CИмплементация инженерных практик для 1C
Имплементация инженерных практик для 1C
Alexey Lustin
 
Wgforge CI/CD
Wgforge CI/CDWgforge CI/CD
Автоматическая сборка и развертывание на платформе 1C
Автоматическая сборка и развертывание на платформе 1CАвтоматическая сборка и развертывание на платформе 1C
Автоматическая сборка и развертывание на платформе 1C
Alexey Lustin
 
Testing in Scrum - Yuriy Malyi
Testing in Scrum - Yuriy Malyi Testing in Scrum - Yuriy Malyi
Testing in Scrum - Yuriy Malyi
Agile Base Camp
 

What's hot (20)

Тестируем производительность с помощью Selenium
Тестируем производительность с помощью SeleniumТестируем производительность с помощью Selenium
Тестируем производительность с помощью Selenium
 
WP как экспериментальная платформа
WP как экспериментальная платформаWP как экспериментальная платформа
WP как экспериментальная платформа
 
Работа с рисками в Scrum проектах
Работа с рисками в Scrum проектахРабота с рисками в Scrum проектах
Работа с рисками в Scrum проектах
 
А. Ахметов "Когда тесты пишут разработчики", DUMP-2014
А. Ахметов "Когда тесты пишут разработчики", DUMP-2014А. Ахметов "Когда тесты пишут разработчики", DUMP-2014
А. Ахметов "Когда тесты пишут разработчики", DUMP-2014
 
Александр Шуров, Олег Николенко «Как устроено автоматическое frontend-тестир...
Александр Шуров, Олег Николенко  «Как устроено автоматическое frontend-тестир...Александр Шуров, Олег Николенко  «Как устроено автоматическое frontend-тестир...
Александр Шуров, Олег Николенко «Как устроено автоматическое frontend-тестир...
 
Теория ограничений в Agile команде
Теория ограничений в Agile командеТеория ограничений в Agile команде
Теория ограничений в Agile команде
 
Константин Назаров – Распараллеливание сборки Parallels Desktop для Mac
Константин Назаров – Распараллеливание сборки Parallels Desktop для MacКонстантин Назаров – Распараллеливание сборки Parallels Desktop для Mac
Константин Назаров – Распараллеливание сборки Parallels Desktop для Mac
 
C&C for coffee'n'code
C&C for coffee'n'codeC&C for coffee'n'code
C&C for coffee'n'code
 
GUI-автоматизация в Telerik Test Studio
GUI-автоматизация в Telerik Test StudioGUI-автоматизация в Telerik Test Studio
GUI-автоматизация в Telerik Test Studio
 
Асхат Уразбаев, Руководство по организации тестирования в Agile
Асхат Уразбаев, Руководство по организации тестирования в AgileАсхат Уразбаев, Руководство по организации тестирования в Agile
Асхат Уразбаев, Руководство по организации тестирования в Agile
 
Дефицит ресурсов тестирования... или нет?
Дефицит ресурсов тестирования... или нет?Дефицит ресурсов тестирования... или нет?
Дефицит ресурсов тестирования... или нет?
 
Enter: testing
Enter: testingEnter: testing
Enter: testing
 
9 релизов в неделю, 15 разработчиков, 4 тестировщика. Секрет успеха
9 релизов в неделю, 15 разработчиков, 4 тестировщика. Секрет успеха9 релизов в неделю, 15 разработчиков, 4 тестировщика. Секрет успеха
9 релизов в неделю, 15 разработчиков, 4 тестировщика. Секрет успеха
 
Visual Studio Team Services /TFS helps doing devops
Visual Studio Team Services /TFS helps doing devops Visual Studio Team Services /TFS helps doing devops
Visual Studio Team Services /TFS helps doing devops
 
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
 
Эволюция нагрузочного тестирования – от простой автоматизации до BDD
Эволюция нагрузочного тестирования – от простой автоматизации до BDDЭволюция нагрузочного тестирования – от простой автоматизации до BDD
Эволюция нагрузочного тестирования – от простой автоматизации до BDD
 
Имплементация инженерных практик для 1C
Имплементация инженерных практик для 1CИмплементация инженерных практик для 1C
Имплементация инженерных практик для 1C
 
Wgforge CI/CD
Wgforge CI/CDWgforge CI/CD
Wgforge CI/CD
 
Автоматическая сборка и развертывание на платформе 1C
Автоматическая сборка и развертывание на платформе 1CАвтоматическая сборка и развертывание на платформе 1C
Автоматическая сборка и развертывание на платформе 1C
 
Testing in Scrum - Yuriy Malyi
Testing in Scrum - Yuriy Malyi Testing in Scrum - Yuriy Malyi
Testing in Scrum - Yuriy Malyi
 

Viewers also liked

Interesting facts about pizza
Interesting facts about pizzaInteresting facts about pizza
Interesting facts about pizza
Samaira Kapoor
 
mri ruby gil
mri ruby gilmri ruby gil
mri ruby gil
achempion
 
αξιολογηση για Carbon busters
αξιολογηση για Carbon bustersαξιολογηση για Carbon busters
αξιολογηση για Carbon busters
Vera Vorylla
 
From millions to billions -- Harnessing private financing to boost infrastruc...
From millions to billions -- Harnessing private financing to boost infrastruc...From millions to billions -- Harnessing private financing to boost infrastruc...
From millions to billions -- Harnessing private financing to boost infrastruc...
OECD Governance
 
Taskgate Brochure
Taskgate BrochureTaskgate Brochure
Taskgate Brochure
Noura Sultani
 
Mega projects -- Kaj V. Holm, Denmark
Mega projects -- Kaj V. Holm, DenmarkMega projects -- Kaj V. Holm, Denmark
Mega projects -- Kaj V. Holm, Denmark
OECD Governance
 
Фантастика и романтика (А. Грин, А. Азимов, Д. Амонд) Проблемы, волнующие че...
Фантастика и романтика (А. Грин, А. Азимов, Д. Амонд)  Проблемы, волнующие че...Фантастика и романтика (А. Грин, А. Азимов, Д. Амонд)  Проблемы, волнующие че...
Фантастика и романтика (А. Грин, А. Азимов, Д. Амонд) Проблемы, волнующие че...
Електронні книги Ранок
 
договір
договірдоговір
договір
satana111
 

Viewers also liked (8)

Interesting facts about pizza
Interesting facts about pizzaInteresting facts about pizza
Interesting facts about pizza
 
mri ruby gil
mri ruby gilmri ruby gil
mri ruby gil
 
αξιολογηση για Carbon busters
αξιολογηση για Carbon bustersαξιολογηση για Carbon busters
αξιολογηση για Carbon busters
 
From millions to billions -- Harnessing private financing to boost infrastruc...
From millions to billions -- Harnessing private financing to boost infrastruc...From millions to billions -- Harnessing private financing to boost infrastruc...
From millions to billions -- Harnessing private financing to boost infrastruc...
 
Taskgate Brochure
Taskgate BrochureTaskgate Brochure
Taskgate Brochure
 
Mega projects -- Kaj V. Holm, Denmark
Mega projects -- Kaj V. Holm, DenmarkMega projects -- Kaj V. Holm, Denmark
Mega projects -- Kaj V. Holm, Denmark
 
Фантастика и романтика (А. Грин, А. Азимов, Д. Амонд) Проблемы, волнующие че...
Фантастика и романтика (А. Грин, А. Азимов, Д. Амонд)  Проблемы, волнующие че...Фантастика и романтика (А. Грин, А. Азимов, Д. Амонд)  Проблемы, волнующие че...
Фантастика и романтика (А. Грин, А. Азимов, Д. Амонд) Проблемы, волнующие че...
 
договір
договірдоговір
договір
 

Similar to Software process framework

Zero Downtime PHP Deployment with Envoyer And Forge
Zero Downtime PHP Deployment with Envoyer And ForgeZero Downtime PHP Deployment with Envoyer And Forge
Zero Downtime PHP Deployment with Envoyer And Forge
Yehor Herasymchuk
 
Юлия Викторова; Александр Тарасов. DevOps без булшита.
Юлия Викторова; Александр Тарасов. DevOps без булшита.Юлия Викторова; Александр Тарасов. DevOps без булшита.
Юлия Викторова; Александр Тарасов. DevOps без булшита.
ScrumTrek
 
Александр Курдюков. Внедрение continuous delivery для гетерогенных поставок.
Александр Курдюков. Внедрение continuous delivery для гетерогенных поставок.Александр Курдюков. Внедрение continuous delivery для гетерогенных поставок.
Александр Курдюков. Внедрение continuous delivery для гетерогенных поставок.
ScrumTrek
 
Тест-план и исследовательское тестирование
Тест-план и исследовательское тестированиеТест-план и исследовательское тестирование
Тест-план и исследовательское тестирование
Vasiliy Burov
 
Meet Magento Belarus - Andriy Samilyak
Meet Magento Belarus - Andriy SamilyakMeet Magento Belarus - Andriy Samilyak
Meet Magento Belarus - Andriy Samilyak
Amasty
 
How we built continuous delivery
How we built continuous deliveryHow we built continuous delivery
How we built continuous delivery
Alik Kurdyukov
 
Игорь Леонтьев, Lead Architect on all Blockchain projects of Viseo group
Игорь Леонтьев, Lead Architect on all Blockchain projects of Viseo groupИгорь Леонтьев, Lead Architect on all Blockchain projects of Viseo group
Игорь Леонтьев, Lead Architect on all Blockchain projects of Viseo group
Alina Vilk
 
Виталий Шибаев - Креативный менеджмент глазами разработчика: как выжить в agi...
Виталий Шибаев - Креативный менеджмент глазами разработчика: как выжить в agi...Виталий Шибаев - Креативный менеджмент глазами разработчика: как выжить в agi...
Виталий Шибаев - Креативный менеджмент глазами разработчика: как выжить в agi...
HappyDev
 
Software craftsmanship фиксит проблемы Agile
Software craftsmanship фиксит проблемы AgileSoftware craftsmanship фиксит проблемы Agile
Software craftsmanship фиксит проблемы Agile
Pavel Veinik
 
РИФ 2016, Внедрение контроля качества в большом web-проекте на примере Badoo
РИФ 2016, Внедрение контроля качества в большом web-проекте на примере BadooРИФ 2016, Внедрение контроля качества в большом web-проекте на примере Badoo
РИФ 2016, Внедрение контроля качества в большом web-проекте на примере Badoo
Тарасов Константин
 
Как подружить команду админов с N командами разработки / Денис Яковлев (2ГИС)
Как подружить команду админов с N командами разработки / Денис Яковлев (2ГИС)Как подружить команду админов с N командами разработки / Денис Яковлев (2ГИС)
Как подружить команду админов с N командами разработки / Денис Яковлев (2ГИС)
Ontico
 
Software craftsmanship 8
Software craftsmanship 8Software craftsmanship 8
Software craftsmanship 8
Pavel Veinik
 
Выбираем стратегию создания бранчей
Выбираем стратегию создания бранчейВыбираем стратегию создания бранчей
Выбираем стратегию создания бранчей
Vitebsk DSC
 
Учебный день конференции HighLoad++ 2013
Учебный день конференции HighLoad++ 2013Учебный день конференции HighLoad++ 2013
Учебный день конференции HighLoad++ 2013
Ontico
 
Vagrant и chef. от dev до deploy
Vagrant и chef. от dev до deployVagrant и chef. от dev до deploy
Vagrant и chef. от dev до deploy
zykin-ilya
 
Мой маленький уютный PaaS / Илья Беда (bro.agency)
Мой маленький уютный PaaS / Илья Беда (bro.agency)Мой маленький уютный PaaS / Илья Беда (bro.agency)
Мой маленький уютный PaaS / Илья Беда (bro.agency)
Ontico
 
9 релизов в неделю: секрет успеха.
9 релизов в неделю: секрет успеха.9 релизов в неделю: секрет успеха.
9 релизов в неделю: секрет успеха.
Maxim Boguslavsky
 
Robot Framework: универсальный инструмент автоматизатора
Robot Framework: универсальный инструмент автоматизатораRobot Framework: универсальный инструмент автоматизатора
Robot Framework: универсальный инструмент автоматизатора
SQALab
 
Цикл разработки и внедрения функционала в Мамбе (Михаил Буйлов)
Цикл разработки и внедрения функционала в Мамбе (Михаил Буйлов)Цикл разработки и внедрения функционала в Мамбе (Михаил Буйлов)
Цикл разработки и внедрения функционала в Мамбе (Михаил Буйлов)Ontico
 

Similar to Software process framework (20)

Zero Downtime PHP Deployment with Envoyer And Forge
Zero Downtime PHP Deployment with Envoyer And ForgeZero Downtime PHP Deployment with Envoyer And Forge
Zero Downtime PHP Deployment with Envoyer And Forge
 
Юлия Викторова; Александр Тарасов. DevOps без булшита.
Юлия Викторова; Александр Тарасов. DevOps без булшита.Юлия Викторова; Александр Тарасов. DevOps без булшита.
Юлия Викторова; Александр Тарасов. DevOps без булшита.
 
Александр Курдюков. Внедрение continuous delivery для гетерогенных поставок.
Александр Курдюков. Внедрение continuous delivery для гетерогенных поставок.Александр Курдюков. Внедрение continuous delivery для гетерогенных поставок.
Александр Курдюков. Внедрение continuous delivery для гетерогенных поставок.
 
Тест-план и исследовательское тестирование
Тест-план и исследовательское тестированиеТест-план и исследовательское тестирование
Тест-план и исследовательское тестирование
 
Meet Magento Belarus - Andriy Samilyak
Meet Magento Belarus - Andriy SamilyakMeet Magento Belarus - Andriy Samilyak
Meet Magento Belarus - Andriy Samilyak
 
How we built continuous delivery
How we built continuous deliveryHow we built continuous delivery
How we built continuous delivery
 
Игорь Леонтьев, Lead Architect on all Blockchain projects of Viseo group
Игорь Леонтьев, Lead Architect on all Blockchain projects of Viseo groupИгорь Леонтьев, Lead Architect on all Blockchain projects of Viseo group
Игорь Леонтьев, Lead Architect on all Blockchain projects of Viseo group
 
Виталий Шибаев - Креативный менеджмент глазами разработчика: как выжить в agi...
Виталий Шибаев - Креативный менеджмент глазами разработчика: как выжить в agi...Виталий Шибаев - Креативный менеджмент глазами разработчика: как выжить в agi...
Виталий Шибаев - Креативный менеджмент глазами разработчика: как выжить в agi...
 
Software craftsmanship фиксит проблемы Agile
Software craftsmanship фиксит проблемы AgileSoftware craftsmanship фиксит проблемы Agile
Software craftsmanship фиксит проблемы Agile
 
Little Service in 2h
Little Service in 2hLittle Service in 2h
Little Service in 2h
 
РИФ 2016, Внедрение контроля качества в большом web-проекте на примере Badoo
РИФ 2016, Внедрение контроля качества в большом web-проекте на примере BadooРИФ 2016, Внедрение контроля качества в большом web-проекте на примере Badoo
РИФ 2016, Внедрение контроля качества в большом web-проекте на примере Badoo
 
Как подружить команду админов с N командами разработки / Денис Яковлев (2ГИС)
Как подружить команду админов с N командами разработки / Денис Яковлев (2ГИС)Как подружить команду админов с N командами разработки / Денис Яковлев (2ГИС)
Как подружить команду админов с N командами разработки / Денис Яковлев (2ГИС)
 
Software craftsmanship 8
Software craftsmanship 8Software craftsmanship 8
Software craftsmanship 8
 
Выбираем стратегию создания бранчей
Выбираем стратегию создания бранчейВыбираем стратегию создания бранчей
Выбираем стратегию создания бранчей
 
Учебный день конференции HighLoad++ 2013
Учебный день конференции HighLoad++ 2013Учебный день конференции HighLoad++ 2013
Учебный день конференции HighLoad++ 2013
 
Vagrant и chef. от dev до deploy
Vagrant и chef. от dev до deployVagrant и chef. от dev до deploy
Vagrant и chef. от dev до deploy
 
Мой маленький уютный PaaS / Илья Беда (bro.agency)
Мой маленький уютный PaaS / Илья Беда (bro.agency)Мой маленький уютный PaaS / Илья Беда (bro.agency)
Мой маленький уютный PaaS / Илья Беда (bro.agency)
 
9 релизов в неделю: секрет успеха.
9 релизов в неделю: секрет успеха.9 релизов в неделю: секрет успеха.
9 релизов в неделю: секрет успеха.
 
Robot Framework: универсальный инструмент автоматизатора
Robot Framework: универсальный инструмент автоматизатораRobot Framework: универсальный инструмент автоматизатора
Robot Framework: универсальный инструмент автоматизатора
 
Цикл разработки и внедрения функционала в Мамбе (Михаил Буйлов)
Цикл разработки и внедрения функционала в Мамбе (Михаил Буйлов)Цикл разработки и внедрения функционала в Мамбе (Михаил Буйлов)
Цикл разработки и внедрения функционала в Мамбе (Михаил Буйлов)
 

Software process framework