View
694
Download
1
Category
Preview:
DESCRIPTION
Agile Kitchen November 2013 Долгое время наша команда работала с собственным кодом, применяя различные методологии и подходы, писала качественный код и можно сказать жила в раю, но вот настал день, когда изменилось всё☺. Когда мы взяли на поддержку чужой объемный продукт и завязли по колено в легаси. Нам пришлось активно подключить наш agile mindset, чтобы изменить ситуацию и адаптироваться под новые условия. В общем, мы расскажем почему базовые практики того же scrum плохо работают с legacy, что нам пришлось изменить в команде и во взаимоотношениях со стейкхолдерами, и к чему это привело. Ну а если вы еще сомневаетесь, то попробуйте ответить себе на пару следующие вопросов: приходилось ли вам брать на поддержку чужой продукт целиком с его непонятными правилами, устаревшим поведением, неработающим функционалом? Приходилось ли отвечать за него по SLA? Если хотя бы на часть из этих вопросов вы ответили да, то вам точно будет интересен наш доклад, в котором мы расскажем, как наша сплоченная команда выбиралась из этого ада.
Citation preview
04/12/2023
Agile Kitchen November 2013
Legacy vs Agile Team
Действительно сильная команда ;-)
TD
DSCR
UM
SO
LID
CI
CO
DE R
EV
IEW
AG
ILE M
IND
SET
Что это дало…
На 90% автоматизированный регресс
Автоматизированная сборка
Минимальный объем технического долгаДокументация
Минимум дефектов
Прогнозируемость
Рай для разработчика
Scrum работает отлично если вы…
С самого начала …
Используете инженерные практикиПоддерживаете объем тех долг на минимальном уровнеАвтоматизируете регресс
Но однажды …
Обязательная процедура высмеивания кода
Масштаб бедствия
120 сборок
35 000 строк кода
Жестко связанный и расфокусированный код
Полное отсутствие документации
Полное отсутствие тестового плана, автоматизированных тестовДве параллельные активные ветки разработки
Ручная схема сборки дистрибутива
Отсутствие версионирования
Два крупных бизнес-проекта национального масштаба
Жесткий SLA
Работа с Legacy Code
С чего мы начали
Автоматизация сборки системыВерсионирование
Build-Deploy-Test
Небольшой набор smoke тестов
До и после
До После
Бомбардировка багами
Тех долг
Пора остановиться
Изменение
Новый функционал
Плановые работы
Исследование и исправление дефектовСнижение технического
долга
Новый функционал
Плановые работы
Комфорт Дискомфорт
До Legacy C Legacy
1 нед 2 нед
Тех. долг
Исслед.дефекто
в
Исправ.дефекто
в
Схема работ по дефектам и тех
долгу
Scrum Scrum
Изменение (реальность)
Новый функционал
Плановые работы
Исследование и исправление дефектовСнижение технического
долга
Новый функционал
Плановые работы
Комфорт Дискомфорт
До Legacy C Legacy
1 нед 2 нед
Тех. долг
Исслед.дефекто
в
Исправ.дефекто
в
Схема работ по дефектам и тех
долгу
Scrum Scrum
Выводы (Legacy + Scrum)
Разделяйте «физически» работы над новым функционалом и дефектами, тех. долгом
Научитесь говорить «НЕТ», препятствуйте внезапным изменениям плана итерации
Обязательно уделяйте время на минимизацию тех. долга
Будьте максимально прозрачны для стэйкхолдеров
Воронин Алексей
about.me/avoroninfacebook.com/avoronin82alexavoronin@mail.ru
Recommended