full-build is a smart build system for .NET. More details can be found on full-build.
full-build has been done considering my past experience and what I’ve done at Societe Generale and seen at Criteo. Most “entreprise” projects with .net end up with a bunch of solution and NuGet to attempt to fix problems.
full-build forces a strict build process: everything must build with latest. There is no much choice to avoid legacy popping everywhere. Side note: this does not mean everything have to be released at the same time. This just means “Yeahh, we are able to get things that work together and we could ship everything”. Release management is no common practice but it’s worth exploring this. End of side note.
But working with all sources everytime is useless and time consuming. That’s why full-build allows one to focus on specific projects while still maintaining global cohesion. This helps tremendously developers on their day-to-day job.
full-build is just a part of the puzzle. You have to setup a build process:
Process is then crystal clear. Everything has to work to be able to go forward. No more unbuilt project, no excuse not to fix, no excuse to do a refactoring.
Peoples are still the key. Peoples have to accept the workflow and be honest with their own work (code-review, be responsive and responsible in case of broken build). No silver bullet, anyway, business as usual.
full-build is part of a bigger plan: