Agile software development emphasizes four core values.
- Individual and team interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
Agile model features include:
- The process is broken into individual models that designers work on
- The customer has early access to view the progress which enables them to make changes also early if needed
- Errors can be fixed in the middle of the project
- Encourages testers and developers to work together
- The planning phase is less and the development is executed in short (2-4) weeks iterations.
Benefits of Agile model development are:
- Transparency: It provides opportunities for clients to be involved throughout the project.
- Early and Predictable Delivery: By making fixed schedule sprints, new features are delivered quickly and frequently. This also provides the opportunity to release or beta test the software earlier than planned.
- Predictable cost and schedule: Because each sprint is of a fixed schedule, the cost is predictable and the amount of work for a team is fixed.
- Allows for change: There is always an opportunity to add or change backlogged items for the next iteration.
- Focus on users: By focusing features on the needs of the real users, each feature delivers value and is not just a component.
- Improved quality: Due to the breakdown of the project in multiple units, the team can focus on quality development, testing and collaboration.