Monday, February 26, 2018

Expectations of Scrum Masters – knowing what important | Supreme Agile

The Scrum Master (SM) is one of the most important roles in the Scrum framework. This framework is created to support the Agile values and principles for delivering high-quality products, while putting the customer at the top of the pyramid. Now, if you have previous experience in this role, you already aware that the Scrum Master is a member of a team. The SM has no formal authority, but it is expected that he will succeed in fulfilling the role.

The SM responsibility is critical to the success of the team in delivering high-quality releases that meets the customer requirements. The responsibility of SM includes: creating a safe working environment for the team, adaption of Scrum practices by the team, removal of any impediments and finally promoting the agenda of Self-Organized cross-functional teams. 

Expectations of Scrum Masters 

Although the Scrum Master performs critical role in the Scrum framework, one still needs to remember the SM needs to perform his responsibilities without formal authority. So the question is...what can we expect from this role..? 

Continues improvement of the process

  • Determine KPI's to measure process improvements (Velocity, Quality Etc.).
  • Continually searching for new ways to improve the process.
  • Continue the Scrum process no matter the challenges.
  • Enable various stakeholders to share their knowledge with the Scrum team to increase the effectiveness of the process. 
  • Assist in to setting global standards for “Definition of Done” (DoD) and “Definition of Ready” (DoR) across teams. 
  • Ensure there is continues improvement in the Scrum team so they can deliver more product with higher quality.
  • Assist stakeholders understand the Scrum process and how its link to product development. 
  • Collaborate with other Scrum Masters’ to improve communication among the different teams.

The Product Backlog 

  • Help the product owner to understand deep technical aspects of the technology/product.
  • Create a template to create stories and tasks that will establish a common language.
  • Innovate with new techniques that will help the PO to manage the product backlog.
  • Help the team to write new user stories (Non-Functional stories in particular).
  • Help the Product Owner to prioritize the backlog stories to maximize the ROI. 
  • Help the team and the Product Owner to prioritize the product backlog.
  • Help the team and The Product Owner to split large stories. 
  • Help the team with the release planning. 
  • Help the Product Owner to understand the technical aspects of the product (Design, Technology, and Dependencies).
  • Help the Product Owner to understand the importance of clear, self-explained, testable, non-ambiguous user stories. 

See The Big Picture 

  • Create a center of knowledge throughout the company (Center of Excellence).
  • Collaborate with every stakeholder on a regular basis, if it can help the team.  
  • Looking for any hidden problems and solving them in the best possible way.
  • Participate in "Scrum of Scrums" meetings to remove impediments.
  • Act as the knowledge center for any stakeholder who requires it. 
  • Help people from different teams to work together, if required.
  • Help the organization to scale scrum with common practices.
  • Guide the team to report to senior management. 
  • Guide the team to avoid pitfalls of other teams.
  • Assist the team to interact with other teams.
  • Ensure there is “power balance” among the different stakeholders (Team, PO and senior management).
  • Help the organization to gain knowledge in Agile through dedicated training and workshops. 

