Scrum is a relatively simple but effective process for developing software in incremental and iterative development styles. The basic Scrum framework consists of a set of standard practices and predefined roles. Each iteration is facilitated by an experienced ScrumMaster.
- According the Agile Project Management with Scrum, by Ken Schwaber, the ScrumMaster is a facilitator for the team and product owner. Rather than manage the team, the ScrumMaster works to assist both the team and product owner in the following ways: Remove the barriers between the development and the product owner so that the product owner directly drives development.
- Teach the product owner how to maximize return on investment (ROI), and meet his/her objectives through Scrum.
- Improve the lives of the development team by facilitating creativity and empowerment.
- Improve the productivity of the development team in any way possible.
- Improve the engineering practices and tools so that each increment of functionality is potentially shippable.
- Keep information about the team's progress up to date and visible to all parties.
Common Problems Addressed by This Offering
- Difficulty obtaining consistency between the business and IT
- The team misunderstands or is unaware of the business goals
- Lack of regular communication within the team
- Lack of a standard software management process