Scrum

From CSSEMediaWiki
Jump to: navigation, search

Scrum is a software development process. It is an iterative and incremental methodology that produces many releases.

Contents

How it works

Scrum is a process skeleton that contains sets of practices and predefined roles. The main roles in Scrum are:

  • ScrumMaster - Who maintains the processes (typically in lieu of a project manager)
  • Product Owner - Who represents the stakeholders and the business
  • Team - A cross-functional group of about 7 people who do the actual analysis, design, implementation, testing, etc.

During the sprint, which is usually a two to four week period (with the length being decided by the team), the team creates a potentially shippable product increment (ideally, working and tested software). The set of features that go into a sprint come from the product “backlog”, which is a prioritized set of high level requirements of work to be done. The actual backlog items to go into the sprint are determined during the sprint planning meeting. In this meeting, the Product Owner informs the team of which features they want completed. The team then decides how much of this they can commit to complete during the next sprint. Once a sprint has been started, the backlog cannot be change. If any of the features are not achieved in that sprint, they are returned to the backlog.

Scrum Process [Source]

Communication and Interaction

Scrum enables the creation of self-organizing teams by encouraging co-location of all team members, and verbal communication across all team members and disciplines that are involved in the project. A key principle of Scrum is its recognition that during a project the customers (Product Owner) can change their minds about what they want and need (often called requirements churn), and that unpredicted challenges cannot be easily addressed in a traditional predictive or planned manner. The Scrum approach holds that the problem cannot be fully understood or defined, focusing instead on maximizing the team’s ability to deliver quickly and respond to emerging requirements.

Implementation of Scrum

Like other agile development methodologies, Scrum can be implemented through a wide range of tools. Many companies use universal software tools, such as Microsoft Excel to build and maintain artifacts such as the sprint backlog. There are also open-source and proprietary software packages dedicated to management of products under the Scrum process. Other organizations implement Scrum without the use of any software tools, and maintain their artifacts in hard-copy forms such as paper, whiteboards, and sticky notes.


See Also

Personal tools