Help the team to grow

  • Being familiar with the teamwork and technical challenges (It's a huge benefit!).
  • Enforces meeting time-boxes while conducting the different scrum ceremonies.
  • Help the team to maintain their tools (Burn-Down chart, Sprint Backlog Etc.).
  • Assist the team to deliver quality deliverables as defined in the DoD. 
  • Reflecting issues to the team through silent observations.
  • Asking the right questions to will help the team to grow. 
  • Provide valuable constructive feedback to the team.
  • Promote the agenda of Self-Organized teams.
  • Help the team to work in a safe environment. 
  • Protect the team to allow continued growth. 
  • Help the team to implement agile practices.
  • Keeping morale high by reflecting success.
  • Help the team to resolve internal conflicts.
  • Remove obstacles that affecting the team. 
  • Coaching Team Members (1:1 coaching).
  • Promote continues improvement process.
  • Helps the team to achieve iteration goals.
  • Educate the team with an agile mindset. 
  • Facilitating scrum events (Start to End).
  • Helping the team to keep their focus. 
  • Promote continues learning process.

Develop an Agile Mindset

  • Promote the agile values (Clarity, transparency, commitment Etc.).
  • Help the team to understand the agile principles and values. 
  • Responsible to train the organization with agile practices. 
  • Promote the agile mindset throughout the organization. 
  • Support organizations and Teams decision-making.
  • Lead with agile innovations.
  • Set personal example.

Sunday, February 18, 2018

Top 10 Challenges faced by the scrum master | Supreme Agile

תמונה קשורה
The Role of the Scrum Master (SM) is very challenging. SM responsibilities include Coaching, Training and facilitating both Agile practices and Spirits.  In this article, I will review some of the challenges faced by the Scrum Master during his day-to-day activities.

Challenge 1 – No Authority

The first thing that we need to remember is that the SM is the facilitator of the team. However, with that being said, the SM does not have any authority as we would expect to see for such important role. In fact, the Scrum Master can be any member of the team. He is a person who has a good understanding of the Scrum Framework and is a good facilitator.

Challenge 2 – Time-Boxing

I think that any SM will agree, keeping the Scrum activities under a defined time limit is just one of those annoying tasks that no one likes to do. As the team SM, it is our job to ensure that the specific Scrum activates timing is kept. We need to limit the time slippage to a minimum.  

Challenge 3 – Role Definition

There is a Hugh challenge explaining the role of the Scrum Master (incl. scope expectations, activities, and responsibilities). I often see lots of misunderstands that arise. This is because some stakeholders in the process do not really understand what they can expect from this role, its importance within the organization and particularly to the team.

Challenge 4 – Management Expectations

There is always a gap between management expectations (relies on old management habits) and new practices that come from an Agile transition.
This makes the life of the Scrum Master really challenging as he needs to protect the team (Especially in the earlier phases of the implementation), while at the same time allowing senior management to take part in the process. 

Challenge 5 – Managing Conflicts

The Scrum Master has the responsibility of managing internal conflicts within the Scrum team and sometimes external conflicts that arise from external stakeholders. It is expected that the SM also have the skill to deal and resolve personal issues that may occur.  

Challenge 6 – Building the team

One of the main Objectives of the Scrum Master is to assist his team to become “Self-Organized/sufficient”. This can be the difference between a successful team and a complete failure. So how challenging is this task? Well, extremely, just think about a group of people that sometimes have personal issues with one another. It is the Scrum Master’s responsibility to assist them to become a coherent, dedicated, goal-oriented team. 

Challenge 7 – Collaboration

As part of the day-to-day activities, the Scrum Master needs to ensure that there is a productive collaboration among the relevant stakeholders. This is especially important between the team and the product owner. This can become increasingly challenging when the Product Owner (PO) is not responsive to the team questions or when decisions are made by the PO without consulting the team. 

Challenge 8 – Leader of change

When it comes to Agile transitions, the Scrum Master is the change agent in the organization and should take the lead role in making the change a reality. This is a massive challenge, especially when the organization is still not ready to embrace the change and to adopt the new practices.  Remember: making a small change is hard enough, but changing the way of work, state of mind and culture of an organization is a completely different story.  

Challenge 9 – Continues Growth

I think that it is a positive challenge that I love to use as an example in my lectures regarding why the SM role is so challenging. This role possesses the responsibility to always learn new ways to improve the personal skills that will be reflected in more efficient and productive way for the organization. For me, more studies that involve both theoretical and practical practices is the key to grow within this role. 

Challenge 10 – Gaining Respect

To be able to be a real servant leader of the team and to be able to lead without authority the Scrum Master has one major challenge and that’s to gain the respect of the teammates. This is the main reason that the best Scrum Masters are the ones chosen by the team and not by the organization. 

Sunday, February 11, 2018

How to Choose A True Great Scrum Master? | Supreme Agile

תמונה קשורה

In Scrum, the Scrum Master (SM) owns the responsibility for the process. During his day-to-day activities, the Scrum Master must ensure the team is following the Scrum Spirit, process, and the different practices of this the scrum framework.  

Selecting a Scrum team’s Scrum Master can be the difference between success or failure of the team’s ability in adopting scrum. Therefore, it is highly important to ensure the selected Scrum Master has the current qualities, Skills, and characteristics. This will assist the team to adapt to the different challenges they will face while adapting the Scrum framework.

In order to assist one to determine the most suitable person lead the team as the Scrum Master, I have prepared a list of Characteristics, Skills, and qualities that a good Scrum Master should have in his armory:


A Scrum Master main responsibility is to assist the team to become better. There is no room for personal glory. This can lead to antagonism from the team members. In addition, he should ensure the enforcement of the process is done with the collaboration of the team. This is the preferred method, rather than enforcing his agenda of how the team should be working.

Problem Solving Skills

One of the main activities of an SM is to remove impediments from the team. The SM should have the relevant skills, knowledge, and experience to remove any obstacles from the team during the Day-to-Day activities. 

A Great Educator  

The SM should have the ability to educate people to be able to work in the Scrum framework. This is not only for the team, but the SM should be proactive and educate many personnel in the organizations. This personnel can be those who either support the process or alternatively want to learn about Agile and in particular Scrum. 

Have the time to do is job 

As part of his Day-to-Day work, the SM needs to observe the team’s performance based on his areas of responsibilities. This includes Communication within the team and outside (PO), providing the environmental artifacts allowing the team to grow, enforcement of the Scrum process, etc.

This is just a partial list of the SM activities, but based on it, we can understand that the SM must be there for the team on a day-to-day basis. There are no magical solutions, the role demands a lot of investment (both within the team and externally)

Focus on the team instead of technical solutions

The SM is not responsible to provide technical solutions. Thus, he does not have to be the most technical person on the team. The main reason is that highly technical people are the team specialists. They will find it relatively difficult to focus on the process and the team. This is the main responsibility related to this role. 

Mastering is Role

I think it is obvious that a Scrum Master should be an expert in his field. A great Scrum Master will always search for new ways to improve his skills, knowledge, and practices. This will help him handle different challenges that will a raise during the Sprints.  

Familiar with the organization

The Scrum Master should understand the organization hierarchy, complexity, culture and who are the key people that can help him to promote the Agile agenda. A scrum master who controls these four organization aspects will become more efficient and effective in his work, simple as that. 

Can Influence Others

It’s very easy, a Scrum Master that cannot influence his team will fail even before he starts. Even though an SM might not have an authority to tell people what to do, he should still have the ability to influence them, based on charisma, leadership, respect, and trust. 

Has a Coaching Personality

The main role of the scrum master is to coach the team and any other stakeholders (Product Owner, Tl’s Etc.) with Agile. A great scrum master has the personality to work with others and coaching them with pleasure and in a way that should help them to grow throughout the process, (the team success should be more important for him than his own success).

Committed to Both the Team and Process

The SM represents both the team and the process. It is his job to ensure the team can work at the highest level and that the Scrum process is enforced. An SM that is not fully committed to both the team and process will simply fail to be the leader as is expected of him.


It is very simple. A great SM must be a well-organized person. This will allow him to handle all responsibilities and day-to-day activities that are crucial to the success of the team. It will enable them to perform their activities at the highest level.


SMs have some important responsibilities as the process enforcers. The bigger challenge is that they need to perform this function without real authority (By definition the Scrum Master is a leader without an authority). A great SM must understand it and always look for new ways (Practices, Tools Etc.) that can improve the team and their chances to succeed with the project goals. 

Self and Keen Learner

As an Educator, Coach or trainer, the SM should set an example for others as a keen learner. That is the minimum expectation that we want to see in the person that has the responsibility to educate people across the organization, even more than himself. 

Familiar with the Human Nature

An SM should be able to remove impediments from the team that affects the team performance. In order to be able to understand the true problems of the team, the SM should know how to read facial expressions, body language. This will assist him to uncover the real problem of the team. Therefore, one of the important skills is the ability of the SM have good communications and relationships (both within the team and externally). This will assist him to promote both personal goals and the team to succeed in performing their work.

Know how to Handle Conflicts

The SM will have conflicts, it comes with the job. This is a key differentiator of a great SM from another other position. The SM understanding conflicts are a necessary part of the team growth. He will, therefore, use conflicts to improve the team and not for showing is abilities. 

Familiar with the product

There is a great advantage in a scrum master that understand the product, let us just review some of the expected benefits:
  • The scrum master can share is experience with the team once they need to make the estimations and commitments.
  • The scrum master can ensure that the team will receive user stories that meet the INVEST standards. 
  • The scrum master will gain a better understanding of the complexity and challenges of the requirements.

Possess a Single Role

The scrum master is a full-time job and therefore need to be treated with the appropriate respect. To be able to do its job with the expected standards; it is highly recommended that the chosen SM will focus on only doing its role without wearing any other hats (A classic example of this issue is a team member that facilitates as both the SM and PO). 

A facilitator

A scrum master must be a great facilitator; as the owner of the process, the SM should support the team to perform in the highest level and to create the environmental variables that will help them to do so. Knowing scrum is not enough, the scrum master should have the skills to resolve a problem that arises in the day-to-day activities and the ability to innovate new ways to help the team to increase their knowledge, practices, and efficiency. 

A Servant leader

The SM should serve the team, PO, the organization, and not himself. He should lead by example (and not by title) and stick with the team during bad and good times. In the agile manifesto, we have a specific principle to describe the idea behind the “Servant” leader:
 "Build projects around motivated individuals. Provide them an environment that supports their needs and trust them to get the job done"

Monday, February 5, 2018

The Scrum Estimation Meeting | Supreme Agile

תוצאת תמונה עבור ‪scrum estimates‬‏

I will start with one simple clarification about this meeting and will say that it is NOT an official scrum event, now that it’s on the table, we can move forward and explain why this meeting can be a great addition to your team.

So, what is the meaning of the "Estimation" meeting…? Well, this meeting is created to fulfills some major goals that will allow the team to increase the effectiveness of the planning meeting, these goals are:
  1. The team members will gain an earlier familiarity with the user stories of the next sprint.
  2. The team members will acquire the necessary information about the scale of the expected work.
  3. The team members will get the chance to assess the range of activity and effort that is needed to deliver the list of stories.
  4. The team members will have the chance to reduce the amount of time spent during the planning meeting of breaking down the stories.
  5. Based on the tea inputs, New Stories can be added, modified and large stories will break down into smaller items.

Who should participate? 

The meeting stakeholders are the product owner (PO), the Scrum Master (SM) and the team. 


Same as any other meeting in the scrum, this meeting is also timeboxed for a specific amount of time. based on my experience this meeting should be restricted to 60 minutes to really allow the team to become familiar with the stories and for the product owner to make the adjustment in the product backlog

The Frequency and When 

In two weeks iteration, we will schedule this meeting once at the end of the first week (Usually day after the refinement meeting) and once again in the following week. Now, this suggestion can be modified based on the maturity of the team and the readiness of the product backlog. 


You can run this meeting with the different steps that may change between one team to another, but the bassline that always worked for me is as follows: 
  1. The scrum master will schedule the meeting and invite the relevant participants, the invitation will include the meeting agenda, location, and goals.
  2. Once everyone has arrived, the product owner (PO) will review the TOP prioritized stories that represent the candidates of the next iteration which need to be estimated by the team.
  3. The team will ask the product owner the necessary questions to retrieve the missing information that will help them to estimate the stories
  4. Once the team gains the necessary knowledge, they will start to estimate the stories (Relative or Absolute estimations based on what is more suitable for the team).
  5. Based on the team inputs, the product owner will update the product backlog accordingly. 

Action Items 

As I already described in the paragraphs above, there are some great outputs that we can generate by running this meeting:
  1. The product backlog has a better prioritization.
  2. User Stories are created, modified and removed.
  3. User stories that contain a rough estimation.
  4. User stories with written tasks (Not Estimated!). 

Thursday, February 1, 2018

Timeboxing in Agile | Supreme Agile

תמונה קשורה 

An agile project depends on a repeatable period of time called "Timeboxing", A timebox is an agreed and limited box of time that is used by a person/team to perform a dedicated activity. Now it's easy as its sound, once the Timeboxing is agreed and set, the team/person will work to complete a goal within this time, once the time limit Is reached the work is stopped (The team is not allowed to continue and the work is stopped) and evaluated against what was accomplished until now. 

To understand the real meaning of a timebox, we must first see the full picture of an agile project that is based on less upfront planning which makes is more adaptive but very not predictive. Now, to get a high level of productivity, an agile project needs to use a predictable schedule with small repeatable time-boxes. 

To demonstrate this point, let’s take an example of a project that has 100 units of work that the team need to deliver, now based on the team velocity (Average work units that the team can forecast to deliver per iteration) the team can handle 5 units per two weeks (Which is the timebox of the sprint). So, if the team can deliver 5 units per timebox of two weeks, we now can predict that the entire project should end after 20 sprints which allow the organization to increase the predictability of the project.

Types of time boxes

There are two important types of time boxes that can help us to understand what can be done when the team arrives at the end of a time box.

Soft Timbox

The first type called "Soft" time box, when a soft time box ends, there should be a conversation about rather the team can continue to work on a task until completion (sometimes it's worth it).

Hard Timbox

The second type called "hard" time box, when a hard time box ends, there is no room for any discussion and the team should stop their work without any coloration to the remaining work that needed to be done for completing an item.  

Timeboxing in Scrum

So, I already explained how we can use timeboxing to increase the predictability of a project based on the iteration length, but timeboxing is used in many other locations in scrum:

Daily Scrum meeting

This meeting is timeboxed to 15 minutes for each 24-hour period, during this meeting, the team can focus on the iteration goal, synchronize, and talk about the impediments that should be handled.

Sprint Planning

The sprint planning meeting is timeboxed at 2 hours for a one-week sprint and may go to 8 hours for a one-month sprint. During this meeting, that team will set the sprint backlog and spring goal.

Sprint Review

The sprint review meeting is timeboxed at 1 hour for a one-week sprint and may go to 4 hours for a one-month sprint. During this meeting, the team will demonstrate the completed work and will get feedback for the quality of their work and to update the PB accordingly.

Sprint Retrospective

The sprint planning meeting is timeboxed at 45 minutes for a one-week sprint and may go to 3 hours for a one-month sprint. During this meeting, the team will identify the areas that need to be changed to allow the team to perform at the highest level.

Timeboxing and its benefits

Motivates the team

Timeboxing is a great mechanism to improve team motivation, the idea of providing the team a hard deadline that specifies the end date of each ceremony/sprint will help the team to concentrate and focus on the main goal instead of a reduced sense of urgency regarding the completion of the work.

Improves predictability

Timeboxing improves the organization's ability to predict what will be the expected results at the end of the sprint based on current team progress for a specific time. This will not allow the organization to get clear and accurate results each time but can provide a good idea of what can we expect to receive at the end of the working cycle. 


Increase focus

Timeboxing will help the team to remain in focus regarding what they need to do to achieve the iteration goal. Because the iteration is limited in time, the team knows that there is no time to waste on some unnecessary activities that may affect their ability to deliver their commitments on time.

Protect the team

How can timeboxing actually benefit the team? Well, it’s simple, timeboxing allow the team to take the amount of work that they can actually deliver at the end of each iteration without taking over commitments that can affect their ability to succeed.

Clarification of Time

Timeboxing is a great method for both the team and organization with clarification of time remaining and time that is already spent per iteration.

Clarifies progress

We can use timeboxing to determine the work progress of the team throughout the iteration, this is simple, all we need to do is to see the work done until specific moment and compare it to the preliminary expectations. 

Tuesday, January 30, 2018

Ground Rules for Scrum Ceremonies | Supreme Agile

תמונה קשורה

In this article, I will share some basic guidelines, Tips, and suggestions that will help scrum teams to increase the efficiency of their scrum ceremonies.

The Bread and Butter of all ceremonies

  • All ceremonies should include the relevant stakeholders.
  • All ceremonies should be made in a safe environment.
  • All ceremonies should start on time and End on time.
  • The scrum master is the facilitator of all ceremonies. 
  • All ceremonies are Time-boxed.

The Preparation Phase

The preparation phase is mostly owned by the scrum master, as the facilitator of the team, the scrum master should ensure the following: 

  1. Start with the basics and ensure that the meeting time and location is agreed by the team.
  2. Ensure that the meeting room contains all resources (Connection to the team Backlog, projector Etc.) and materials that may be used throughout the meeting. 
  3. The invitation should be sent to a list of stakeholders who are required to be presented at the meeting, the invitation should be sent a few days earlier to the meeting to allow a proper preparation. 
  4. The invitation should include some basic details such as the Purpose, agenda, and goal of the meeting to remove any unnecessary questions.
  5. Ensure that the participants "Approved" or "Declined" the invitation.
  6. Depends on the type of ceremony, ensure that each team member is ready to present share is part. 

The Facilitation of the Meeting 

The facilitation phase is owned by the scrum master, as the facilitator of the team, the scrum master should ensure the following: 
  1. At the start of the meeting, the SM will present the agenda.
  2. At the start of the meeting, the SM will present the meeting goal.
  3. The SM will be present during the entire ceremony.
  4. The SM will ensure that the meeting agenda is kept without any deviations. 
  5. The SM will ensure that each team member will get the chance to share is inputs. 
  6. The SM is not allowed to get involved in team discussions. 
  7. The SM should ensure that the team will remain in focus.
  8. The SM will capture critical aspects that arise during the meeting and share them with the team.
  9. The SM will ensure that there are no external interfering that may distract the team.
  10. The SM should write down all inputs gathered by the relevant stakeholders. 

Action Items based on Output 

  1. The SM must ensure that the meeting results be clearly communicated to the team or any other relevant stakeholders. 
  2. The SM must ensure that the product backlog is updated based on feedback.
  3. The SM should update the impediments board based on items gained by the team. 

Sunday, January 28, 2018

Scrum Master - A Leader without an Authority | Supreme Agile

תוצאת תמונה עבור ‪authority‬‏

The role of the scrum master possesses some major responsibilities such as team empowerment, Scrum coach, and the process enforcer. So, once we need to choose a nominee to be the scrum master, we need to search some basic characteristics such as creative mind, Leadership, people person and more. But wait a moment, what about authority? How can it be that the person whom responsible for so many aspects of the project does not have to be authoritative?

Well, back in the old days the authority was one of the job requirements, but the reality of the scrum master day to day work taught us that this characteristic is not needed as we thought before (although it can be helpful in some occasions). The main reason for that lies in the spirit of the scrum that assumes that each person has a natural creativity, the ambition to succeed and the power to act. We need to remember that the scrum framework embraces these attributes by motivating its members to act without pushing them with authority (like we saw in traditional models), here are just a few examples that can explain why the scrum master can lead without a real authority:

  1. Scrum motivates people by allowing them to share their thoughts while creating a constructive ground that avoids criticism (We can criticize ideas, but not people).
  2. The team is responsible to decide the amount of work that can be done per sprint (There is no other authority that can decide for them).
  3. Scrum provides a solid ground for any person to do is job without using micromanagement that affects people motivation.
  4. The scrum framework uses few specific ceremonies that allow the team to work together to increase the efficiency of their work and also to present the work they did in the last iteration.
  5. In scrum, team members take an active part has decision makers that allow them to get a real understanding about the big picture that increases the natural motivations that makes them more committed to accomplishing their goals (There is no need to use any authority).
  6. The Scrum framework helps the scrum team to increase their visibility for both internal (Other teams, Senior Management Etc.) and external resources (Customers).
  7. Scrum embraces team collaboration that increases the coordination among its team members.
  8. In scrum, we use short development iterations that help the team to remain focused on a few specific tasks.
  9. Scrum motivates its employees because it's allowing them an equal chance to affect the process.

Wednesday, January 17, 2018

Scrum Master (SM): A Practical Approach | Supreme Agile

The scrum master role contains many theoretical descriptions that do not provide an  answer to the basic question of “What is the Day to Day activities of the scrum master?”

In this post, I will provide a short checklist that will try to answer that basic question while examining few of the main ceremonies and artifacts of the Scrum framework.

Retrospective meeting

The retrospective meeting allows the team to determine new ways to create continues improvement of the process, the scrum master responsibilities: 

  1. Ensure that all team members will raise any issues that they had in the last sprint.
  2. Suggest work cases/events that can contribute to the open discussion.
  3. Ensure that the meeting will not transform into “Blaming” meeting
  4. Ensure that the team understands the importance of this meeting.
  5. Search for new techniques to make the reporting more effective.
  6. Ensure that every team member will have the chance to speak.
  7. Ensure that all issues from previous meetings are fulfilled.
  8. Suggest new formats of retro. 

Review (A.K.A: Demo) meeting

The review meeting is held at the end of each iteration to review the work done by the team (according to the DoD) and to adapt the product backlog accordingly. The scrum master is responsible for the following activities:
  1. Ensure that the product backlog reviewed and adapt based on the PO requirements.
  2. Ensure that the team can answer any questions regarding the uncompleted stories.
  3. Ensure that the team is ready to present the work they accomplished.
  4. Ensure that all stakeholders presented.

Product Backlog Refinement (A.K.A: Grooming) Meeting
The product refinement meeting used to validate that the product backlog is in good condition, prioritized and ready for the next planning meeting, the SM activities are:
  1. Validate that the PO receives all answers from the team regarding technical stories.
  2. Responsible to write and follow-up all questions raised by the participants.
  3. Validate that the meeting participants are familiar with the meeting goals.
  4. Raise ant issues raised by the team regarding stories prioritization.
  5. Validate that all questions from the previous meeting are answered.
  6. Validate that the product owner is ready for the meeting.
  7. Validate that the relevant stakeholders are participating. 

Activities during iterations (A.K.A: Sprints)

The scrum master will perform some basic but critical activities that will determine if the team will run an effective iteration or not, these activities include the following:
  1. Responsible to increase the communication and knowledge sharing among the team members.
  2. Responsible to validate that all stories and tasks updated based on team progress.
  3. Ensure that the team enforces the scrum rules during the different scrum activities.
  4. If necessary, the scrum master provides technical assistance for team members.
  5. Clearing any impediments from the team that can affect the iteration goal.
  6. Sent invitations to the relevant stakeholders for scrum events.
  7. Ensure the required stakeholders will present at meetings.
  8. Lead the team by example.
  9. Build training session and any other learning activities that will increase team knowledge in scrum. 

Planning Meeting

The planning meeting used to determine the work capacity, team commitments, and the sprint goal, the scrum master activities focuses on:
  1. Help the team to understand if there any major risks that can affect their commitments.
  2. Help the team and the product owner to establish a clear goal for the upcoming sprint.
  3. Help the team to make an efficient task breakdown.
  4. Help the team to understand when they need to stop/Take commitments (Based on the team velocity, Capacity and the complexity of the user stories).
  5. Help the team to bring any technical resource (Expertise) to provide technical information that helps the team to make a more accurate estimation.
  6. Help the team with task prioritization.
  7. Prior to the team to take their next commitments, the scrum master should provide the team “Velocity” and “Capacity” metrics.
  8. The scrum master can use is technical skills to help the team with any questions raised during the task breakdown.

Daily Standup A.K.A Daily scrum) Meeting

The scrum daily meeting designed to allow the team to synchronize about the work progress and to make sure that all team members are focused on the iteration goal, the scrum master activities:
  1. Ensures that each team member provides the full and true information about its progress.
  2. Validate that the iteration burn-down chart reflecting the real work progress of the team.
  3. Validate that all open questions from the previous meeting are answered.
  4. Validate the product backlog PBI’s updated based on the team answers.
  5. Ensures that each team will speak during the time limit of 2-3 minutes.
  6. Stop any member that is not come prepared for the meeting.
  7. Remove all impediments that raised during the meeting.
  8. Ensure that the meeting conducted on a daily basis.
  9. Validate that the meeting starts and end on time.
  10. Validate that there will not be any electric devices that can affect the focus of the meeting.
  11. Ensures that team members will not use the meeting to resolve technical issues (in that case, the SM will take this issue offline).
  12. Remove interruptions from other stakeholders that arrive at the meeting (Product Owner, Managers of other teams Etc.).
  13. The SM should validate that team members will not report to him; this is not a reporting meeting! 
  14. Validate that team members are participating and share their insights based on the meeting agenda.

Thursday, January 4, 2018

Who is the worst enemy of an Agile implementation | Supreme Agile

You have selected your new scrum masters, and they are ready to do their job as key stakeholders in your scrum teams. The project starts and everything looking great, the ceremonies are happening, the team works as a single unit, the velocity increase per iteration, so we can say that the team performs at the highest level. Then, without an early notice, the impediments are starting to raise and affect the team ability to keep the same performance as they succeed to do until now. Well, what can we do...? It is the Scrum Master time to step up and help the team to remove those impediments that affecting their work; this is probably the highest priority of a scrum master that need to ensure that the team can perform at the highest level.

“A manager's most important work is helping the people doing the work. Give them a goal and let them work. Remove any impediments that get in their way. Do anything that may make them more effective or productive. Then the organization can capitalize on the fruits of their work.” KEN SCHWABER

Impediments, what does it means?

Prior to reviewing the different types of impediments that may arise during an agile project, we first need to understand what an impediment is. The dictionary value of “impediment” described as “something that makes progress, movement, or achieving something difficult or impossible:”

And if we want to see how the formal definition is related to agile, we can use these specific definitions (There are more, just run a quick search on google :) ):

  • "A hindrance or obstruction to doing something. Frequently used to describe some issue or blocker that is preventing a team or organization from performing Scrum in an effective way."
  •  “An impediment in Scrum is a factor that blocks the Development Team in its creation of a valuable piece of software in a Sprint, or that restricts the team in achieving its intrinsic level of progress.”

