Build Management Solutions for the Microsoft Developer 
OpenMake Meister uses Microsoft Technology to extend the build Functionality for the Microsoft DeveloperOpenMake Meister extends the build features of Visual Studio and Microsoft Team Build to mash up multi-language builds. Meister allows VS developers to build multi-language applications including older versions of Microsoft Studio and Java in the same build. In addition, Meister mashes up the individual developer IDE build with the centralized team build, even when different versions of VS or multiple solution files are used. The main features of OpenMake Meister important to Visual Studio 2005 are: 
- Multi-language, Multi-platform and Cross Platform Build mashups.
- Visual Studio IDE based solutions for individual developers or Visual Studio Team Foundation Server based solutions for Team Build requirements.
- Dependency Discovery and Build Forensics bridging production binaries to matching source code in Team Foundation Server.
- Build best practices regardless of the development language, or Microsoft IDE version.
- Consolidation of MSBuild scripts, Nant Scripts and Nmake scripts into a set of standardized and reusable build methods.
- Centralized user management, on-demand workflow management, and self service information for viewing build logs and metric reports.
Download the Build Solutions for Microsoft Developer Datasheet Download a step by step guide to building Microsoft Petshop using the Meister MS Visual Studio Add-in Download the Petshop code from Microsoft Builds for the Visual Studio SuiteMicrosoft Visual Studio 2005 provides streamlined functionality for executing builds outside of the IDE using MSBuild to create C#, J# and VB.Net objects. For development teams who use multiple versions of Visual Studio, they need a build process that supports more than just C#, J# and VB.Net objects. OpenMake Meister extends the build functionality to all different kinds of build types. For a large university, OpenMake Meister improved the development efforts by weaving together the compile and link process for both Visual Studio 2005 and Visual Studio .Net objects, as if they came from the same IDE. Enhancing the build process without the need for manual scripting allowed developers to easily work within the different Microsoft IDEs and submit builds in a standard and traceable way, improving productivity and reducing development costs. Table 1 shows what objects are supported by MSBuild and how OpenMake Meister extends the Visual Studio Build capabilities. Language | MSBuild/Team Build | Meister | C# | Yes | Yes | J# | Yes | Yes | VB.NET | Yes | Yes | C .Net | Yes, via VCBuild.exe | Yes | ASPX | Yes, via ASPCompile.exe | Yes | C – VS 6 | No | Yes | C++ – VS 6 | No | Yes | VB – VS 6 | No | Yes | MSI Installers | No | Yes | Other .Net Project file formats, Biztalk 2005 | No | Yes | Java | No | Yes | Cobol | No | Yes |
Table 1 Build Decision Making when Building Multiple SolutionsIn larger enterprise efforts, where it is necessary to manage large applications, multiple Visual Studio solution files are frequently used to create a single application. For this effort, developers must write their own MSBuild XML scripts. This is where OpenMake Meister enhances the process. OpenMake Meister allows you to generate a build.xml file, called a Build Control File, that builds an application that uses multiple Visual Studio solution files with dependency linking. During the build process, Meister's deep dependency scanning links all of the dependent parts together. For a major retailer, this solution management feature allowed the development team to separate application components into unique VS solution files, creating smaller solution files, without losing the ability to build all of the solutions as a single unit. When applications become more complex, it is often not possible to manage the entire application as a single VS solution. OpenMake Meister allows for teams to use as many VS solutions as needed, and not lose critical build functionality. OpenMake Meister can accurately determine the order in which objects between solution files should be built. We call this good build "decision making." | Build Decision Making for Build AvoidanceBuilding faster is critical for large projects. The most efficient way to build faster is through build avoidance. Build avoidance simply means that your builds will be done incrementally, re-compiling only the objects that are out of date. With MSBuild you can define "Transform" relationships between objects and MSBuild will check the time and date of the relationships to determine if on object is out of date. To do this, you must code the "Transform" statements manually in the MSBuild script to define how you want to handle the date/time checking process. OpenMake Meister uses machine intelligence to automatically track these dependencies and perform the date/time checking. For a major financial institution, the build avoidance feature of OpenMake Meister allowed them to easily define a process for handling Emergency Build procedures. To build their full application required over 8 hours. To support an Emergency "fix" procedure, the wanted only the changes to be re-built. Meister's automatic build avoidance supported this need decreasing the build times from 8 hours to less than 30 minutes. In addition, this same process was introduced into their Agile development practices allowing continuous integration builds to occur every time a check-in of source was performed, not just on a nightly basis. With OpenMake Meister, 10 minute builds are possible, making continuous integration builds a reality. | Visual Studio 2005 Specific Build Issues with the Web ProjectA common build challenge for VS 2005 developers is the Web Project. The web project involves not only source and assemblies, but also a requirement to interact with the IIS web server. MSBuild can call the process that creates the Web Project, but developers must manually create the MSBuild scripts. In some cases, developers choose Nant, an Apache open source language, to create the build logic for VS 2005 Web Projects. Meister provides an alternative. It supports the building VS 2005 Web Projects by automatically generating they build scripts, similarly to the way VS 2005 generates MSBuild scripts for C# and J#. | Scheduled, Automated and CI BuildsAs applications written using the Visual Studio Framework mature, so does the need to manage the build process outside of the VS IDE. With Meister, your builds can be executed the same way inside the IDE as outside the IDE allowing for Continuous Integration Builds, scheduled builds and builds automated through other called activities. |
|