Rich Crocco

Agile Methodology; a Popular Alternative in Project Management

ScrumSmallLabelled

Anyone who has participated in a professional project at their workplace can identify with some basic principles of one of the traditional software development project management styles, the ‘Waterfall.’ In this type of environment the requirements (or customer needs) of a project are permanently fixed at the outset along with the resources necessary to satisfy those requirements. The team performs several steps in succession along the path of the waterfall towards project completion. The major steps normally include: design, code, integration, test and deployment. Once these steps are completed, the final product is revealed to the customer. Although the waterfall method is generally considered to be a software development tool, it has uses for any type of project where a team is attempting to develop and deliver a product to a customer. This can be a new product or changes to an existing product.

One common complaint of the waterfall method arises when projects take months or even years to complete. Once the project is complete and the product is revealed, how do we know the product is what the customer envisioned? What if (during let’s say a hypothetical two year project) there have been other new technologies developed that would have changed and/or expanded the scope of the project had that been an option? After all, Moore’s Law tells us this is almost certain to happen in long term tech related projects.

The Agile methodology claims to be a solution to this problem. One of the key principles of Agile is the following, “Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.” This is the first of twelve principles written in the Agile Manifesto (written in 2001 by a group of software developers and available at agilemanifesto.org). Read more…