Knowledge is power

In scrum, impediments can come from different areas and in all shapes and sizes, therefore, there is a Huge importance that the scrum master which responsible to remove them will have the relevant knowledge and familiarity to handle them.

Let us review some of the most common impediments that arise in almost any project:

Unstable builds

The scenario goes something like this, the team created a great sprint backlog and they are ready to conquer the world, the progress is great and suddenly the build is corrupted due to 1000 reasons, what should they do now? Well, you guess it right; the scrum master should ensure that the team would get a working build by promoting it with the CI team as the highest priority. 

Process Issues

In some scenarios, the team should work when the process is not fully implemented or implemented inappropriately.  The impediments in that area related to all issues that related to the process and affect team able to do their job. Examples:
  • Integration between teams not defined, and cause bottlenecks in the day-to-day work.
  • Missing ceremonies or technical knowledge to perform them.
  • Scrum masters/Product Owners that do not know how their role.
  • Key Stakeholders are not contributing to the process as they supposed to do.
  • The team does not know how to estimate that work prior to taking their commitments. 

Blockers for a user story

User stories are planned and committed at the start of the iteration, but they cannot predict which problems may arise once they start to work on it (Risk Assessment is one way to increase the percentage to try to predict it). Blockers can arise from both external and internal locations; the scrum master responsibility is to ensure that those blockers removed to allow the team to continue their work.

