|
How our Build Management Solution is Different While coding, developers work independently inside their IDEs, such as Eclipse and Visual Studio, creating sub-components of the overall software application. When building, they point and click their way through the process to call build engines and assemble their code into binaries. However, as they integrate their code with the team, they must leave the comfort of the IDE and move to a "command line" build process outside of the IDE. To do this they must manually create a build script that calls build engines in an attempt to repeat or mimic the build that was performed by the IDE, coordinating their source code with the teams source code. In today's fast changing development environment where agile methodologies and continuous integration encourages change, this static, non adaptable build process has problems. First, agile developers and non agile developers alike update source code rapidly inside of their IDEs, but the static build scripts that exist outside the IDE have no reference to the changes made within the IDE. The build scripts themselves represent what the source code looked like at a particular point in time and become immediately out of date as source code quickly changes. A simple code refactoring within the IDE can cause a major re-write of the supporting static scripts. Secondly, as applications grow in size and complexity, the ability to manually define how the code should be assembled becomes more and more complex. Build scripts grow in size and numbers. Developers struggle to keep the build scripts accurate, even if they are given the time. These tasks are seldom added to project plans and are instead performed by an "un sung" hero that works late to make the whole process work. Real World Build Solutions
For these reasons, an automated process that synchronizes the developer's IDE build with the team build is necessary. This automation allows developers to more quickly meet the demands and tight release schedules they face each day, without being bogged down by out of sync and broken build scripts. OpenMake Meister solves these problems keeping the individual developer IDE build in sync with the team build executed outside the IDE. Meister uses innovative Build Services in conjunction with the IDE project file to generate the build scripts. Meister's Build Services are templates that are completely customizable and can be written to support any development requirement. The Meister community developed knowledge base includes standard templates that have been written and shared by the Openmake Meister User community. Because Meister manages the build engines, such as MSBuild and Ant, it can also tightly manage what is occurring in the build process itself. This includes what is called Build Forensics where each artifact used in the build is logged, even when the artifact is not managed by a source code control tool. Build Forensics provides the most detailed build auditing possible, providing developer's complete transparency as to what source code and libraries were used for any one build. This same Build Forensics is also used during the build to support Build Avoidance, meaning that when a build executes, objects that are up to date or not rebuilt, providing the fastest build speeds possible. OpenMake Meister and OpenMake Mojo support a full application lifecycle workflow processing, allowing developers to create pre and post activities around the build itself from the calling of SCM tools, testing tools and deployment processes all managed under the control of the centralized knowledgebase server. Workflows can be scheduled, executed on-demand, or executed on a Continuous Integration bases. OpenMake Software Benefits: Provides build best practices, build standards and build repeatability by managing build engines such as MSBuild and Ant. Synchronizes builds performed outside of IDEs with builds executed inside of IDEs. Enables development teams to become more agile, productive, and effective by extending the IDE's automatic code creation features to the build scripts themselves. Supports continuous integration with improved build processing speed through build avoidance technology. Supports code and directory refactoring within build scripts. Coordinates Pre and Post Build activities including integration with SCM tools, testing tools and deployment processes. Allows builds and workflows to be scheduled or executed on demand. Separates build to release handoffs between development and release teams. Simple to install with immediate results, no script conversions required. Build mentoring services to support the build and release process in your environment, regardless of the tools you've used.
|