By Kevin Aguanno, PMP, MAPM, IPMA-B, Cert.APM, CSM, CSP
and Mike Bowler, CSM
In a recent article titled “Agile Methods and The Need for Speed” (http://pmac-agpc.ca/node/565), the author notes that many people are adopting agile development methods in hopes that they can deliver their project faster. The article goes on to state that, while speed is a possible outcome of agile methods, it is not guaranteed. Agile projects are more likely to achieve other benefits first, such as reduced technical risk, higher quality, greater likelihood of meeting true requirements, and more. Yet there are still those elusive speed-related benefits that people strive to achieve in their first agile projects.
To truly deliver software faster, one must look towards cutting down the timespan of all processes in the software development lifecycle from requirements gathering to deployment. Many who seek faster delivery use agile methods to improve the requirements gathering, design and development processes but are frustrated in their attempts to get a speedier deployment of the new software. These people often see deployment activities as unnecessarily cumbersome and often without much perceived value.
Perhaps the agile community has contributed to this perception. We have talked about concepts such as “continuous deployment” for years as if it were just one of the many agile techniques we can employ on our projects. Yet, this particular technique stands apart from many of the other basic agile techniques such as holding daily stand-up meetings, managing requirements using backlogs, and breaking a project down into iterations which culminate in a demonstration to stakeholders. Continuous deployment is among the most difficult of agile techniques to employ successfully and requires a very high level of agile maturity and discipline in the team.
Generally, to be successful at continuously deploying software into a production environment, a number of preconditions must be met:
About the Authors
With over 20 years of managing complex systems integration and software development projects, Kevin Aguanno is known in the industry for his innovative approaches to solving common project management problems. He focuses on three project management specialty areas: agile project management, troubled project recovery, and project methodology consulting. As a well-known keynote speaker, trainer, and executive coach in agile management methods, Aguanno has taught thousands of people how to better manage high-change projects by using techniques from Scrum, Extreme Programming, Feature-Driven Development, OpenUP and other agile methods. He is a frequent presenter at conferences and private corporate events where he delights audiences with practical advice peppered with fascinating stories from his own experiences in the trenches practicing agile project management. He has taught for several years at the University of Waterloo and the University of Toronto where he won the coveted SCS Excellence in Teaching Award, and is a regular guest lecturer in software engineering and project management classes at several other universities.
Kevin Aguanno holds a B.A. from the University of Western Ontario, and a Master’s in Project Management from the School of Business and Public Management at George Washington University. He is a PMI-certified Project Management Professional (PMP), and his competency is certified by IBM as a Certified Executive Project Manager and by the International Project Management Association (IPMA) as a Senior Project Manager (IPMA Level B). He is also certified by the Scrum Alliance as both a Certified ScrumMaster (CSM) and Certified Scrum Professional (CSP). He is also certified by the Project Management Association of Canada as a Certified Agile Project Manager (Cert.APM). Aguanno is an active member of the Project Management Institute (U.S.A.) including the Information Systems SIG, the Association for Project Management (U.K.), the Project Management Association of Canada where he is a founding director and the current President, the Agile Alliance, and the Scrum Alliance.
Kevin is accredited by the International Project Management Association (founded in Switzerland) as a project management competency assessor, and he performs IPMA assessments for the ASAPM in the U.S.A. and the PMAC in Canada, for both of which the IPMA awarded him the honorary designation of First Assessor. He is the author of over twenty books, audiobooks, and DVDs in addition to a number of articles published in magazines and journals worldwide. Find out more at http://www.mmpubs.com/catalog/Aguanno–Kevin-i-7.html.
Mike Bowler is an experienced agile coach with strong emphasis on both process and technical practices. He works with teams writing software and helps them do that better. He became interested in agile in 2000 and founded XP Toronto that year to get like-minded people together to discuss better ways to ship software. In 2003, after completing the Certified Scrum Master (CSM) designation, he co-founded Scrum Toronto to focus on that methodology. More recently, in 2012, Bowler co-founded Agile Toronto East to better serve the Agile community through Durham Region. Many agile coaches seem to focus only on the process skills behind agile. In addition to that, Bowler is also very strong with the technical skills such as Test Driven Development (TDD), refactoring, pair programming, continuous delivery and others. He regularly coaches teams on the use of these skills using languages such as Java, Ruby and C#. Bowler has demonstrated strong leadership skills by running a development shop in the insurance industry, founding two companies and also organizing and running various user groups such as Agile Toronto East, XP Toronto, The Durham IT Association and Scouts Canada. He has a wide range of industry experience including life insurance, medical, automotive, banking, alarm systems and loyalty programs. Finally, Bowler is an experienced speaker, having given many highly rated presentations at international conferences and local user groups. More at www.GenXus.com/bowler.