Enough of Processes - Lets do Practices

All modern software development processes try to help project teams conduct their work. While there are some important differences between them, the commonalities are far greater - and understandably, since the end goal of them all is to produce working software quickly and effectively. Thus, it doesn’t matter which process you adopt as long as it is adaptable, extensible, and capable of absorbing good ideas, even if they arise from other processes. To achieve this kind of flexibility things need to change. The focus needs to shift from the definition of complete processes to the capture of reusable practices. Teams should be able to mix-and-match practices and ideas from many different sources to create effective ways of working, ones that suit them and address their risks. In this new approach to process, which we call “EssWork”, teams select practices, which are then composed and integrated seamlessly into their development environments to provide dynamic and contextualized guidance, active facilitation, and even help remove mundane tasks through clever automation. In this paper we examine the issues facing the current generation of processes and show why we have all had enough of them. We then introduce the concept of practices and demonstrate why this is a superior approach to traditional process documentation, and the innovations needed to bring the practices to life. Finally we present EssWork and show how it can help teams realize their investment in learning, developing, and documenting best practices.

[1]  Ivar Jacobson,et al.  The Unified Software Development Process , 1999 .

[2]  Watts S. Humphrey,et al.  Introduction to the Team Software Process , 1999 .

[3]  Philippe Kruchten,et al.  The Rational Unified Process: An Introduction , 1998 .

[4]  Larry L. Constantine,et al.  Software for Use - A Practical Guide to the Models and Methods of Usage-Centered Design , 1999 .

[5]  Brian Henderson-Sellers,et al.  The OPEN process specification , 1997 .

[6]  William E. Lorensen,et al.  Object-Oriented Modeling and Design , 1991, TOOLS.

[7]  Mary Beth Chrissis,et al.  CMMI: Guidelines for Process Integration and Product Improvement , 2003 .

[8]  Stephen J. Mellor,et al.  Object Oriented Systems Analysis: Modeling the World in Data , 1988 .

[9]  James A. Highsmith,et al.  Adaptive Software Development: A Collaborative Approach to Managing Complex Systems , 1999 .

[10]  Ivar Jacobson,et al.  Object Design: Roles, Responsibilities, and Collaborations , 2002 .

[11]  Matt Barney,et al.  The New Six Sigma: A Leader's Guide to Achieving Rapid Business Improvement and Sustainable Results , 2002 .

[12]  Alistair Cockburn,et al.  Crystal Clear: A Human-Powered Methodology for Small Teams , 2004 .

[13]  Watts S. Humphrey,et al.  Introduction to the Personal Software Process , 1996 .

[14]  Ken Schwaber,et al.  Agile Project Management with Scrum , 1980 .

[15]  Gerald W. Both,et al.  Object-oriented analysis and design with applications , 1994 .

[16]  Kent L. Beck,et al.  Extreme programming explained - embrace change , 1990 .

[17]  Steve R. Palmer,et al.  A Practical Guide to Feature-Driven Development , 2002 .