At work, where we develop LOB.NET/MSSQL, many of the projects that we have are projects for 2 people or even 1 person, which have 1-3 months development life cycles. Developers serve as a business analyst / project manager / QA, so everything is quickly executed with a minimum of "BS time". We get larger projects that can take 6 months, and we have a team of 5 developers, but this is more unusual.
We are trying to initiate everyone who does TDD in the future (my last project has full code coverage and was developed exclusively), and I have been researching an architecture that requires the maximum benefit from it. It seems that most people involved in TDD do CI, have a build server and make automatic builds, and have some kind of automated client creation tool (FinalBuilder or nAnt), etc.
So, my questions - I see obvious advantages in unusual large projects in which you have 5 people working on the same code base at once - but will we see the great benefit of performing CI in small projects involving two people? How about a 1 person project - for them it’s just a complete waste of time, because you really don’t “integrate” with anyone? And, how would you do the CI / automatic builds / build server step for management?
source share