Lack of technical knowledge

In some cases, the team needs to deliver stories that they just do not have neither the experience nor technical knowledge to handle them. The scrum master responsibility is to ensure that the team will get the missing knowledge that they will need to handle similar challenges. Few Examples:
  1. Ensure that an expert will attend the planning meeting to share his knowledge with the team.
  2. Add another member to the team that can balance the necessary knowledge and experience needed to handle similar stories.
  3. Provide technical training for the team in areas that they do not have the necessary knowledge.

The process is not enforced

There are just too many examples of impediments that arise from this area; the scrum master responsibility is to ensure that the organization will follow both the scrum process and its spirit.

Technical debt

I hate this one, technical debt is a situation where the team cannot take new stories until they succeed to remove the technical debt that they allocated until now. A great scrum master will analyze the reasons that led to this situation and will make the necessary actions to reduce this debt and in some cases even to remove it completely (Automation, Automation, and automation!).

Negative Approach

There is always that person who thinks he knows everything and based on his knowledge, agile is a complete waste of time, and therefore he is not willing to be committed to the process. Now, because agile based on self-Organized teams that work together to achieve a common goal, such team members that possess a negative approach may affect other team members similar to a bad apple in a basket. 

Sickness of a team member

You base the team commitments based on two major factors, the first one it the team velocity and the second one is the team capacity. Now, you know these two factors at the start of the iteration, but you cannot predict how the capacity would change once you start the sprint and one of your team members will not arrive to work for one, two or maybe an entire week.

