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.