Defining Agile SCM: Past, Present & Future (2008)

techniques , including some heaping helpings of Theory of Constraints (including Critical Chain) and [Lean] Six-Sigma as they apply to CM and the "throughput" of change-flow, and change management.

The term "Agile" and the ideas behind it are no better or different from other labels (often called "fads") like Object-Orientation or [software/design] Patterns. They had lots of hype and buzz and they had some legitimate improvements to contribute to the state of the practice (even if the ideas themselves weren't new - that's not necessary in order to have great impact/influence). But once everything was all "hyped out" they faded into the woodwork, as a natural, acknowledged, part of the fundamental knowledge we should use and apply everyday.

Many tools/vendors are already headed in that direction, and have recognized the trend foretold by Tom Friedman ( The World is Flat ), Peter Fingar ( Extreme Competition ) and others like Dan Pink,  John Seely Brown, and more . With CollabNet, MS VSTS and Rational Jazz, the emphasis is on connecting and collaborating. Ways of doing software development and CM that fail to acknowledge that, and at least the first five of what Steve McConnell calls the ten most important ideas in software engineering are going to have a tougher go of things than they have in the past.

As to whether or not "Agile CM" legitimately exists in its own right, that is determined by the people who end up actually doing it, and we count ourselves as well as other contributors to CMCrossroads as amongst the vanguard (although some would call it "good practice" as opposed to "Agile"!). Just as there are many different "styles" of architecture, and each has its appropriate context and use, so too are there different "styles" of CM, each with its appropriate context and use. There is more than one way (style) of doing "good" CM (and many more ways of doing it badly), and not all "good" ways will have the same "style", nor should they.

The proof of the pudding, as ever, remains in the eating, and we thus welcome contributions/comments as to our success or otherwise of our efforts so far!

Next time we will be looking at the application and relevance of ideas from Lean Development, TOC, Six Sigma, and will also consider applying agile ideas to Change Control and CCB aspects of CM, as well as Value based software engineering (VBSE)

References:
[1] Agile Configuration Management Environments; by Brad Appleton; CM Journal, April 2003 (Vol 2. No. 4). Also a March 2004 presentation to C-SPIN (the Chicago Software Process Improvement Network).
[2] The Agile Difference for SCM; by Brad Appleton, Robert Cowham and Steve Berczuk; CM Journal, October 2004 (Vol 3. No. 10).
[3] "Balancing CM and Agility" CMCrossroads.com [General CM] forum, July 2005
[4] "CM in an Agile Development Environment", CMCrossroads.com [General CM] forum, May 2005
[5] "Spiral Development", CMCrossroads.com [General CM] forum, May 2006
[6] "What Needs to Change in CM for 2007?", CMCrossroads.com [General CM] forum, January 2007
[7] Software Configuration Management Patterns: Practical Teamwork, Effective Integration ; by Stephen P. Berczuk and Brad Appleton; Addison-Wesley, November 2002.
[8] Agile SCM by Steve Berczuk and Brad Appleton; "Appendix C" in Configuration Management Principles and Practice by Ann Hass; Addison-Wesley, December 2002
[9] Software Configuration Management in Agile Methods ; by Juha Kosklea; ESPOO 2003, VTT Publications 514, VTT Technical Research Centre of Finland (ISBN 951-38-6260-7)
[10] Lean Software Development: An Agile Toolkit ; by Mary and Tom Poppendieck; Addison-Wesley, May 2003.
[11] Agile Management for Software Engineering: Applying the Theory of Constraints for Business Results ; by

About the author

Brad Appleton's picture
Brad Appleton

Brad Appleton is a software CM/ALM solution architect and lean/agile development champion at a large telecommunications company. Currently he helps projects and teams adopt and apply lean/agile development and CM/ALM practices and tools. He is coauthor of the bookSoftware Configuration Management Patterns, a columnist in The CM Journal and The Agile Journal at CMCrossroads.com, and a former section editor for The C++ Report. You can read Brad's blog at blog.bradapp.net.

About the author

Steve Berczuk's picture
Steve Berczuk

Steve Berczuk is an engineer and ScrumMaster at Humedica where he's helping to build next-generation SaaS-based clinical informatics applications. The author of Software Configuration Management Patterns: Effective Teamwork, Practical Integration, he is a recognized expert in software configuration management and agile software development. Steve is passionate about helping teams work effectively to produce quality software. He has an M.S. in operations research from Stanford University and an S.B. in Electrical Engineering from MIT, and is a certified, practicing ScrumMaster. Contact Steve at steve@berczuk.com or visit berczuk.com and follow his blog at blog.berczuk.com.

About the author

Robert Cowham's picture
Robert Cowham

Robert Cowham has long been interested in software configuration management while retaining the attitude of a generalist with experience and skills in many aspects of software development. A regular presenter at conferences, he authored the Agile SCM column within the CM Journal together with Brad Appleton and Steve Berczuk. His day job is as Services Director for Square Mile Systems whose main focus is on skills and techniques for infrastructure configuration management and DCIM (Data Center Infrastructure Management) - applying configuration management principles to hardware documentation and implementation as well as mapping ITIL services to the underlying layers.