Now, there is nothing that you can do here, sickness of a team member is not something that you can forecast, but a good scrum master will become aware of this impediment and will help the team overcome it by involving the PO and the team regarding the work that they may unable to deliver as they intend to do at the start of the sprint. 

The physical working Place

The physical working Place should allow the team to perform at the highest level, if that’s not the case, it is the scrum master responsibility to ensure that the team will get the most suitable physical working Place that will help the team to maximize their abilities.

Unstable working environment

Working environment includes impediments that arrive from the hardware, software, and tools that the team needs to use to perform their work. it’s the scrum master responsibility to ensure that such impediments will remove soon as possible due to the massive impact that they may have on team progress.

External interruptions  

The team performs a daily meeting and suddenly a manager of another team arrives and start to interfere with the meeting agenda, sounds familiar? Therefore, in that case, it is the scrum master responsibility to ensure that the team will not suffer from unwanted interruptions that come from external resources.

Common questions regarding impediments

Question: Can the team start a sprint with impediments?
Answer: Yes, as long that there are no critical impediments that entirely blocks the team. 

Question: What do the team should do in the case that there are many impediments?
Answer: Continue to work on other user stories until the impediments removed by the SM, in any case, that the team cannot show a real progress, they can set a meeting with the PO to review current progress and expected deliverables.

