Posted on Leave a comment

Scrum roles’ responsibilities and characteristics

As you know, Scrum contains three predefined roles: Product Owner, Scrum Master, and Development Team. In this blog post, we bring their responsibilities and characteristics:

Product Owner

A Product Owner has many responsibilities as following:

Maximizing value, creating Items in the Product Backlog, assigning value to the Items, ordering the Items, explaining the Items to everyone (developers/customer/ …), measuring project performance, contacting the customer, etc. Indeed he/she manages the Product Backlog.

In addition, a Product Owner has many characteristics as following:

Owns the Product Backlog, is always one and just one person, not a committee, can be influenced by others, is respected by everyone, can delegate some their responsibilities, full-time or part-time job, can be the Scrum Master or a member of the Development Team at the same time, etc.

If you want to take the PSM I exam, don’t miss the “Scrum Master Training Manual

Scrum-Master-Training-Manual

Scrum Master

A Scrum Master has many responsibilities as following:

Taking care of the Scrum framework, ensuring Scrum is understood by everyone, ensuring Scrum is enacted, helping others to find techniques, may facilitate the events if required or requested, facilitating the team’s decision making, removing Impediments, working with other Scrum Masters, helping the organization to adopt Scrum, teaching time-boxing to the Team members, ensuring the Product Owner spends enough time with the Development Team and stakeholders, promoting self-organization and cross-functionality, etc.

In addition, a Scrum Master has many characteristics as following:

One Scrum Master for each Team, servant leader, a manager (not managing people but managing Scrum process), not a project manager, not a team leader, full-time or part-time job, can be the Product Owner or a member of the Development Team at the same time, etc.

Development Team

A Development Team has many responsibilities as following:

Developing and creating Increments, estimating the Product Backlog Items and tasks, selecting Items for the Sprint Backlog, decomposing selected Product Backlog Items into tasks, measuring Sprint performance and productivity, calculating velocity, resolving team internal conflicts, composing/refining the DoD (Definition of Done), making technical decisions, etc.

In addition, a Development Team has many characteristics as following:

3-9 members, has no titles, preferably full-time, with no sub-teams, autonomous, self-organizing and cross-functional.

 

Scrum School: Empowering Scrum Practitioners

We help people to pass the Scrum.org exams with more confidence

Posted on Leave a comment

Case Study: Cross-functionality is behavior

Cross-functionality is a deep and challenging concept that many people have problem sensing it. So here, we used a case study to explain it.

A few months ago, Scrum School team decided to create a motion graphic to show and explain Scrum effectively. At that time, none of us had the experience of producing motion graphics. To resolve the problem we had three options. First, hiring a new member who had the required skills for creating motion graphics. Second, using a third company to produce it for us. Third, having a volunteer in our team to learn the required skills. Because our need was a case and we did not need it forever, we selected the last option.

After a lot of searches, we found out Camtasia software which was a light and great tool for producing professional motion graphics. Honestly, it was almost easy. So, after watching a few free training videos on YouTube, we started writing the scenario. We used a true story from our real lives. Then we read and recorded the sound. Finally, we assembled all widgets, sounds, and background music together and rendered them.

If you want to take the PSM II exam, don’t miss the “Scrum Master in Depth” eLearning course

psm ii remote course banner

The result was awesome. You can watch the motion graphic on our website home page. Its title is “Very Simple, What is Scrum?

After that experience, our team had a new skill for creating motion graphics. It is a great sample of cross-functionality behavior.

As you can see, cross-functionality is not “as is” state, indeed it is “to be” state within which the team constantly expands its skills throughout the project based on the new learnings and requirements.

To sum up, cross-functionality is a deep concept and behavior that mature Scrum teams play and show well.

If you are a candidate for PSM II or PSM III exams you should learn the above-mentioned concept deeply. Because you will certainly have a few questions about cross-functionality in these exams.

 

Scrum School: Empowering Scrum Practitioners

We help people to pass the Scrum.org exams with more confidence

Posted on Leave a comment

The High-Performance Scrum Team Characteristics

People often ask me how we can describe a high-performance Scrum team. Indeed there is no unique definition for it. So I have decided to share a typical high-performance Scrum team characteristics.

The High-Performance Scrum Team Characteristics

