Scrum is an iterative, incremental process for developing any product or managing any work.
It produces a potentially shippable set of functionality at the end of every iteration. Its attributes are:
- Scrum is an agile process to manage and control development work.
- Scrum is a team-based approach to iteratively, incrementally develop systems and products when requirements are rapidly changing
- Scrum is a process that controls the chaos of conflicting interests and needs.
- Scrum is a way to improve communications and maximize co-operation.
- Scrum is a way to maximize productivity.
Scrum naturally focuses an entire organization on building successful products. Without major changes - often within thirty days - teams are building useful, demonstrable product functionality. Scrum is a set of interrelated practices and rules that optimize the development environment, reduce organizational overhead, and closely synchronize market requirements with iterative prototypes. Based in modern process control theory, Scrum causes the best possible software to be constructed given the available resources, acceptable quality, and required release dates. Useful product functionality is delivered on a regular basis as requirements, architecture, and design emerge.