Wednesday, 23 September 2015

Agile Software Development and its advantages and disadvantages

Agile Software Development
Agile software development is a type of software development processes in which results produce by combination between self organizing, cross functional teams. It boosts adaptive planning, fast delivery of projects, evolutionary development, constant improvement, and influence fast and flexible response to change.

The most famous Agile Software development process includes Extreme Programming (XP), Scrum, Crystal, Lean Development, Dynamic Systems Development Method (DSDM), and Feature-Driven Development (FDD). This all is important for constant testing, constant integration and other type of constant evolution of software and project both. If focus on authorizing people to collaborate and make decision together rapidly and effectively.

Advantages
  •  Agile methodology provide regular view to the client in case of adjustments required
  •  It is less expensive
  •  Less documentation required
  • Able to give quick response to changing requirements.
  • The end result in good quality software in less possible time duration and satisfy customers requirements.
  • Able to do face to face communication with client and continuous input of client’s requirements.
  • Continuous attention to technical excellence and good design
  • Constant attention to technical requirements and good design.


Disadvantage
  • Did not get more time for planning, design and documentation.
  • Only senior programmer is capable to take any decision required during development phase.
  • The project can easily spoil if client if not sure about final outcome that they want.