I’ve recently joined a new company, and with this endeavor comes new opportunities and challenges alike. On the challenge side I am working with a fledgling Scrum team that is new to the framework and having a hard time adjusting to the new Agile mindset that comes with the transition. On the opportunity side of the coin, this presents new ways to facilitate adoption of the scrum ceremonies and processes.
One big shift that happens when teams go Agile is the flattening of the org. chart and the increased responsibilities garnered by the team. Even though this change is a good thing, a lot of times there is great confusion around who does what in the new infrastructure.
**Disclaimer*** I am very happy with my new team, and thankfully i work with great people who were able to understand and adopt to new roles fairly quick.
The Role of the Product Owner
The product owner is often referred to as the voice of the business/customer. The product owner is responsible for parsing requests from the customer into actionable user stories. Among many others, the product owner burdens the following responsibilities:
User Stories — the product owner takes the requests from the business and translate them into user stories that can be interpreted by the team and transformed into working software.
Acceptance Criteria — the product owner refines the user stories and works with the team to add acceptance criteria. Essentially, acceptance criteria are the conditions that must be met for the user story to fulfill the definition of ‘Done’.
Product Vision — The product owner works with stakeholders to create a product vision that the scrum team can work towards and maintain. This product vision guides decisions made about the product.
Prioritization — The product owner works with the team to order the work in the backlog based on stakeholder expectations, technical dependencies, and the release plan among a multitude of other factors.
Stakeholders — The product owner works with the customers to understand their needs and wants and organize the work to satisfy said needs.
The Role of the Team
The team is what makes SCRUM work. The team is where the tangible value is delivered in the form of product increments. The team works together to do what is necessary to satisfy the product vision.
Perform the ‘Work’ — the team is the foundation of scrum. They are responsible for getting the work done (i.e. the programming, testing, analysis, and deployment activities).
Adapt to Change — A new scrum team is prone to lots of change and fast pace. It is imperative that the team is constantly adapting and improving their processes. The scrum team is always maturing, and all team members need to be open to adapting new tools and processes.
Decompose Stories — The team are the experts in the product. Therefore, it is the teams responsibility to ensure that the requested user stories are small enough that the team can deliver each user story in an allotted sprint. If a story is too large that it cant be completed and delivered to production within a sprint it should be broken down into more smaller stories.
Size Stories — Again, the team is the expert on the product. The team is required to determine with the product owner, the size of the stories during backlog refinement meetings. This activity should be performed by the TEAM and not a single advocate. See my article on estimating for more details.
Shippable Features — The team must always be shipping. A primary reason companies switch to Agile framework is due to the hype around rapid delivery of software. Its the teams duty to ship working software at the end of each development sprint.
The Role of the Scrum Master
The Scrum Master is the sticky stuff that holds the team together. The Scrum Master is the glue. Super Glue. Key responsibilities of the Scrum Master are as follows:
Facilitate Meetings — The Scrum Masters are supposed to be the experts of their domain, and should have a great understanding of the framework. Thus, the Scrum Master should be able to walk the team and Product Owner through the sprint ceremonies (i.e. Sprint Planning, Daily Standup, Backlog Refinement, Retrospective, and at times sprint Reviews).
Coach the Team — The Scrum Master needs to be able to coach the team and facilitate self organization within the scrum team. Each team is unique, and the Scrum Master should be able to manipulate the Scrum framework to suit the needs of the team.
Impediments — During the sprint it is paramount that the team identifies any impediments early and often. It is the job of the Scrum Master to ensure that any road blocks are resolved swiftly. If the Scrum Master can’t directly resolve the issue himself, he needs to empower the right person to do so.
Provide Feedback — The Scrum Master facilitates the sprint retrospective meeting. In this meeting, the team measures the success of the sprint and trades feedback with one another on how the team can improve in the next. It’s the role of the scrum master to document this feedback and to work with the team to make sure the team is improving.
Help Write Stories — The scrum master should know the product. This knowledge of the product will allow the Scrum Master step in during times of need, to help the product owner or team fulfill their responsibilities. The scrum master should be able to coach the product owner in how to write effective and consistent user stories.
There are many other responsibilities within these three roles, but the goal of this post is to highlight some of the critical ones. Comment below if the roles in your team differ in any way or if you have other roles you think are important.