2009-03-20 5 views
0

Компания, в которой я работаю, тестировала проект над проектом и теперь ищет возможность отбросить отбросы до трех или четырех разных проектных команд. Мы планируем, что эти команды будут работать в отдельных ветвях функций (мы используем SVN).множественная интеграция кода scrums

Мы не уверены, должны ли спринты различных команд заканчиваться одновременно или если мы должны размахивать спринтами, чтобы спринт заканчивался и выпускались отдельно. Продукт представляет собой веб-сайт, поэтому развертывание не является проблемой.

Мы обеспокоены интеграцией кода, если три команды интегрируют свой код в одно и то же время, это может привести к конфликтам. Но если выпуски находятся в шахматном порядке, эта загрузка может быть просто перенесена в команды, которые являются средним спринтом.

Пробовал ли кто-нибудь любой подход и что они нашли для работы?

+0

Я голосующий, чтобы закрыть этот вопрос как не относящийся к теме, потому что [управление проектами теперь не в тему по переполнению стека] (// meta.stackoverflow.com/questions/343829/is-stack-overflow-an -appro -website к спросить-о-управления проектами-вопросы/343841 # 343841). Задайте эти вопросы на [SoftwareEngineering.SE] (// softwareengineering.stackexchange.com/) и [ProjectManagement.SE] (// pm.stackexchange.com/). (К сожалению, этот вопрос слишком старый, чтобы его можно было перенести.) – robinCTS

ответ

1

У нас также есть несколько команд, наши спринты выровнены, и мы непрерывно интегрируемся: когда история завершена. Это иногда раздражает, но таким образом мы избегаем длительных периодов интеграции, которые могут быть болезненными. Каждая история развивается в отдельной ветви, а затем интегрируется в основную ветку. Когда двум командам нужно поделиться чем-то, что не интегрировано, они работают в одной ветке.

Мы строим упакованный продукт, поэтому развертывание не является проблемой для нас.

Эти два вопроса связаны друг с другом: если вы только интегрируете в конце спринтов, которые я бы не рекомендовал, то вам лучше ошеломлять спринты.

Henrik Kniberg (автор Scrum и XP из окопов) написал статью на Version Control for Multiple Agile Teams.

+0

Я нашел статью infoq, задав вопрос, но ваш ответ, похоже, хорошо подводит итоги. Я думаю, что интеграция после того, как история была сделана, - это путь. –

0

У нас есть две команды с синхронизированными спринтами, и, похоже, это работает неплохо. Наша стратегия состоит в том, чтобы держать истории маленькими. Получите рассказы и часто публикуйте их до туловища во время спринта. Да, мы получаем конфликты слияния, но они управляемы.

О, и убедитесь, что команды хорошо общаются друг с другом.

0

взгляните на эту статью, объясните эти проблемы лаконично. http://www.infoq.com/news/2008/04/kniberg-agile-version-control

Непрерывная интеграция. Интегрируйте все время, при каждой регистрации, не ждите до конца дня или окончания итерации для интеграции. Имейте модульные тесты и автоматические приемочные испытания, которые выполняются при каждой регистрации, чтобы гарантировать, что никто не сломает код.

Планируйте небольшие функции, работайте на небольших кусках работы. Меньшие куски легче фиксировать, когда что-то ломается. Все ли команды работают над одной и той же продуктовой/кодовой строкой? Вы можете попробовать планировать функции, чтобы функции не влияли на функции, над которыми работает другая команда. Попробуйте посещать стойки другой команды, чтобы раньше разрешить конфликты интеграции. Поделитесь работой, если функции конфликтуют.