AGILE PROJECT M A N A G E M E N T:
STEERING FROM THE EDGES
Agile project management lets software project managers and employees alike adapt to changing circumstances, rather than try to impose rigid formal controls, as in traditional linear development methods.
Dealing with an increasingly volatile organizational environment is a serious challenge for managers of any software development project [11]. Traditional formal software development methodologies can be characterized as reflecting linear, sequential processes, and the related management approaches can be effective in developing software with stable, known, consistent requirements. Yet most real-world development efforts are much more likely to be conducted in more volatile environments, as organizations adapt to changing technology, markets, and social conditions. Requirements for systems must be able to change right along with them, often at “Internet speed” [3]. Even seemingly minor changes can produce unanticipated effects, as systems become more complex and their components more interdependent. Project management approaches based on the traditional linear development methodologies are mismatched with such dynamic systems.
COMMUNICATIONS OF THE ACM December 2005/Vol. 48, No. 12
85
Observing this tendency for software requirements to change, Meir Lehman, writing in [9], suggested that their underlying processes can be characterized as “multi-level, multi-loop, multi-agent feedback systems.” Software developers have long responded to this complexity with iterative, often ad-hoc approaches. More recently, a host of “agile” development methodologies, including eXtreme Programming (XP) [4], Crystal, Scrum, Adaptive Software Development, Dynamic Systems Development Method, and Feature-Driven Development, have sought to focus on rapid iterative delivery, flexibility, and working code [1]. In our experience, project
References: 1. Abrahamsson, P., Warsta, J., Siponen, M., and Ronkainen, J. New directions in agile methods: Comparative analysis. In Proceedings of the 25th International Conference on Software Engineering (May 3–10, 2003), 244–254. 2. Anthes, G. Ant colony IT. Computerworld (2001); www.computerworld.com/softwaretopics/software/appdev/story/0,10801,61394,00. html. 3. Baskerville, R., Ramesh, B., Levine, L., Pries-Heje, J., and Slaughter, S. Is Internet-speed software development different? IEEE Software 20, 6 (Nov.–Dec. 2003), 70–77. 4. Beck, K. eXtreme Programming Explained: Embrace Change. AddisonWesley, Reading, MA, 1999. 5. Cockburn, A. Agile Software Development. Addison-Wesley, Reading, MA, 2001. 6. DeMarco, T. The Deadline: A Novel About Project Management. Dorset House, New York, 1997. 7. Dooley, K. A nominal definition of complex adaptive systems. The Chaos Network 8, 1 (1996), 2–3. 8. Highsmith, J. Adaptive Software Development: A Collaborative Approach to Managing Complex Systems. Dorset House, New York, 2000. 9. Lehman, M. Rules and tools for software evolution planning and management. Annals of Software Engineering 11, 2 (2001). 10. Miller, G. The magical number seven, plus or minus two: Some limits on our capacity for processing information. The Psychological Review 63 (1956), 81–97; www.well.com/user/smalin/miller.html. 11. Truex, D., Baskerville, R., and Klein, H. Growing systems in an emergent organization. Commun. ACM 42, 8 (Aug. 1999), 117–123. Sanjiv Augustine (sanjiv.augustine@ccpace.com) is practice director for lean-agile consulting at CC Pace, a financial services consulting company in Fairfax, VA. Bob Payne (bobpayne@webdc.com) is CEO and founder of Electroglide, Inc., a consulting firm in Washington, D.C. Fred Sencindiver was an assistant professor of management science at George Washington University’s Ashburn, VA campus and passed away before the final version of this article was completed. Susan Woodcock (susan.woodcock@ccpace.com) is vice president for strategic services at CC Pace, a financial services consulting company in Fairfax, VA. Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. © 2005 ACM 0001-0782/05/1200 $5.00 COMMUNICATIONS OF THE ACM December 2005/Vol. 48, No. 12 89