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 greaterand 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.
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 the first installment of this two-part article, we examine the issues facing the current generation of processes and show why we have all had enough of them. In the next installment, we present EssWork and show how it can help teams realize their investment in learning, developing, and documenting best practices.