|
Recently, I worked with a few of my colleagues to implement an Application Lifecycle Methodology (ALM) solution that included a full build infrastructure that provided most of the functionality of a Continuous Integration (CI) server. This was part of a rich and powerful technology solution that managed all aspects of the Software Development Lifecycle. During this effort, I realized that some of my colleagues did not fully grasp the scope and purpose of using a build agent. Sharing the work Build Agents provide a convenient mechanism for requesting a build of the code (that you are working on) using a separate (usually much more powerful) computer that has been allocated as a build agent. In some cases, this approach can be implemented using virtualization. That means that the build machine is created and used for the build – with the resources being allocated and then freed up again for other use (e.g. test environments). You might be writing your code on an inexpensive laptop, but you can automatically have your code built on a large server (most likely linking in other required build dependencies). Which version of Unix? You might also need to write code that has to execute on Sun Solaris, AIX, HP-UX, etc. Having powerful build agents available helps to improve productivity by allowing you to build on a variety of powerful boxes designed exactly for this purpose. These expensive machines can be shared among all of your developers. Conclusion Using Build Agents as part of your Continuous Integration server or any one of the full ALM solutions can significantly improve your productivity. Please send me your own tips and tricks for effective build and release management! Bob Aiello is the Editor-in-Chief for CM Crossroads and a Software Engineer specializing in Software Process Improvement including Software Configuration and Release Management. Mr. Aiello has over 25 years experience as a technical manager in several top NYC Financial Services firms where he had had company-wide responsibility for CM, often providing hands-on technical support for enterprise Source Code Management tools, SOX/Cobit compliance, build engineering, continuous integration and automated application deployment. Bob is the Vice Chair of the IEEE 828 Standards working group (CM Planning) and is a member of the IEEE Software and Systems Engineering Standards Committee (S2ESC) Management Board. He is a long standing member of the Steering Committee of the NYC Software Process Improvement Network (CitySPIN), where he serves as the chair of the CM SIG. Mr. Aiello holds a Masters in Industrial Psychology from NYU and a B.S. in Computer Science and Math from Hofstra University. You may contact Mr. Aiello at raiello@acm.org or link with him at http://www.linkedin.com/in/bobaiello
Set as favorite
Bookmark
Email this
Hits: 4328 Trackback(0)Comments (0)
|
| Last Updated on Sunday, 06 September 2009 10:07 |


Recently, I worked with a few of my colleagues to implement an Application Lifecycle Methodology (ALM) solution that included a full build infrastructure that provided most of the functionality of a Continuous Integration (CI) server. This was part of a rich and powerful technology solution that managed all aspects of the Software Development Lifecycle. During this effort, I realized that some of my colleagues did not fully grasp the scope and purpose of using a build agent. 
