When using SharePoint as part of build automation processes they generally rely on msbuild.exe to compile/test the solution. These projects can often times consist of a multitude of projects, from just one type to several hundred SharePoint projects. A problem that is frequent is if there are no build errors then all the SharePoint assemblies will be generated, and the world is great. However, for chained builds if one of the projects does not build even though there is no dependency between the projects it will skip compiling the others. Ideally, no compilation is skipped unless an explicit dependency has been noted, however using the most immediate solution, the ContinueonError and StopOnFirstFailure properties will not work.
As opposed to this approach, it is based to divvy your solutions based on relationships, thereby defining the relationships in a matter that provides true separation in TFS. While you will have more solutions, you can still be related sets of them and build your pass/fail gates to work in a more targeted manner. Following, any sort of orchestration could be used for independent compilation.