In the traditional software development methodology, known as "The Waterfall", the end product is carefully end product is carefully analyzed, designed and documented. The effort needed to build the product is estimated and the tasks are planned accordingly. The team members work on these tasks and get it ready for implementation. A QA team then tests the software and the product is finally delivered to the stake holders. Every effort is made adhere to the project plan throughout the project life-cycle. Sounds great. Unfortunately it does not work in real life. Why? Human beings are involved. Humans are not designed to work this way
SCRUM is optimized to exploit the human reality. SCRUM emphasizes on rapid development in frequent iterations and rolling-out the software to the business very early on in the development cycle. This approach facilitates frequent customer feedbacks from very early on in the project.
In SCRUM the product vision takes the form of prioritized list of requirements, ranked in the order of value to the business. It is called the product Backlog. These requirements will detailed enough for all stakeholders and will evolve as the project progresses.
The product is developed in cycles of work called Sprints, Which are of typical duration of 1-4 weeks. At the start of the sprint the team selects a subset of items from the product backlog and commits to complete them by the end of the sprint. Once completed, the team demonstrates the latest build to the stakeholders and gets feedback, which will be acted upon in the subsequent sprints.
The product release is at the discretion of the product owner.At the start of the project there will be a rough release plan to give the project a broad direction; a project road map. The sprint/release cycles will continue untill there are no more tasks left in the product backlog.