Pull to refresh

6-недельный цикл обновления Google Chrome

Reading time 2 min
Views 1.4K
Несколько месяцев назад Google Chrome перешёл на новый 6-недельный цикл подготовки релизов. Для обычных пользователей это осталось незамеченным из-за механизма фонового автоматического обновления браузера. Но менеджерам проектов может быть интересно, каким образом осуществлялся переход на новую систему и с какими сложностями пришлось столкнуться.

Энтони Лафорж, технический программный менеджер проекта Chrome, составил презентацию о новом цикле и вообще, как он выразился, о «всеобъемлющей философии обновления Chrome».

Энтони Лафорж говорит, что цикл подготовки релизов Google Chrome подобен разработке Веб 2.0-приложения или веб-сайта. Там отсутствуют номера версий, и процесс идёт сплошным потоком. В случае с Chrome каждый пользователь сам подписывается на канал обновлений для своего браузера, в зависимости от уровня стабильности, и апгрейды идут автоматически в фоновом режиме.

Вот как всё было раньше. Все разработчики трудятся практически постоянно в основной линии разработки проекта, а отдельные ветви отходят от некоторых точек в основной линии. Ветви стабилизируются, втягивая оттуда изменения (то есть всё сначала попадает в основную линию).



На практике к финальной бете нужно было слить вместе около 500 патчей и потратить несколько недель на стабилизацию. В итоге финальная бета выходила ещё через 1-3 месяца, почти всегда выбиваясь из запланированного 13-недельного графика. Разработчики постоянно чувствовали себя опустошёнными после аврала. Каждый раз им приходилось работать в спешке, чтобы успеть заявить свою фичу в этот релиз, дедлайны нарушались и т.д.

Всё это продолжалось долго, и в конце концов Энтони Лафорж решил, что ситуацию нужно как-то улучшать. Поначалу планировалось перейти на упрощённый 12-недельный цикл с 6 неделями разработки и 6 неделями беты. После составления соответствующих диаграмм выяснилось, что с тремя ветвями разработки можно иметь два параллельных перекрывающихся релиза, и это позволит выпускать стабильные релизы примерно каждые 6 недель.



Конечно, такой подход не решает проблемы со слиянием патчей и других, поэтому после некоторого мозгового штурма и консультаций со смежными группами Chrome: поддержки, локализации, маркетинга (можно ли отойти от маркетинга релизов к маркетингу фич?), было решено усовершенствовать систему. В целом новый график образует 11-недельный перекрывающийся цикл, который пока что работает как часы.

Tags:
Hubs:
+24
Comments 13
Comments Comments 13

Articles