Peer to Peer Magazine

June 2012

The quarterly publication of the International Legal Technology Association

Issue link: http://read.uberflip.com/i/67910

Contents of this Issue

Navigation

Page 10 of 135

best practices An Agile Approach to Custom Development Projects by Gary Brandt of Clarity Consulting, Inc. An increasing number of firms are developing custom applications in order to differentiate themselves from their competition and to increase their efficiency in managing complex business processes. However, doing this successfully can be extremely challenging and costly. Firms often will engage a solution provider to develop the custom line-of-business applications. These applications vary wildly in purpose, size and complexity. The providers engaged also can vary widely in size and in their approach to development. Firms need to be confident that the solution delivered meets requirements on the day of completion and for the expected lifetime of its usage. Solution developers typically follow some methodology or set of best practices. But the client is likely unaware of these practices and will take a "we don't care how it's done as long as it's done on time and on budget" stance. However, it really makes business sense for the client to understand what these practices are, whether the provider is following them and what benefits can be gained by caring. Following the right practices and ensuring your firm's providers do too will contribute substantially to the success of your development projects. Traditional Development Practices Development practices are the processes and methods used to guide and track a custom solution project from its inception through delivery. There are many elements to these practices, and they have evolved over time. A traditional software project plan begins with a design that is approved before work commences on required foundation elements. As these elements are completed, additional tasks can be tackled, which build on the results of the earlier work. This building-block process continues until all project components are finished. Once the solution is complete, it is delivered to its intended users. Time and experience have shown that even though this basic construction works, there are better practices for software development. The key difference is to approach software solutions in an incremental and iterative manner. Agile Methodology Unlike the stages of a traditional software project plan, where each is dependent on the prior and any single stage is not serviceable on its own, an agile approach targets a working solution at each iteration. Early iterations may yield less capable solutions, but they are still functional and can be demonstrated to the intended users. Later iterations expand on the capabilities of the solution as a whole and, in some cases, refine capabilities of earlier iterations based on feedback from the intended users. This iterative approach is often referred to as an "agile methodology." This is based on the fact that shorter and smaller iterations can more quickly and easily be altered throughout the life of the project. Hence the project has more agility to change and adapt. A key factor in this process is continuous feedback. 12 Peer to Peer

Articles in this issue

Archives of this issue

view archives of Peer to Peer Magazine - June 2012