SPA2005 session: Scaling up Continous Integration

One-line description:How to implement Continuous Integration for large teams, distributed environments, and other complex cases.
 
Session format: Tutorial [read about the different session types]
 
Abstract:Continuous Integration (CI) takes effort to scale up. As a project grows in size, it beomes more difficult to manage dependencies and to allow the team to make enough changes in parallel. Many projects simply cannot be run with the ideal organisation of a small team working on a single codebase. It is just these cases, where it is harder to implement, that CI is even more valuable.

In this session, we will introduce tools and techniques for implementing CI on larger projects, showing how to maintain a balance between responsiveness and completeness as scale makes these incompatible. Our approach will include organisational aspects of scaling-up CI.
 
Audience background:This session is for people immediately concerned with software development, such as developers, architects, and project managers. There will be significant technical content.
 
Benefits of participating:The participants will gain an understanding of the issues involved in implementing Continuous Integration for more complex projects, and some of the tools available to support this. There will also be time for discussion and addressing participants' current problems.
 
Materials provided:Tutorial notes
 
Process:This tutorial will be mainly a presentation (with the usual scope for discussion, of course). The topics we intend to cover are:

- motivations for Continuous Integration (CI)
- a brief introduction to CI with a single code base, including common tools
- gather issues and topics from the participants
- ways CI can fall apart with scale
- techniques and tools for addressing these failings, such as modularisation and multi-stage builds
- organisational issues of large-scale CI
- discussion based around participants' issues and topics
 
Outputs:- tutorial notes
- write-up from results of discussion
 
History:First time
 
Presenters
1. Steve Freeman
Thoughtworks
2. Mike Roberts
ThoughtWorks
3.