Question: Who should fix an impediment?
Answer:  The most suitable stakeholders (Engineer, Product Owner Etc.) that can remove the impediment as quickly as possible.

Question: Can an impediment stop the sprint
Answer: In rear cases yes it does, for example, The sprint based on an external supplier that does not available for the team and therefore the team cannot proceed. 

Question: What is the SM responsibility regarding impediments?
Answer: I already explained it, but the SM should summarize, tack and ensure that the relevant impediments removed. He can do it by using other stakeholders or do it directly (Pending is own set of skills).

Question: Who responsible to determine the prioritization?
Answer: The team has the best knowledge about which impediments are more crucial for them and therefore should have the responsibility to share it with the team SM. The SM has the responsibility to ensure that the team will do the ordering and the reporting. 

Question: What are the main factors used in the prioritization process?
Answer: The basic factors that I love to use are as follows;
  1. The Amount of risk by Removing/Not-removing the impediment
  2. Effect on the iteration goal
  3. Impact on team motivation
  4. Impact on velocity

Questions to consider prior to handling impediments

So, as the servant leader of the team, the scrum master should be responsible to remove any impediments that affecting the development team’s progress. Now that we say the obvious, let’s remember that the scrum master as another critical responsibility to create a self-organized, cross-functional and committed team, by removing impediments that the team can resolve themselves the scrum master can actually create more damage than a real benefit.

