Sunday, October 6, 2013

Agile: Understanding Agile Methodology



      When I first heard of agile in my CS100W class, I was thinking of the actual definition: Characterized by quickness, lightness, and ease of movement.  I continued to learn that the term "agile" in class refers to a software development method! You may have heard of other software development methods such as Waterfall, Spiral, Iterative and Incremental, etc. These are all methods that work as a framework which controls project development and maintenance.  Agile Methodology is an alternative to traditional project management, based on iterative and incremental development. Requirements and solutions through cooperation between self-organizing, cross-functional teams.

Here are some underlying principles of Agile Methodology:


1) Complex projects are broken into smaller, attainable goals.


2) Simplicity


3) Face to face communication (the best kind of communication!)

4) Close, daily cooperation between business people and developers


5) Regular adaption to changing circumstances


A framework that uses agile methodology is Scrum.  Projects are broken down into smaller pieces that are managed and completed in short intervals called sprints.  These sprints, which are often two to four weeks, involve short term goals that are part of the main goal.  Following the process above, customers receive the "Release" often and are able to evaluate it so that modifications can be made.


Agile is a very powerful tool that can be used efficiently in any project. Although it may not be the best option, it provides a productive approach for teams and product development.

No comments:

Post a Comment