Scrum : Agile Software development Methodology
January 11, 2010 by: SanketWhat is Scrum : Agile Software development Methodology
Software development is a complex process. Some complexities of software development include – managing rapidly changing requirements and unrealistic estimates of time, cost, and product quality. To overcome these complexities, Scrum comes into process. Scrum is a most perplexing and paradoxical process for managing complex projects. It provides you a set of guidelines to develop software from its design stage to its completion. Scrum is best suited for the projects with rapidly changing or highly emergent requirements.
SCRUM is a relatively new software development methodology that uses an iterative and incremental process for developing software. It is one of the various agile software development methods like Crystal, Extreme Programming (XP), Open Source Software Development (OSSD), Agile Methodology (AM) etc.
As per wiki, Scrum is a process skeleton that includes a set of practices and predefined roles. The main roles in scrum are the ScrumMaster who maintains the processes and works similar to a project manager, the Product Owner who represents the stakeholders, and the Team which includes the developers.
During each sprint, a 15-30 day period (length decided by the team), the team creates an increment of potential shippable (usable) software. The set of features that go into each sprint come from the product backlog, which is a prioritized set of high level requirements of work to be done. What backlog items go into the sprint is determined during the sprint planning meeting. During this meeting the Product Owner informs the team of the items in the product backlog that he wants completed. The team then determines how much of this they can commit to complete during the next sprint.During the sprint, no one is able to change the sprint backlog, which means that the requirements are frozen for sprint.
For more details do visit:
http://en.wikipedia.org/wiki/Scrum_(development)

