Brownfield Application Development in .NET is one of the better books i have read recently. The first part is about the ecosystem (version control, automated build, continuous integration, testing, defect management, … ), the second part is about the code (OO-principles, layering, dependencies, ui patterns, …) and the last chapter talks about ways to maintain the momentum. Very much recommended!