Thursday, January 30, 2014

Basics of Agile methodology

Related post: Scrum - an introduction


Agile Software Development

Wikipedia meaning:
Agile software development is a group of software development methods based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams.

Why Agile?
It promotes adaptive planning, evolutionary development and delivery, a time-boxed iterative approach, and encourages rapid and flexible response to change. It is a conceptual framework that promotes foreseen tight interactions throughout the development cycle.

Agile methods break tasks into small iterations (that typically last from one to four weeks).
Each iteration involves  planning, requirements analysis, design, coding, unit testing, and acceptance testing.
When one iteration completes, demo is shown to the stakeholders.
This minimizes overall risk and allows the project to adapt to changes quickly.


Waterfall method is very sequential. All steps are performed sequentially
  • Analyses of Business requirements
  • Design
  • Implementation
  • Testing

Any issue would imply going back to the drawing board and starting from Step 1.
This adds to the risk!!!

Agile mitigates this risk since evaluation happens after end of every cycle.
Agile methods benefit constantly changing requirements.


1 comment:

  1. What's up, after reading this awesome paragraph i am also cheerful to share my knowledge here with colleagues.


    Here is my web site; scrum mobile development

    ReplyDelete