Therefore, now that we understand these two major responsibilities, we need to understand how the scrum master should react to impediments that arise from the team and what are the questions he should answer prior to automatically mitigate them.

My suggestion is to follow these set of 10 questions:
  1. Is the described impediment is the symptom of a bigger problem?
  2. Is this impediment describe the real problem? Is it contains all the relevant data?
  3. How this impediment affect team progress?
  4. Is this impediment must be removed at current sprint compared to other impediments?
  5. Do we really need to resolve this impediment?
  6. What is the Risk of not removing this impediment?
  7. Can the team resolve this impediment without the help of the SM?
  8. Can we use this impediment as a guiding example for the team?
  9. Is this impediment relevant to an internal conflict between team members?  
  10. Is it really an impediment…? 

What tactics can the SM use for removing impediments?

There are some basic tactics that the scrum master can use to handle impediments, let’s review some of the most commonly used tactics: 

Keep the Active approach

In most cases, the impediments raised during the daily scrum meetings as a key part of the meeting agenda; this is good enough in most cases, but sometimes it can be too late. An active approach of an SM can find these impediments even prior to the meeting. Remember that the scrum master is part of the team and therefore can see impediments that affect team performance without the need for the team to report it.

Ask the right questions

Not all the reported impediments indicate for a real problem; sometimes team members can raise an issue as an impediment without even trying to resolve it. Therefore, once the SM understands it, he should ask the team a set of questions that will allow them to understand what they can do to resolve this issue by their own and without waiting for him to do it for them.

Impediments as an advantage for improvement

For me, this is what differentiates great scrum master from the mediocre once; a great SM can take impediments and use them as an advantage for educating and promoting team knowledge.

Give the Tools instead of a quick solution

The scrum master should provide the team with the necessary tools to handle the same future impediments without the need to wait for him, once he succeeds; team members can resolve their own problems and reduce the bottlenecks through the sprint. 

Mitigate the Root Cause

This is similar to any other RCA process where the investigator should not resolve the symptoms but instead should drive to find the real root cause that led to this symptom. Remember that resolving a symptom without resolving the real Root Cause will most likely not prevent from the same impediment to rise again in future iterations. 

Increase transparency and continues improvement

There is a major benefit in showing what, where the impediment that affect team performance throughout the iteration, therefore the scrum master should document the number of impediments that were raised, how they affect the progress and what was done to remove them.

Prioritize first

I think that anyone that was part of a scrum team will agree that in most cases there are many impediments that arise per iteration and especially in new teams and large complex projects. Due to this reason, there is a major importance of the scrum master to prioritize the impediments prior to run and resolve them. My suggestion is to consult with the team regarding which items are more important and always compare it to the iteration goal (High priority is given for impediments that affect the team’s ability to meet it). 

My Presentations