Scrum Roles and Responsibilities
Scrum is a agile development technique which makes developing complex software products easier. Scrum values the customer feedback. Prototypes of the product in short intervals so that early customer feedback can be used to deliver higher quality software. Scrum highly relies on a highly motivated, closely collaborating, cross-functional and self-organized teams.
Scrum is not a full process or methodology, it is a framework. It does not provide a complete, detailed descriptions of how everything is to be done. The Scrum team is given the power of deciding how most of the things should be done. The team will know best how to solve the problem as they are presented. This flexibility is the key success factor of the Scrum.
The Scrum Roles
The three core roles of the members of a Scrum team are:
- The Product Owner
- The Scrum Master
- The Scrum Team
The Product Owner
The Product Owner is the visionary of the project and is responsible for:
- Gathering requirements
- Managing and prioritizing the Product Backlog
- Software acceptance
- Planning the release
- Understand the value of the project
- Domain expertize
- Good technical knowledge
- A decision maker
- Easily available to the team
The Scrum Master
When the Product Owner focuses on the value of the project being developed, the Scrum Master focuses on the development process and the mentor for the Scrum team. The key responsibilities of the scrum master are:
- Planning the Sprints
- Prioritizing the sprint backlog
- Team leader
- Manage the development process
- Identify and eliminate obstacles that prevent the team from achieving their goals
- Prepare Burndown charts
- Ensure crystal clear communication among everyone involved in the project
- Technical expertize
- Understands the Product Owner’s Vision
- A good team player and Mentor
- Understands the teams capablities
- Motivating and coaching the team
- Problem solver
The Scrum Team
- Prioritizing the sprint backlog
- Estimate the effort to implement User Stories
- Development to achieve sprint goals.
- Implementing test cases
- Unit and initial Acceptance testings
- Identify obstacles and informing the Scrum Master
- Self organizing
- Daily Scrum meetings
- Pair Programmer
- Understands TDD, BDD, etc
- Understands Code smells and Refactoring
- Continuous Integration
- Self-motivated and organized
- Team player
Ancillary Roles
- Stakeholders – Anyone who derives value out of product being developed is a stakeholder. It is comprised of customers, users, customer representatives etc. They have a key involvement during the sprint reviews.
- Managers – A manager from a different department could get involved in the process now and then for various reasons. Some examples:
- A sales manager to know the status of the product so that they can schedule their tasks accordingly
- A tech support manager to understand training materials for the support team
- A system administrator to understand the type of skill required to be recruited
- An system architect to understand the deployment architecture requirements
- etc…