One of the best and results-oriented Software development life cycle models is Agile Methodology. Agile is as the umbrella term which covers various types of development models few are listed below.
- Rational Unified Process
- Scrum Methodology
- Extreme Programming
- Adaptive Software Development
- Feature Driven Development
Agile balanced the iterative and increment of software development activity and try to deliver the feature to the client after each iteration. As clients are getting feature after every release, client satisfaction can be improved. The development models you have learned till now are somewhat not used by industry nowadays. It has been observed from last couple of year’s industry is adopting the agile aggressively. The industry has many reasons for adopting and changing their current model to Agile. I have tried to list out few basic reasons below.
- Realistic and easy to implement
- Features are implemented after each iteration
- Limited number of resources required
- Best for changing requirements
- Best for Fixed requirements
- Features developed and demonstrated
- Less documentation
- Easy to manage
On the basis of experience, I have tried note few of Agile principles. You can opt for any development model under Agile this principle will follow you. Fundamentally these are the principles which make Agile different from all other traditional development models.
- Customer satisfaction by delivering continues and regularly valuable feature.
- Ready to accept changes during development
- Involvement of client is important, could be business team
- Working software is the measurement parameter
- Less documentation and more work