A high-performance Scrum team has the following characteristics:

  1. Team members have learned to deliver value to customers continuously.
  2. They live with high-level transparency.
  3. Team members muscle memories have formed greatly to perform based on inspection and adaptation.
  4. Team members do not compromise with any problems and issues.
  5. They offer help to their colleagues continuously because each team member supposes that he or she is the extreme owner of each task.
  6. They always try to improve development and delivery speed and quality simultaneously.
  7. Not only every team member improves themselves continuously but they help their colleagues to get improved.
  8. The team lives deeply with Scrum Values.
  9. Instead of living by the rules, they make the rules.
  10. The team can release the Increment with just one press of a button through an automated continuous delivery pipeline.
  11. Team members trust each other blindly and respect is in the DNA of each team member.
  12. Mistakes are mandatory and when they are made, they are celebrated.
  13. They help their customers become more successful.
  14. They adhere completely to Definition of Done in all features.
  15. Almost every Sprint, the team reaches the Sprint Goal and sometimes they exceed expectations.
  16. They use feedbacks effectively as a reliable source of learning.
  17. Team has strong courage to make decisions and act. Also, they have the courage to change their decisions if they understand that their previous decisions were wrong.
  18. Team members are highly knowledgeable, autonomous and self-organized and use the continuous improvement in all aspects of their processes and environment.

I have used Mr. Ron Eringa and Mr. Gunther Verheyen blog posts as following to create this article. Special thanks to them.

Evolution of the Development Team

The Scrum Values

Posted on Leave a comment

How a new Scrum Master should join a team?

Making a good relationship with the Team and organization and observing the Team’s dynamics would be the first steps when a Scrum Master join a company.

Join a Scrum Master to a team

At first, she should try to know her teammates one by one. She should share with them her backgrounds, biography, thoughts, and life. Also listens to their backgrounds, biography, thoughts, and life to establish a trust foundation. Also, she should make a relationship with other Scrum Masters in the organization. Asks them about their policies for promoting and adopting Scrum over the organization.
Then she should try to know more about the product, its vision, roadmaps, its customers, stakeholders and technologies that are used in the development process. Furthermore, she should check the CI/CD implementation’s status. How the Team uses the DoD concept and how they live with Scrum Values. Also, she should attend to the all Scrum events as an eager observer to understand status-quo and know these ceremonies’ performance level.
On the other hand, she should work with the Product Owner to know how effective (s)he manages the Product Backlog. Also how (s)he collaborates with customers and stakeholders.
Totally, making a good relationship with the Team and organization and observing the Team’s dynamics would be the main focus. This blending prepares the Scrum Master to start serving the Team to live with the Scrum more effective.

Why Scrum could be a successful way to create high-quality software?

Posted on Leave a comment

Why Scrum could be a successful way to create high quality software?

Creating quality software through Scrum is a fundamental question that many people have. So in this post we explained how Scrum could help teams to create high quality softwares.

Creating quality software through Scrum

Scrum embraces uncertainties of software development

Software development is a highly complex activity, with many uncertainties that are intrinsically part of the work. Every software product or application is a new product, that was never built in the same way before, i.e. with the same requirements, using the same technology, by the same people. Customers don’t know exactly and in every possible detail what they want at the beginning. And, even if they think they do, they likely forced to change their mind; by changes of the market, competitors, or internal strategies.

Software development is a complex work

When mapped on the Cynefin model, software development clearly belongs to the complex category of the model. Complexity is the domain of unknown-unknowns. This requires an empirical approach and emergent practice to harness it. To be successful, it is essential that the applied process makes the unknown-unknowns visible and transparent. Also performing the works through an inspect and adapt approach, called ‘probe-sense-respond’ in the model. Therefore, we need an approach that fits with the explained characteristics to cope with the many uncertainties typical to software development.

Cynefin framework - Scrum solves complex problems

(picture from https://en.wikipedia.org/wiki/Cynefin_framework)

Scrum uses empirical process control

Scrum is an empirical process designed to address complex adaptive problems to harness complexity and uncertainties. It guides the Team in two parallel ways to improve continuously. In Scrum we produce the highest value features in a Sprint while improving the process we apply to create those product features. Scrum lays down boundaries that decrease the risk of developing the wrong features. The rules and the time-boxes of Scrum assure that we collect feedback quickly and timely.

Scrum uses feedback loops

(Picture by Gunther Verheyen – Ullizee-Inc)

ُSprints contain all work which is no more than 4 weeks, so we get feedback from stakeholders based on created increments sooner rather than later. Scrum offers effective inspect and adapt opportunities that allow determining the most appropriate next steps to take, taking into account the latest information on the market, product, customer, budget, etc.

Scrum leads to creating the right thing and thing right

Additionally, you ensure that you’ll create highest value features through Sprint Planning, Team inspect and adapt the Sprint plan through Daily Scrums, get first-hand feedback directly from stakeholders in the Sprint Review and finally improve the development process through Sprint Retrospective, continuously. The Definition of Done makes sure there is a clear and shared agreement of the quality criteria that the product should meet, possibly including passing code quality metrics and non-functional requirements like performance and stability. Consequently, all mentioned concepts and rules help the Team to ensure that they are moving in the right direction and are developing high value and quality software.

*Mr. Gunther Verheyen reviewed and evolved this post. Special thanks to him.