Skip to Content
In spring of 2001, several prominent software methodology thinkers got together and created “Agile Alliance” and published an “Agile Manifesto”. Even though some of these people represented different approaches to software development, they found common ground in the agile manifesto. Agile movement borne out of this union has gained momentum and is being used to develop software all over the world.  Be adaptable, collaborative, delivery driven, people oriented, customer focused, guided by a vision; develop in short iterations and most other agile messages are hardly new. But viewing as a whole all the principles and practices of these methods have a fresh flavor. They push the envelope of embracing changing requirements, communication, self-organizing teams, adaptive planning and so forth. Plus some new practices such as test driven development, continuous integration are relatively new.  There are many ways to achieve agility, depending on the problem, context and other criteria. Here is a list of agile methods: •     Scrum •     Dynamic System Development Method •     Crystal Methods •     Feature Driven Development •     Lean Development •     Extreme Programming •     Adaptive Software Development  Agile methodologies are often compared to plan-driven methodologies. Each approach need to be selected based on specific criteria for a project to be successful. Here are three simple criteria that one should consider before deciding on an approach:  Changing requirements: If software / product requirements are expected to change substantially, then an agile approach is more suited, as it is designed to handle change.  Team size: If teams are small (less than 10) or can be nicely grouped into teams of<10 by topic grouping, then an agile approach can be considered. Also for Agile software development to be successful, the teams have to be cross-functional.  Number of dependencies: If there are too many dependencies then no matter which approach is considered, progress will be slowed down and blocked because of dependencies. Typically for agile approach can be selected when there are a small number of dependencies.  So agile methods are more applicable, for those software projects with lots of changing requirements, fewer dependencies and smaller teams.  You can find more information about agile software development by clicking on the links below:  www.agilemanifesto.org www.agilealliance.com www.controlchaos.com
To report this post you need to login first.

Be the first to leave a comment

You must be Logged on to comment or reply to a post.

Leave a Reply