A significant amount of project effort, especially at customers doing mainly product development, goes into migrating and optimizing build processes. Build processes exhibit 3 important aspects, which due to their criticality and benefits legitimate project costs:
- Build processes are implicitly business critical – only a working build process results in deliverable products.
- Heterogeneous build processes imply high – mostly hidden maintenance efforts without directly visible benefits. Small changes in “the scripts” are long lasting and expensive tasks which can be done by high qualified resources only.
- Build processes often require manual steps, which can be automated with modern platform. Which saves costs!
This article introduces the new free AIT Build Suite 2010. With which complex build processes can be configured easily using centralized builds with Microsoft Visual Studio Team Foundation Server 2010.
An important part of the Build Suite is release management. The standard process associates code changes (Changesets) and tasks (Work Items) using the build status. All changes that happened on a specific branch since the last successful build will be associated with the current one (see figure 1).
Figure 1 – Build association of Changesets and Work Items
But that’s not sufficient. Figure 1 shows the changed behavior using the AIT Build Suite 2010. It additionally instruments the build quality (see figure 2) to generate change lists. With this functionality, all changes back to a released product version can be tracked easily.
Figure 2 – Build summary
During the creation of product versions it is important to integrate versioning information into the product itself. With the first call of a customer caused by questions or issues, versioning information about the product must be easily accessible for end-users. .NET framework provides options to keep the version number and other details inside an assembly and to show those inside an about box.
AIT Build Suite provides an easy way to integrate this task into the build process and includes an example of how to show these information in your application (see figure 3).
Figure 3 – Assembly information are shown in an about dialog (sample: WordToTFS)
With Team Foundation Server 2008 build processes have been executed using a central MSBuild script deployed with Team Explorer or Team Build components. With the new version 2010 Workflow Foundation is used instead. Still, at the core of compilation, MSBuild is used (new version 4.0). Existing build scripts cannot be integrated out-of-the-box with 2010. The Microsoft UpgradeTemplate ought to provide an easy to integrate experience. But even for basic customized scripts it is not sufficient. Despite the core compile targets, none of the customizable extension targets like AfterGet or BeforeCompile are instrumented. That’s why, AIT delivers a generic Template with Build Suite 2010 which provides MSBuild extension points. This accelerates the migration of build to TFS 2010 dramatically.
Customers of AIT use our Sandcastle integration for Team Build 2008. Sandcastle projects can be used to automatically generate code documentation. This can be integrated into the central build as well. The new AIT Build Suite 2010 provides parameterized activities for Sandcastle as well.
With AIT Build Suite 2010 you can bring your build processes towards company-wide processes which respect the specific needs of teams. Download your copy of our Build Suite 2010 for free from our Tools & Downloads Area. After a short registration, you have access to all the tools of AIT TeamSystemPro Team – such as WordToTFS – a Work Item integration with Microsoft Office Word 2007.