Обязательные практики Agile и правило 3-х П. Павел Габриель agile-практик, программист, руководитель ООО Смарт системз.

Презентация:



Advertisements
Похожие презентации
Тестирование веб-проектов в Agile Асхат Уразбаев, ScrumTrek.
Advertisements

Построение Agile процесса для разработки игр Вадим Гайдукевич Wargaming.net.
Обзор гибких методологий разработки ПО (Agile) Антон Бевзюк (Intel)
Руководство по тестированию в Agile Асхат Уразбаев. ScrumTrek.
Первые шаги в TDD 1. Павел Габриель руководитель проектов, программист «Смарт системз» 2.
Степан Василевский менеджер проектов QuartSoft Corp г.
7/6/2014© 2010 Grid Dynamics Scaling Mission-Critical Systems 1 Dmitry Ovechkin Deputy Director of Engineering
Test Driven Development или как не выстрелить себе в ногу Дмитрий Хрюкин Fuse 8 Online Вторая конференция.NET разработчиков.
Continuous Integration с нуля (Jenkins+Git+Selenium)
EXtreme Programming XP Тема 1. XP Экстремальное программирование небольших и средних неясных и быстро меняющихся требований Экстремальное программирование.
Как внедрить Agile? Павел Афанасенко Независимый Agile/Lean консультант и тренер.
EXtreme Programming XP Тема 2. XP Заказчики определяют: объем работ; приоритеты; композиции версий; сроки выпуска версий. Разработчики определяют: оценку.
W AY 4 Quality Control in Continuous Integration Konstantin Zhukov.
Учебный курс Модели жизненного цикла и методологии разработки корпоративных систем Лекция 5 Методологии разработки корпоративных систем Лекции читает кандидат.
Agile методологии при разработке игр ВАДИМ ГАЙДУКЕВИЧ Wargaming.net.
Сервис дистанционного консультирования от ГК «Системные технологии»
Lean Startup «Бережливый стартап» Как делать игры, нужные людям.
Технологии конструирования программного обеспечения.
Технологии конструирования программного обеспечения.
Транксрипт:

Обязательные практики Agile и правило 3-х П

Павел Габриель agile-практик, программист, руководитель ООО Смарт системз

Вопросы?

Поговорим о Почему инженерные практики важны Обязательные практики Agile-проекта Правила успешного применения

Agile

Кто работает по Agile?

Что такое Agile?

Agile - это культура разработки ПО

Ценности

Принципы

нет практик!

Agile != XP Agile != Scrum Agile != Lean...

3 принципа

Изменения на любой стадии

Частые релизы

Рабочее ПО основной показатель прогресса

Качество?

Практики

Какие практики используете вы?

Популярные практики не обеспечивают должного качества

Коммуникации Самоорганизация... Качество кода

Стремление к уменьшению практик

XP > 20 Scrum ~ 10 Kanban = 3

Два варианта обеспечить качество

1. QA, QC, etc.

Расходы Коммуникации Документация Контроль Планирование

2. практики улучшающие качество продукта

Расходы На обучение Внедрение

Какие практики обязаны быть в Agile-проекте?

TDD Test Driven Development

Тест > Код

Red Green Refactoring

TDD Меньше ошибок Уверенность Смелость Definition of Done...

Проблемы

BDD - замена понятий

Как это делаем мы?

Ruby/Rail s

Continuous Integration

Легкие интеграции

CI часто включает Сборка Тестирование Выкатка

Как мы это делаем?

Фича / на команду

Проинтегрировались Запустили все тесты Commit Завершили задачу

Завершили фичу склеили с основной ветокой запустили тесты Commit

Выкатываем Staging Автоматическое тестирование ОК аналогично для Production

Refactoring

Улучшение кода без изменения внешнего поведения

Что нам дает?

Уменьшение стоимости изменений

Поддержка новой функциональности

Оптимизация

...В долг не бери и взаймы не давай; Легко и ссуду потерять и друга, А займы тупят лезвие хозяйства. У. Шекспир

# TODO...

Списки-копилки

Займы Доведение до идеала Безудержный рефакторинг :)

Как лучше делать?

Не отходя от кассы далеко...

Отдельная итерация в крайнем случае

ППП

Просто любое движение - затраты

Приятно правильное подкрепление

Постоянно чтобы было просто и приятно

ППП - минимум для успеха

Из жизни подтверждение

Прием пищи

Просто после долгих тренировок

Приятно Если приготовить аппетитно

Постоянно жизненная необходимость

Мой опыт и ППП

Индикатор плохого дизайна сложные тесты

Неправильное применение TDD большие и сложные функции

Отказ от TDD медленный компьютер

Проблемные выкатки, билды и т.п. сложный алгоритм

Проблемные интеграции сложная система контроля версий

Итоги Обязательные практики: TDD, CI, Refactoring Делайте все Просто/Приятно/Постоянно

Спасибо за внимание! Вопросы?