Someday a group of people from biggest companies (with some money trouble) like Toyota, Fujifilm and Xerox, decide that was time to find a solution for their problems merging high level develop, agile methodologies including the best AQ process.
Then choose a worker form every sector of their companies; business, develop, design, AQ, support and so on, and give to them three months in an isolated place outside of the city whit all the resources they need to build something to save their companies from the hole there were. All the good ideas of SCRUM came from that exercise, the sprint, the releases, the daily meetings, etc...
All is about the requirements; you need to squeeze your clients to obtain all the information you need, everything that someday will be part of the system that he wants to be made. Even ask him to go whit his dog and ask what it needs (they said).
To start a sprint (a design and develop iteration), you choose the most difficult requirements do be develop, and estimate the time you need to made it, Then you have a deadline. The sprint shouldn’t take more than a month and every day of the sprint there is a daily meeting, were you said what you did yesterday, what you are doing today and what troubles you have to complain your task. SCRUM philosophy keeps all the process transparent, and all the results are known, the goods and the bad ones. If everything is going well at the end of every sprint you have some functional features to show to your clients, they always like to see one part of the project working, more than an explanation like; “at the end it will works”.
The most of the non-successful experiences with SCRUM are because the parties of the process are cultural not prepared to admit their failures and what they need to change for improve their performance.