Secret ingredients to quality software

Rules to Better Scrum - 55 Rules

Learn more about Scrum with Azure DevOps and GitHub.

  1. Everyone who will be involved in Scrum (pigs and chickens alike) should have read and understood the Scrum guide.

    Understanding the concepts of Scrum is easy; implementing it is hard!

    Figure: It's handy to know who the pigs and chickens are. The word "commit" and this silly chicken and pig story, were removed from the Scrum Guide 2011.

    Everyone should:

    1. Read the Scrum Guide.
    2. Take the Scrum Open assessment and get at least 75% to be “Certified Scrum 1”
    3. Watch the awesome video: 'Scrum in 10 minutes'

  2. Is working as a team all it is cracked up to be?

    It's a well known fact that a good team of 3 people will output more than 3 people working on their own. As well as that, the team members will find it more rewarding as well.

    The best sum up of this was by famous Wallaby player, Ben Darwin, who said:

    I found the hardest issue of all was that I missed my friends, basically, and that's what I told them when I gave them the jersey for the final. I just missed the 14 guys. There's a feeling that comes in sport, particularly in team sport, where we say we feel jealous of the wages of individual sportspeople but never jealous of the lack of team. When you finish a game of football and you've played together and you walk off with the other 14 men, the guys on the bench, and you've overcome an opposition, you don't have to say anything to each other. You can simply look your fellow man or other player in the eye, and he knows you helped him , and you know how he helped you . That's enormously satisfying, and I haven't found that anywhere else in life.

    Darwin Ben Darwin speaking on how, after breaking his neck in a scrum, he was forced to quit being a Wallaby and rejoin normal society.

    We can see examples of this in nature as well. For the Antarctic Emperor Penguin, cooperation is the key to survival. Every winter thousands of male penguins huddle together to share warmth. The birds on the most exposed side of the huddle gradually move down around the huddle to the more sheltered side. This means that each bird spends some time exposed to the full force of the Antarctic winter, but then gets its fair share of warmth in the middle of the pack. These clever birds understand that by taking turns and enduring discomfort in the short term, their chances of success (survival) greatly increase.

    It is essential that in order to be a contributing member of a successful team, you are willing to put the good of the team over your own interests so that everyone can benefit in the long term.


    Note: If this beautiful story is not up your alley you will prefer a similar example of working as a team by the IT Crowd

    **Tip: Leverage Existing Organizational Experience and Learn From the Best.** Does your company have a ‘super star’ team? If so, why not ask to sit in on one of their meetings, or take a few of their team members to lunch and ask them for advice on increasing your own team’s performance.

    Suggested questions to ask the experts:

    • What do you define as success?
    • What are the things that you do not worry about?
    • What practices do you believe lead to your success as a high performing team?
    • Do you have defined/document practices and procedures that you follow?
    • What tools do you use that contribute to your effectiveness?
    • What metrics do you use to measure your success ?

    With the rest of your team, prioritize the feedback you received and select a few key items that you can implement right away.Make a backlog from the feedback you received, set some goals and start your team on the road to being ‘Superstars’ too.

  3. Do you know the 8 Steps to Scrum?

    Scrum is easier than it seems, we'll explain how in these 8 simple steps.

    8 steps to scrum
    Figure: This Scrum image includes all the important steps from the Initial Meeting to the Sprint Review and Retro

    Print out the SSW 8 Steps to Scrum PDF and put it on your "War Room" wall.

    1. Initial Meeting

    In the Initial Meeting, the Product Owner explains the product vision. The Developers think about the Architecture needed and how long they will need to come up with an estimate.

    2. Backlog Construction

    The next step is Backlog Construction, also known as a Specification Review. The Developers propose a high-level software architecture and a to-do list called the Product Backlog. The required features are broken down into Product Backlog Items (PBIs for short).

    These PBIs are estimated and, before a dollar figure is presented, a buffer is added for generic tasks such as DevOps, Testing, Bug Fixes, Project Management, etc.

    This is also when the Product Owner 1st defines the Product Goal (aka the "why" of the project), although this can and should be refined throughout the project.

    A quick note, there are only 3 roles in a Scrum Team, The Product Owner (the boss), the Scrum Master (a kind of project manager), and the Developers (who do the work).

    3. Sprint Planning

    The Sprint Planning session is for the Developers to focus on the subset of the Product Backlog that they think they can complete in the next Sprint, (which is most commonly a 2-week time-box).

    The Product Owner puts the PBIs into priority order and makes sure the top ones have enough detail to be worked on. The Developers then pulls PBIs from the top of the Backlog and commits to delivering as much as they forecast they can, in the coming Sprint.

    The Developers and Product Owner together then define the Sprint goal, (aka the "why" of the sprint).

    4. Sprint

    The Developers work on features in priority order, having done a Daily Scrum and sending 'Done' emails once the 'Definition of Done' is met. A task board is often used. During this process, the team also refines items in the Product Backlog to ensure they conform to the 'Definition of Ready'.

    5. Product Increment

    Each Sprint is a potentially shippable Product Increment, and with good DevOps, including automation of deployment and testing, this can be done on a "PBI by PBI basis. This means each feature worked on can be in production as soon as it is finished.

    6. Product Feedback

    Product Feedback will then come in. Some will be bugs, and some will be small changes that can be added to the current Sprint. Other suggestions should be approved by the Product Owner and then added to the Product Backlog.

    7. Sprint Review

    At the end of the Sprint, there is a Sprint Review, where the Developers demo or play done videos of the completed PBIs. The goal is for the Product Owner to understand the increment and to discuss the feedback to make the product better. This is the real measure of success of the Sprint.

    8. Sprint Retrospective

    Lastly, there is the Sprint Retrospective, and this is the best part! The Scrum Team discusses what went well, what didn't, and what to improve, always inspecting and adapting.

    From here, another Sprint Planning session commences, and the wheel keeps turning, getting better and better with every revolution.

  4. The Scrum Master (not ScrumMaster), must schedule the Sprint Review, Retrospective and Planning meetings.

    Estimate how much time each meeting will require, then schedule a single calendar appointment to cater to the three meetings. When scheduling the calendar appointment, keep in mind the following:

    • Ideally, each of the three meetings should be time-boxed to an hour for every week of their associated Sprint.
    • This timeboxing does not mean the whole time will be taken up, just that you should not let the time for each meeting be exceeded.
    • With the Product Owner's help, the Scrum Team will need some time to update the Product Backlog after the Retrospective and before the Planning meeting.
    • People need breaks.
    • The Sprint officially finishes at the end of the Sprint Retrospective meeting. The Sprint Planning meeting marks the beginning of the next Sprint.
    • These meetings do not necessarily have to be held on a Friday or Monday. You can have a Sprint start and end on any day of the week. Mid week meetings are recommended so that the likelihood of it occurring on a public holiday long weekend is minimised.
    • Since these meetings will occur every Sprint - set a recurrence on the calendar appointment (every 1, 2, 3, or 4 weeks) so that people have the time blocked out well in advance.

    Tip: It can be helpful to finish the Sprint Planning meeting with the first Daily Scrum

    Schedule the meeting and invite the Scrum Team and any interested stakeholders.

    Figure: Good Example - copy this appointment template and send to the Scrum Team

    Screen Shot 2020 04 06 at 4 15 50 PM
    It is a great idea to run your Scrum meetings through Microsoft Teams, so that the whole team is invited and new developers can easily find the meetings

    See Meetings - Do you know when to send an Appointment or a Teams Meeting? for more information.

    In Scrum, there are 4 meetings in total that you need to know about:

  5. Prior to your meeting with the customer you should prepare. Get your Sprint Planning (was Release Plan') email ready, so after the meeting you can adjust and promptly send it.

    Learn how to create your Sprint backlog:

    Once the backlog is ready, you should send the Sprint Forecast email to the client.

  6. Each sprint has a "Sprint Forecast" email that details what will be worked on during this sprint.

    At the end of the sprint, this should be replied to with a "Sprint Review" email that shows a breakdown of what was completed.

    Each Sprint has the following stages:

    1. Planning meeting

    2. Work in progress

      • "Done" emails are sent asking for specific functionality to be tested
      • See Rules to better Email for details
    3. Review and Retro meetings

  7. The work to be performed in the Sprint is planned at the Sprint Planning meeting. At the Sprint Planning meeting, the following three questions are answered:

    • Why is this Sprint valuable?
    • What can be delivered in the Increment(s) resulting from the upcoming Sprint?
    • How will the work needed to deliver the Increment(s) be achieved?

    Why is this Sprint valuable?

    The Product Owner proposes how the product could increase its value and utility in the current Sprint. The whole Scrum Team then collaborates to define a Sprint Goal that communicates why the Sprint is valuable to stakeholders.

    What can be delivered in the Increment resulting from the upcoming Sprint?

    The Product Backlog is examined and the Product Owner makes changes so that it is prioritised with Bugs prioritised amongst Product Backlog Items (PBIs).

    The Product Owner is then asked to group the top ranking Bugs into PBIs for inclusion in the Sprint; see this rule.

    The Team are then advised of their resourcing for the Sprint as there may be additions, subtractions, leave or public holidays which are different to the previous sprint. Considering their previous record and their current resources, The Team decide on the number of story points that they will deliver in the forthcoming Sprint. When The Team are not currently co-located this is often done by voting, and discussed until consensus is reached.

    The Team then size (assign Story points to) PBIs starting at the top until there are more than enough PBIs to fill the Sprint.

    The process of sizing is somewhat formal. Either using cards or IM (essential if not co-located) the team vote privately on the size of the PBI. They can either use T-shirt sizes of XXS, XS, S, M, L, XL, XXL and XXXL or their equivalent number of story points for which we use the Doubling Series of 1, 2, 4, 8, 16 or 32. Once the differring votes are in, the Scrum Master asks the smallest and biggest voters to explain the reasons for their vote. Assumtions and omisions are quickly identified through discussions and the Scrum Master encourages discussion until consensus on the Story points is reached. Any PBI voted at 16 or higher should be broken down into smaller stories; re-prioritised by the Product Owner and re-sized if necessary.

    Figure: A sample PBI based on the Microsoft Scrum process template for Azure DevOps

    Once enough stories are sized, the Product Owner is given the opportunity to re-prioritise now knowing the relative sizes. If more PBIs need then be sized then they are. The Scrum Master keeps everything going and facilitates negotiation between The Team and The Product Owner until final priority is confirmed and The team commit to a number of stories and the meeting concludes.

    This meeting should be timeboxed to an hour for every week in the Sprint. However, the Scrum Master must be sensitive to the meeting producing a workable result.

    Capacity Planning

    It is important for Sprint capacity planning to be consistent across all teams. As such, there should be consistency in how many story points you allocate to a Sprint. It's unreasonable to think that someone will be able to work productively and consecutively for 8 hours straight on a particular task. For example, if a task is allotted a 4 for effort (8 hours), the developer will probably spend about 6 hours coding, and 2 of those 8 hours fixing bugs, communicating, or working on the admin side of things. Even if devs may try to factor these things into their estimation, a 20% buffer never hurts.

    Therefore, a standard 1-week Sprint with 2 resources would have about 32 story points allocated.

    NOTE: This is specifically for the first couple of Sprints in a project, until you get an average velocity that you can use for capacity planning moving forward.

    How will the work needed to deliver the Increment be achieved?

    To answer the second question the team create tasks, with sub-tasks where necessary, for everything that needs to be done to implement the PBI. Every task and sub-task should be given an estimate in hours and the same value placed in the Remaining field.

    No actual work on the Sprint should start until this planning is complete. It is these Remaining hours that determine the first value in the burndown chart which sets the Sprint on its way to completion. There must be no omissions or The Team will start without an accurate burndown and we all know that "The Team is nothing without a burndown".

    The Team should also ensure that the burndown chart is working and will be automatically sent to all members of The Scrum Team overnight.

    The meeting concludes when The Team reports to the Scrum Master that their planning is complete and they are able to display the burndown chart.

    Ideally this meeting is timeboxed to as many hours as there will be weeks in the Sprint. However, this planning is so essential that it must continue to completion outside the meeting if necessary.

    It is not essential for the Product Owner or the Scrum Master to be present for the whole meeting but they must be available for consultation. The Scrum Master should formally close the meeting.

    Once this meeting is finished, the Scrum Master should email the Product Owner with a forecast.

    In Scrum, there are 4 meetings in total that you need to know about:

  8. After the Sprint Planning Meeting, it is useful for the Development Team to send the Product Owner (PO) a Sprint Forecast for the next Sprint. Doing this helps to improve common understanding in, and sometimes to enforce, the relationship between the PO and the Team.

    This is simply an agreement between the Development Team and the PO for one Sprint and should be confirmed via an e-mail at the beginning of every Sprint.

    “The implementation team agrees to do its best to deliver an agreed on set of features (scope) to a defined quality standard by the end of the sprint. (Ideally they deliver what they promised, or even a bit more.) The Product Owner agrees not to change his instructions before the end of the Sprint.”
    Agile Project management

    Each of the Sprints in a Scrum project can be considered a mini-project that has Time (Sprint Length), Scope (Sprint Backlog), Quality (Definition of Done) and Cost (Team Size*Sprint Length). Only the scope can vary and this is measured every sprint.

    Figure: Good Example - copy this as email template and send to Product Owner

    Tip: Use this Outlook email template

    More instructions are as below:

    1. Go to Azure DevOps and navigate to the current sprint's backlog view. E.g.
    2. Paste to the Forecast email, and format the table:

      • Remove any useless columns!
  9. This is the meeting where the Product Owner accepts or rejects the stories in the Sprint and the Sprint itself.

    The Team, having prepared for the meeting, presents the stories to the Product Owner. 

    One person, often the Scrum Master, presents a summary to the Product Owner of the stories committed at the Sprint Planning meeting and the stories being presented for acceptance.  The Team seeks to have more stories accepted than originally committed.  It is important that the Product Owner knows at the beginning whether The Team believe that they have over or under achieved the Sprint Goal.

    Each story is then presented by the Team for acceptance. They aim to get the Story accepted as quickly as possible (AKA tick and flick) while being totally transparent, which includes declaring whether there are any known outstanding bugs (which should already be on the Product Backlog) and adherence to the Team's Definition of Done.

    Note: If there are additional stakeholders, make sure they are also in the loop and up to speed on the current increment.

    If a Story is accepted, but more work needs to be done, a new Story to cover this work is added to the Product Backlog.  Similarly, if a bug is found during the review, it is added to the Product Backlog.

    If a Story is rejected and returned to the Product Backlog but the Sprint itself is accepted, then a careful decision needs to be made.  If changes have been checked-in to the Sprint's branch then it must be established that these changes have no adverse effect or they must be carefully undone before the branch is merged with the trunk.  For this reason, it is always safer to accept stories with conditions rather than reject them.

    The Scrum Master keeps the meeting on track and to the Timebox by disallowing discussions not relevant to the acceptance or rejection of the story; this is often done by making a note to bring the subject up again in the Retrospective Meeting.

    This meeting is normally time boxed to as many hours as there are weeks in the Sprint.

    In Scrum, there are 4 meetings in total that you need to know about:

    Not doing Scrum?

    Even if your client does not want to do Scrum - they might have had a bad experience - you should still do this step, just under a different name. E.g. "Hey Bob, let’s schedule a catch up on Friday. Then I'll show you what I have done this week".

  10. At the end of every Sprint the Development Team performs a Sprint Retrospective also known as the Retro. The Retro provides an opportunity for the Scrum Team to reflect on what has gone well, what has gone poorly, and what the team wants to change.

    Inspect-and-adapt is a key component of the Scrum framework and the Retro gives Scrum Teams an opportunity to learn from their successes and mistakes.

    The Retro is a time-boxed event that focuses around 3 questions:

    • What went well?
    • What didn't go well?
    • What will we do differently in the next Sprint?

    The Scrum Master facilitates the meeting and collects issues as they are raised. Once every Scrum Team Member has spoken he facilitates debate on each issue so that team consensus is achieved. The result should produce an actionable outcome, for example:

    • An adjustment is made to the daily processes followed by the Scrum Team
    • An adjustment is made to the Definition of Done
    • An adjustment is made at the organisation level
    • An item is added to the Product Backlog

    To help aid discussion it can be useful for the Scrum Master to prepare items for review by inspecting the Sprint Backlog and statistics such as:

    • Velocity
    • the Burndown
    • Code Coverage
    • Number of deployments
    • Number of errors in Application Insights

    For example the Scrum Master can find PBIs (Product Backlog Items) in the Sprint that were successful / not successful and then facilitate the discussion as to why.

    retrospective meeting 1
    Figure: The Scrum Master can inspect the Sprint Backlog for items which are Not Done at the end of a Sprint

    retrospective meeting 2
    Figure: The Scrum Master can inspect the team’s velocity over multiple Sprints

    retrospective meeting 3
    Figure: The Scrum Master can inspect the team’s Sprint Burndown for insight into how work progressed through the Sprint

    retrospective meeting 4
    Figure: The Scrum Master can inspect the team’s Code Coverage to for an insight into code quality

    Once all issues have been discussed to the satisfaction of The Scrum Team, the meeting concludes.

    If the timebox limit is reached, the remaining issues should be recorded and dealt with by the Scrum Master. Any outstanding issues must be raised at the next Retrospective if they are still relevant.

    The time-box for this meeting is usually as many hours as weeks in the Sprint.

    In Scrum, there are 4 meetings in total that you need to know about:

  11. Do you create a Sprint Review/Retro email?

    After any Sprint Review and Retrospective, an email should be sent to all the stakeholders to update them on the outcome from the sprint:

    Firstly, Create a new email copying the information from the previous sprint review/retro. As per, it should include the following:

    Figure: Good Example - Template for Sprint Review/Retro Email. Subject: Sprint xxx Review/Retro

  12. Tight project teams have a Daily 'Scrum' every day at the same time.

    It was once called a 'stand-up meeting' but that discriminates people in wheelchairs.

    It is best to have it standing up, so it's short and to the point. No-one wants to stand around waffling.

    Everybody knows the 3 essential questions:

    1. What did you do yesterday? (and did you update Azure DevOps (was TFS) OR other bug tracking system)?
    2. What are you going to do today? (and my current task on the physical task board has my picture on it)
    3. Do you have any roadblocks? (aka issues/impediments)

    Asking these questions of every team member means no-one can hide and everyone remains connected. Further, you can notice what was promised and what was performed. This enables the team to discover issues quickly and keep abreast of the progress.

    The team's successes and failures are shared, and anyone who knows the answer to someone else's problem can help with a solution, after the meeting.

    Figure: Watch a Daily Scrum at Microsoft (short)

    Figure: Watch a Daily Scrum at Microsoft (long)

    "Great video guys. Remember, it is ok to change Scrum, actually, it is necessary for success. Just adhere to the values of Scrum. " Stephen Forte (Board member

    Follow these essential tips to improve your Daily Scrum meetings:

    Tip 1: Be prepared for the meeting

    Before you join the Daily Scrum, check the Teams group to see what your colleagues have been discussing and working on, and check the portal to confirm the meeting time. If you’re joining a new project or re-joining a previous one after some time away, these steps are important to keep yourself up-to-date and abreast of progress.

    Then you’ll be able to say to your Scrum Master, “I’ve had a look at the Teams group. I am ready to join the daily Scrum.”

    Tip 2: Have your Scrum Master review the Sprint Progress at the end

    At the end of the Scrum, the Scrum Master should review the current burn down to check on the progress of the team.

    Figure: A burndown chart in

    Tip 3: Keep a schedule of the Daily Scrum times on a wall (+ have a recurring appointment in Outlook)

    Figure: Schedule a recurring Daily Scrum meeting in Outlook using this template

    teams meeting daily scrum
    Figure: Or you can use Microsoft Teams

    Tip 4: Keep to the schedule. Same place, same time (and start even if people are missing)

    Get started on time. Especially in the beginning, people will be late, but the meeting should be held with the remaining people. Don't worry. People learn.

    If the Scrum Master is not a full-time member of the team (often they are), they should attend every now and then to check the Scrum process is being followed and the Daily Scrums are being used synchronize the team and not a general meeting.


    • The Product Owner (often the client) is not required at the stand-up meeting. If he wants to turn up, remind him that he has tape stuck over his mouth, so he does not talk.
    • If you are not doing an approved Sprint and doing ad-hoc work, then best if the Product Owner (aka client) attends (see Ad Hoc work).

    Tip 5: Do you update tasks before the Daily Scrum?

    Daily Scrums are more effective when team members arrive when their tasks are already updated.

    See Do you update your tasks before the daily stand-up meeting?

    Tip 6: Don't go into detail

    Keep your answers short and concise. Do not stray from the 3 main questions. Remember to use the "Parking Lot" to record topics to discuss after the Daily Scrum.

    Tip 7: No phones + no checking email. No distractions

    Technology in the Daily Scrum causes people to lose focus on the goal. The goal is for the team to synchronize by sharing what they are doing. Avoid giving people the opportunity to be distracted easily by forbidding email, SMS and mobile phones from the Daily Scrum.

    Tip 8: Use a task board (even better use an electronic one)

    A task board allows people to visualize what the team is talking about.

    Figure: A Task Board from Azure DevOps

    Tip 9: Carry a pen and paper

    Use a pen and paper to jot things down.A whiteboard is also great for "Parking Lot" topics that arise, to be discussed after the meeting.

    Tip 10: Don't let your Daily Scrum become a general meeting - use a "Parking Lot"

    A "Parking Lot" is the place for any discussions that stop the Team from answering the 3 main questions. Only interested people stay for the "Parking Lot" to discuss issues after the Daily Scrum.

    Tip 11: If you have raised impediments, consider contacting the Product Owner

    Often the Product Owner won’t be at the Scrum. However, call the Product Owner if you have an Impediment (aka Roadblock). Communication with the Product Owner is essential and if you haven't touched base with him in the few days, then do so. A disconnected or absent Product Owner is a sign of dysfunction.

    Figure: Call the Product Owner if you have an Impediment (aka Roadblock)

    Tip 12: What to do when you're working for a PO directly

    If you don't have a team, and you're doing ad hoc work for a PO directly, it's best to contact him for the Daily Scrum every day if possible, and follow up with an email. This will keep the 2 of you synchronized.

    Tip 13: How do you enter scrum meetings into your timesheets?

    Once you have completed your stand up, add “S” to your timesheet as per Rules to Better Timesheets.

    Tip 14: Use Teams or Skype

    Use Teams or Skype to bridge gaps in geography.

    Focus on the Flow

    "Extend this rule to focus on 'flow of value', not just people. In a continuous flow mindset, the daily standup is less about the people..... it's about flow. The team faces the scrum board and goes ticket by ticket for all the items in the 'work in progress', finding out what is needed to get it to the next stage.. respecting work in progress constraints." Joel Semeniuk

    When using email or IM try to be as specific as possible:

    Hi Adam,

    I have XX days until my next client booking. I have 22 emails in my inbox. Yesterday I was on sick leave.

    Today I am working on:

    • Timepro PBIs
    • Tidy inbox

    Figure: Bad example - Lack of details. Eg. Yesterday - if it's Monday, you wouldn't say “Yesterday was Sunday"... so if you were sick, it's more useful to go back to the prior day you were working


    I have XX days until my next client booking. I have 22 emails in my inbox. Last Friday I was on sick leave.

    Today I am working on:

    • TimePro - Adding new button to the next day
    • Getting my emails on "" to zero

    Figure: Good example - Clear details

    More information

    What happens when you run out of tasks?

    The goal is to be productive for 8 hours of the day, so communicate with the rest of the developers and work with them on any other outstanding tasks. If there are no more tasks then take the next task from the top of the Sprint Backlog.

    What happens if there is a major incident?

    It is important that any major incidents are dealt with first. Start with any major incidents that occurred in the last 24 hours.

    Figure: Daily Scrums will alert everyone if there is a major problem and get all brains aligned in the right direction. There is no sense in putting a Band-Aid on a patient's scraped knee if there is a big knife in his eye!

  13. Each step of Scrum is designed to take you towards an outcome, and this is built upon 3 levels of commitment:

    Product Goal

    This is the commitment at the Product Backlog level. It is defined by the Product Owner and ensures continued focus upon progress towards a defined outcome.

    The Product Goal describes a future state of the product which can serve as a target for the Scrum Team to plan against. The Product Goal is in the Product Backlog. The rest of the Product Backlog emerges to define “what” will fulfill the Product Goal.

    "A product is a vehicle to deliver value. It has a clear boundary, known stakeholders, well-defined users or customers. A product could be a service, a physical product, or something more abstract."

    The Product Goal is the long-term objective for the Scrum Team. They must fulfill (or abandon) one objective before taking on the next.

    **Excerpt from The Scrum Guide **

    Sprint Goal

    This is the commitment at the Sprint Backlog level. It is negotiated between the Product Owner and the Team, and defines the “why” of the sprint, and how it will help the product eventually reach the Product Goal.

    The Sprint Goal is the single objective for the Sprint. Although the Sprint Goal is a commitment by the Developers, it provides flexibility in terms of the exact work needed to achieve it. The Sprint Goal also creates coherence and focus, encouraging the Scrum Team to work together rather than on separate initiatives.

    The Sprint Goal is created during the Sprint Planning event and then added to the Sprint Backlog. As the Developers work during the Sprint, they keep the Sprint Goal in mind. If the work turns out to be different than they expected, they collaborate with the Product Owner to negotiate the scope of the Sprint Backlog within the Sprint without affecting the Sprint Goal.

    **Excerpt from The Scrum Guide**

    Definition of Done

    This is the commitment at the Product Backlog Item (PBI) level. This may include testing, deployment, Pull requests, etc, and ensures the quality of each PBI.

    The Definition of Done is a formal description of the state of the Increment when it meets the quality measures required for the product. The moment a Product Backlog item meets the Definition of Done, an Increment is born.

    The Definition of Done creates transparency by providing everyone a shared understanding of what work was completed as part of the Increment. If a Product Backlog item does not meet the Definition of Done, it cannot be released or even presented at the Sprint Review. Instead, it returns to the Product Backlog for future consideration.

    If the Definition of Done for an increment is part of the standards of the organization, all Scrum Teams must follow it as a minimum. If it is not an organizational standard, the Scrum Team must create a Definition of Done appropriate for the product.

    The Developers are required to conform to the Definition of Done. If there are multiple Scrum Teams working together on a product, they must mutually define and comply with the same Definition of Done.

    **Excerpt from The Scrum Guide**

  14. Do you know how to be a good Product Owner?

    The client is generally the Product Owner (PO). They should read the Scrum Guide and watch the Product Owner video to understand their role. It is so important to the success of their project:

    In order to be a good PO, they need to:

    1. Be available for Sprint Reviews, Retrospectives and Sprint Planning meetings (approximately half a day for these 3 meetings, for each 2-week sprint).
    2. Order the Product Backlog. The important things will be done first, in order to maximize the ROI as the budget will run out one day.
    3. Be available, at least remotely, to unblock a developer if he has questions/impediments. A good PO has a feeling of urgency.
    4. Ideally, listen in on Daily Scrums. This is optional but means that the PO will have daily insight into the team’s progress.
    5. Understand Product Backlog Items (PBIs) and be able to explain what they want using Acceptance Criteria. This is the main way that developers and POs sync their understanding of what needs to be done.
    6. Set a Product Goal (the "why" of the Product)
    7. Agree on a Sprint Goal for each sprint (the "why" of each sprint)
    8. Not influence (or anchor) developer estimates with comments like “this one will be easy” and allow the team to come up with converged estimates.
    9. Respect the Sprint Goal. Understand that the team will only work on things in the Sprint Backlog and don’t expect other things to be done as well. Most things can wait for the next sprint.

    Who should be the Product Owner?

    It’s hard to give guidance on who in the company would make a good PO. The usual candidate is often extremely busy. It should be:

    1. Someone with a personal stake in the success of the project.
    2. Someone who is available
    3. Someone with a clear vision of the product,
    4. Someone who has authority with the budget. E.g. They could authorize adding a designer to a sprint for a couple of days
    5. Someone who has read the Scrum Guide and watched the Product Owner video and understands the role.

    It’s possible to outsource the role of PO to someone in the development consulting company, but this is not recommended. Don’t put the fox in charge of the chickens.

    “Most dysfunction I see in Scrum teams is caused by a bad Product Owner” - Adam Cogan  - Professional Scrum Trainer,, during a TechEd session

  15. All good Scrum teams have a backlog. The backlog is built by taking a conversation and recording it as one or more Product Backlog Items (PBIs) (e.g. Azure DevOps) or Issues (e.g. GitHub)

    We recommend using software such as GitHub Issues, Azure DevOps, or JIRA to store PBIs straight after or, better yet, during the conversation, rather than using emails that may never be entered into the backlog.

    Figure: Get typing during a conversation to make the meeting tangible

    The Product Owner is responsible for owning the Product Backlog. See the video on "Do you know how to be a good Product Owner?"

    1. Emails

    Bad Example - This is a poor way to add a PBI/Issue as you can’t order emails by the business priority

    Figure: Good Example - Github Issues

    3. Azure DevOps - E.g.

    Figure: Good Example - Azure DevOps allows you to enter an item into the backlog, in any priority order

    What's next?

  16. The Product Owner is responsible for owning the Product backlog. See the video on "Do you know how to be a good Product Owner?"

    How to add new PBI (Product Backlog item) to the backlog?

    Do not use emails as you can't order them by the business priorities.

    Use Azure DevOps (E.g. as it allows you to enter an item into the backlog, in the preferred priority order.

    Figure: Good Example - Azure DevOps allows you to enter an item into the backlog, in any priority order

    Note: You can also create a PBI using Azure DevOps and attach an email directly if needed, without using Team Companion

  17. Avoid monolithic Product Backlog Items (PBIs). Ideally, all PBIs should be less than 2 days. If you are given a feature that is going to take weeks, then split it following this rule.

    Figure: Bad example - This is a monolithic 4-day task

    Figure: Good example - The same monolithic task, broken down into 4 smaller tasks

  18. A PBI should not take more than 2 days. Each task under it should not have an estimate of more than half a day (4 hours).

    If you have a big task with an estimate of more the 4 hours, you should consider breaking it in sub-tasks. In case the estimate has changed during the sprint, the “Remaining Hours” field must be updated in order to have an accurate Burndown chart.

    The reason Scrum limits the maximum hours is because you should always know in which task you are working and we believe one single action that takes more than 4 hours might be too generic.

  19. A team knows how many PBIs they can commit to by measuring their velocity. The Team estimates the highest priority PBIs in the Product Backlog in Story Points. It is very important for teams to estimate tasks effectively. There are several methods for estimating:

    • Shirt Sizes
    • Fibonacci Extended (1-100)
    • Fibonacci Original (1-21)
    • Doubling
    • Thrown

    Let's go through them:

    Shirt Sizes

    This method is popular with Microsoft teams, but it has the problem of not easily mapping to the common 7 numbers when you enter it into a Task tracking Bug database. e.g.

    1 = XS 2 = S 4 = M 8 = L 16 = XL 32 = XXL 64 = XXXL

    Please note: In some teams which only use Small, Medium and Large the following numbering is applyed respectively 2, 4 and 8.

    size stories bad example
    Figure: Bad example - Estimation using T-Shirt sizes

    Fibonacci Extended (1-100)

    Planning Poker is a very effective Product Backlog estimation technique and the most common method is using Fibonacci numbers (1,2,3,5,8,13, etc.). This was made popular by Mike Cohn.

    size stories ok example
    Figure: OK example - Estimation using Planning Poker with large numbers

    Fibonacci (1-21)

    Mike Cohn introduced changes to the original 7 cards, by changing the 21 to 20 and adding 40 and 100 to indicate very large user stories called Epics.

    Ken Schwaber (the father of Scrum) says in his Scrum Certification course, that he is not a fan of the extra cards and says he prefers teams keep to the original 7 cards.

    size stories good example
    Figure: OK example - Estimation using Planning Poker with only small numbers

    Estimating using doubling numbers makes relative sizing simple. An 8 point PBI should be about twice the size as a 4-point PBI. This method also simplifies PBI swapping where a PBI is replaced with PBIs totaling the same number of points.

    It has one other advantage over the Fibonacci sequence, it is easier for non-techies because the numbers aren't whacky and the name isn't bizarre.

    Estimate 1 2 4 8 16 32 64

    Figure: Good example -Doubling simplifies relative sizing


    Another method of estimating is the "Thrown method" as described Martin Fowler.

    This is particularly useful if you don't have Planning Poker cards. Instead of Fibonacci numbers, estimates are from 1 to 5. It's nice and simple, and you only need the fingers on your hand.

    The action is done in the same method as the game 'Rock, Paper, Scissors'. The options the developer can estimate is 1,2,3,4,5

    fist method
    Figure: PBI estimates using the "Thrown method"

    Other Tips

    #1 Don't Shout Out It will just influence other people's votes.

    #2 Guidelines for Estimating PBIs (aka Anchoring) Every team is different, but you can use the following guidelines for sizing PBIs.

    Estimate ValueExample PBI
    1A change to a message box
    4A timeboxed task for 1 day x 1 guy
    8A timeboxed task of 1 day x 2 guys
    64More than a month with a couple of guys. Tip: Don't include these in a sprint because they are too risky - ask for them to be broken down.

    Figure: Good example - Example PBI estimates

    #3 Using a Chat Program If you are working on a project with a remote team, use Microsoft Teams chat to size PBIs using Planning Poker. Everyone should give their points for PBIs at the same time to avoid influencing each other.

    #4 Big PBIs Smell PBIs of greater than 2 days are a smell and PBIs greater than 4 days are a stench. If PBIs are estimated at more than 4 days of work, consider splitting them into smaller pieces to keep them under 2-4 days. See Do You Break Large Tasks into Smaller Tasks?

    #5 Use Spikes If you do find a very large PBI, consider using a Spike (aka. an investigation task) to help work out how much work will be involved.

  20. All team members must update their tasks with status, (and remaining hours if you are estimating tasks) prior to the daily Scrum meeting.

    screen shot 2021 10 29 at 8 06 46 pm
    Figure: Update your tasks to keep the burn-down rate accurate

    Note: If you are updating the details of a PBI then follow the rule Do you know when you use @ mentions in a PBI?

    In Scrum, there are 4 meetings in total that you need to know about:

    Scrum at Microsoft Videos

    Short Version (3:48)

    Long Version (12:15)

  21. In Scrum, meetings are time boxed. Team members should be well prepared in order to accomplish the meeting goals in time. 

    Daily Scrum Meetings

    This is time boxed to 15 mins. All members of the team should be well prepared by:

    What did you do yesterday? e.g. "Yesterday I did xxx"

    What are you doing today? e.g. "Today I will do yyy"

    Do you foresee any impediments or roadblocks? e.g. "I might hit a roadblock today because of xxx"

    • Remember to say "Let's park that conversation for after the Daily Scrum". Major discussions are not to be conducted during the time boxed Scrum meeting.
    • Being online on Skype (especially for team members in different locations).

    Related Links

    Reports - Do you know which reports are the most important ones to track your progress?

    Management - Do you have daily stand-up meetings (Scrums)?

    Sprint Review Meetings

    All members of the team must be well prepared by:

    • Being available 30 minutes before the meeting
    • Setting up and testing the projector with a computer before the meeting starts
    • Making sure remote members are connected via Skype and/or TeamViewer before the meeting starts
    • Nominating in advance another member of the team to take notes from the presentation
    • Deciding, in advance, the order in which PBIs should be presented; priority, sprint backlog order, logical order and minimizing presenter and presentation medium switching should be taken into account.
    • Controlling the time spent on the PBI presentation

      • Practice the demo beforehand if needed to ensure a succinct delivery. This can be in the form of a pre-prepared video if desired
      • Inform the product owner what the main goal of the PBI is and tell if the team believe it was done or not
      • If the Product Owner previously saw what was done, ideally the member should just mention that and ask if the PBI is accepted
      • If the member needs to show something, show a couple of examples and ask if the Product Owner wants to see something else

    Sprint Retrospective Meetings

    All members of the team must be well prepared by:

    • Having all your tasks from the last sprint closed
    • Having your sprint feedback ready in advance, so members don’t need to think about it during the meeting, saving time
    • Being clear and pointing out issues that need further discussions

    Sprint Planning Meetings

    All members of the team must be well prepared by:

    • Having all bugs and PBIs up-to-date on the backlog
    • Having all PBIs on the backlog “groomed” in order of priority (according to the Product Owner)
    • Understanding all PBIs and the Product Owner’s priorities
    • Being responsible on estimates
    • Volunteering to work on PBIs and tasks, even if they are not related to your best skills – read Do you encourage multi-skilled teams?
  22. When you are building complicated software and working with customers it is always nice for them to have some idea on who to speak to about a particular PBI during a sprint. In order to achieve this one of the Team takes responsibility for “looking after” a PBI.

    They will collect all of the "Done emails and make sure that everyone follows the Done criteria identified by the team as well as answering any Product Owner queries.

    PBI Owner Reposibilities

    The role of the PBI Owner is like a mini project manager. The PBI Owner resolves any road blocks, performs the “Test Please” and makes sure there is a good presentation at the Review Meeting. In addition, having a PBI Owner makes it easy for Product Owners and others to talk to the right person when they need to.

    There are five main things that the PBI Owner is responsible for:

    • Manage / Own the story and its sub tasks
    • Make sure a “Test Please” is conducted (or that their story is included in one)
    • Make every effort to show the story to the Product Owner before the Sprint Review (aka a corridor conversation)
    • Prepare for the Sprint Review. Make sure he ready for the review. Have a scribe, have a demo plan/script and get the story accepted quickly
    • Present the completed PBI at the Sprint Review

    During a Sprint it is useful for:

    • The Product Owner to know who to speak to regarding a PBI
    • The Team to know who will be presenting the PBI at the Sprint Review

    Note: Beware this is intended for convenience and should not conflict with the following Scrum principals from page 6 of the Scrum Guide.

    • The Development team is self-organizing
    • Accountability belongs to the development team as a whole

    UserStoryOwner Bad
    Figure: Bad example - The Product Owner is not sure who to speak to

    UserStoryOwner Good
    Figure: Good example - The Product Owner can now see who he should speak to and developers know where to send done emails

    screen shot 2021 11 02 at 9 20 07 am
    Figure: Assignees in GitHub

  23. When you create tasks in Scrum you are doing this within a time box and you tend to add only the information you need to remember what the task is. And the entire Team was at the meeting and were involved in the discussions around the task, so why do you need more?

    Once you have accepted a task you should then add as much information as possible so that anyone can work on that task.

    You can use rich text and images to be extra clear, or even attach an email to the task.

    screen shot 2021 11 02 at 9 30 39 am
    Figure: Bad example - there is not enough information for anyone to complete this task

    screen shot 2021 11 02 at 9 30 14 am
    Figure: Good example - Azure DevOps - Lots of information so anyone can pick up that task

    screen shot 2021 11 02 at 9 54 20 am
    Figure: Good example - GitHub - Lots of information so anyone can pick up that task

    Note: If you are updating the details of a PBI then follow the rule on using @ mentions.

  24. Member of the Scrum Team should understand their responsibilities and respect the implicit contract (promises) they have made.

    The Organization- the team that there are stakeholders (including subject matter experts) who will help when needed
    - the team that there are stakeholders (including subject matter experts) who will help when needed
    - they will help the Scrum Master in the removal of impediments to the Scrum team’s progress
    - the team that they will not change priorities or constraints in the middle of a sprint without team’s consent
    - that being on a Scrum team will not hurt the members’ careers
    - not to divert team members to other work on a Scrum Day during a sprint
    Product Owner- to supply an initial product backlog
    - to prioritize the product backlog when needed
    - to be responsive to requests for feedback and clarification
    - empowered “voice of the customer” will be provided to answer business domain questions promptly (minutes or hours, not days)
    - to attend every Review, Retrospective
    - not to change priorities or scope during a sprint
    - not to direct team members to do work not agreed and planned at the beginning of the sprint
    Scrum Master- to keep the team healthy by focusing on the removal of impediments, both internal and external
    - to protect the team from external distractions
    The Team- that its work will be transparent, that it will make decisions and solve problems as a group, and that no individual team member will be left behind
    - to take prioritization and scope from the product owner on the team driving the team based on stakeholders interests
    - to use the stakeholders’ time wisely, by focusing on questions that are relevant to the work being done now
    - to do quality work the best way they know how within the constraints set forth by the organization
    - to deliver demonstrable product at the end of every sprint for review and validation by the stakeholders
    - to endeavor to become multi-skilled by sharing and pairing and not relying on experts on the team for specific functions
    Team Member- to bring issues, problems, impediments and realities encountered to the team
    - to be available and working with the team on every defined Scrum Day of a sprint in which they committed and any required absences will be scheduled before the beginning of the sprint
    - to attend every Scrum, Review, Retrospective & Planning Meeting
    - to refer any external request that will take more than 15 minutes of Scrum Day time to the Scrum Master
  25. Most devs don't send 'Done' emails... Would you really expect Product Owners to always be checking Azure DevOps (was TFS) or GitHub?

    The better approach is:

    • If a task/bug came from a client when it is completed, send the 'Done' email to the Product Owner.
    • If the task/bug is your breakdown of a PBI (that the developer did to break down a big user story), then only send the ‘Done’ once the entire user story is complete.

    Note: Send the ‘Done’ email to the Owner of that PBI.

    GitHub Note: If you are using GitHub, you can close the issue with a comment, and @-mention the people you wish to notify - GitHub will then email them for you, assuming they have configured it correctly. This has the added bonus of being visible to everyone else who can see the issue, without needing to CC everyone on your emails.

    Done tips:

    • Include Task #, Summary, and link to the item in TWA.
    • Remember that all your tasks should be under 4 hours
    • Follow the Done Email rules
    • If you completed the task in a different way than previously discussed, mention it.
    • Make sure that every PBI has an Owner as per the rules.

    If you are working on a task

    When you complete a task that is part of a PBI you need to send a done email to the Owner of that Story.

    You only need to add the Task #, Summary and link to the item in WIWA. Remember that all your tasks should be under 4 hours, do spend lots of time on a Done Email for a Task would be counter productive. Add more information if required, for example you may have completed the task a different way than previously discussed.

    Make sure that every PBI has an owner as per the rules.

    If you are the owner of a PBI

    When the last task/bug of a PBI is complete, you then send a comprehensive done email as per the rules when the story had been completed. Make sure you add a list of all of the Tasks that were completed as part of the story and the Done criteria that you completed.

    Here is the Definition of Done we followed:

    • Compiled/Built locally
    • >30% Code Coverage
    • All unit tests passed

    Then add an illustration to show this.

    Figure: Good example - This is proof you have met your 'Done criteria'.

    This is all designed to help you Scrum Team members (Product Owner, Scrum Master and Team) keep a certain quality bar on completion of each chunk of work. Remember that you are not 'DONE' until your team says you are done.

  26. Something you must do is to conduct an internal ”Test Please” prior to releasing anything to a client. This should be done by someone outside the Scrum Team and as it is a blocking process must be started within an hour and take no longer than 3 hours to complete.

    In Scrum, you should conduct a separate “Test Please” for each of the stories. You might be using the same package, but all the bugs and issues found must be rolled up to the Story Owner as they will need to decide on what needs to be done to deliver their User Story.

    Learn more:

    1. Do you conduct an internal "test please" prior to releasing a version to a client?
    2. Do you know the 4 steps to do a "Test Please"?
  27. What happens when you leave all the testing to the end of the sprint? You find things that are not done and you have no time before the Sprint Review to fix them.


    Figure: Bad example - if you don’t complete all the tasks the customer will not receive a build in the sprint

    One way to mitigate this is to aim for a “ test please ” to occur a few days before the end of the Sprint but you still run the risk of not having enough time to make sure everything is done.


    Figure: OK example – Send the “test please” before the end of the sprint so you have time to finish everything

    It is preferable to conduct a Smoke Test to make sure that you are comfortable demoing the unit of work you just finished to the customer. One way to do this is to create a Coded UI test for each of the Stories as part of your Definition of Done (DoD) that runs through the functionality you have built.

    In this scenario the “ test please ” with the customer happens outside of the current Sprint.


    Figure: Good example – Create a coded UI test for each story to prove that it is complete

    If you are doing Scrum then you should have a User Story fleshed out with a set of Acceptance Criteria . These Acceptance Criteria are agreed with the Product Owner before The Team committed to the story, and define what the Product Owner will accept as complete. This makes it relatively easy to create some automated tests that test for these Acceptance Criteria and help your Sprint Review go as smoothly as possible.

    Any changes found during the Sprint Review get added to the Product Backlog to be prioritised by the Product Owner .

    RuleBuildEverySprintUltimate Figure: Ultimate example – Create a Test (could be Coded UI) for each of the Acceptance Criteria agreed with the Product Owner

  28. The goal is always to complete Product Backlog Items (PBIs) for the Sprint Review.

    Often PBIs grow or change and it does not make sense to deliver what was originally proposed in the Acceptance Criteria.

    So think of a way to deliver business value and get it in production, then have a hallway conversation with the Product Owner to see if he agrees with you.

    Assuming approval, then adjust some of the Acceptance Criteria, add "v1" to the PBI name and move some of the functionality to a new PBI with the same title and "v2".


    • Customer and Contact Form v1
    • Customer and Contact Form v2

    Note: A common example for when to use this is when the full acceptance criteria of a large PBI (or Epic) would not be attaionable within one sprint, so splitting an Epic into 2 attainable PBIs is a better option.

    2021 07 30 14 58 22
    Figure: A v2 PBI in GitHub

    2021 07 30 14 59 25
    Figure: A v2 PBI in Azure DevOps

  29. There are two reasons that a PBI can be removed from the sprint.

    1. Your team notices that they can’t get everything done, and agree with the Product Owner to remove the PBI.
    2. At the Sprint Review meeting the Product Owner rejects the story

    There are a few reasons a team can find themselves in a position where they can't get everything done.

    1. They underestimated one or more PBIs
    2. PBIs were blocked by other PBIs

    In all cases, when a PBI is removed from the backlog, it moves back to the top of the backlog and any unfinished tasks left in the sprint are closed.  When the Product Owner next grooms the backlog, or during the next Planning Meeting, he may decide to prioritise the PBI high enough to make the next Sprint, but he may not.

  30. At the end of a sprint, if a PBI has not been completed and therefore cannot be marked as done: 

    1. Update the Effort to be just what is remaining
    2. If there has been scope creep, but the original Acceptance Criteria has been met, it might be a good opportunity to mark it as done and move any scope creep tasks into a V2 of the PBI, which can then be prioritised in the backlog by the Product Owner
  31. Having a rejected Sprint is so rare that you should be hard pushed to find any team that has had one.

    If you do then this highlights an underlying communication issue and most likely a lack of participation by the product owner.

    See Do you have a contract between the Product Owner and the Team?

    If however you do get a failed sprint and the Product Owner is not willing to accept the code that has been written then you need to rollback your source code and put all the Stories back onto the backlog.

  32. Every now and then your clients are going to want to change their priorities and have you work on something which they see as more important than some of the items in your current sprint. Provided that it doesn't have any negative effects overall, there isn't any reason why you can't stick to the "customer is always right" philosophy.

    So what will you do when this happens?

    1. Double check that this new item is more important than the current sprint items (if not add it to the product backlog instead)
    2. Add the new PBI to the current sprint
    3. Remove another item of similar size off the sprint and back to the backlog

    In the rare case where the entire sprint goal and all PBIs are no longer high priority, you can instead cancel the entire sprint and start again:

    1. Move any left over work/items to the backlog.
    2. Send a debrief to the client with a note e.g. As per your request we have just cancelled Sprint five and will start on Sprint six. The remaining items have been moved into the backlog.
    3. Send a Sprint Forecast for the new sprint

    This should only be done in extreme circumstances as it is traumatic to the team.

  33. Do you always know what are you working on?

    Team members should always know in what task they are working on and make sure Azure DevOps (was TFS) is up-to-date.

    It’s natural that everyone spends some time on grooming, making decisions etc, so it’s not expected that all team members work 8 hours per day on tasks. However, ideally everyone should be doing as many hours as possible.

    If they are doing something for the team that is not a team meeting or for a task assigned to them that will take more than 30 minutes, they should create a new task with an accurate original and remaining estimates. When helping somebody else with a task, the team member should create a new subtask to that task to cover their help.

    To always know the task you are working on is very important for the Burndown accuracy and also make it easy to check what work has been done and what are the impediments.

  34. Exercise – Click Click Scrum

    This exercise uses the VS2010 planning poker deck of cards & TFS

    Separate out the cards

    Separate out these as Chance Cards

    chance cards
    Chance Cards
    Figure: Chance cards Separate out these as Point Cards
    point cards
    Point Cards
    Figure: Point cards

    Set Timeboxes

    Sprint Planning (What): 20 minutes Sprint Planning (How): 20 minutes Each Day: 10 minutes ( x 9 days = 90 minutes) Review: 20 minutes Retro: 20 minutes

    Total for 1 complete Sprint: 170 minutes (~3 hours)

    Sprint Planning Meeting (What)

    1. The trainer acts as PO and gives PBIs & prioritises them
    2. Students clarify the requirements of the PBIs (Details, Acceptance Criteria)
    3. Students do Planning Poker to Estimate
    4. Students break PBIs into tasks
    5. Students put estimates on each task (typical times for work in a day e.g 4 hours, 8 hours)

    Each Day in the sprint

    1. Get the students “Click-Click” their fingers instead of doing actual coding
    2. The trainer deals one or two cards from the Chance Cards
    3. The trainer looks up the meaning of the cards (see table below) and the trainer makes up a suitable PBI that fits the card and the work the students are doing
    4. The students add or change work items based on the scenario of the Chance cards
    5. (If your team is estimating tasks) The team reduces the remaining hours on their assigned tasks, with the assumption that each student works 8 hours
    6. Do the Daily Scrum (describing their day based on the work they just updated in TFS)

    NOTE: It is OK to really code rather than use “Click-Click” development as long as TFS is updated.

    The Review Meeting

    The PO reviews the work of the team (Note: if all the work was “Click-Click” then review the TFS work items to check that they are entered OK).

    The Retro

    Students and PO do a standard Scrum retro for the exercise.

    Meaning of the Chance Cards



    • Draw a point card
    • Add the value to the remaining hours of a task
    • Record the impediment
    e.g. DBA will not give access to the database. | | \*\*?\*\* | Clarification | |
    • Draw a point card
    • Add a new task
    • Set the remaining hours of a task to the value
    e.g. The error message should change from “User Error” to “The process could not be completed, please check the Url value provided for the webservice and try again”. | | \*\*0\*\* | Bug | |
    • Draw a point card
    • Create a bug
    • Add a task to the bug
    • Set the remaining hours on the task to the value
    e.g. One of the build scripts fails on the build server, but works on a local dev machine. | | \*\*20\*\* | Bubble | |
    • Halve the remaining hours on a task
    e.g. The data access layer supports the validation framework so as that was already implemented the effort expected has decreased. | | \*\*40\*\* | Spike | |
    • Draw a point card
    • Create a new PBI
    • Set the PBI points to the value
    e.g. The current implementation may not support real-time display of information with the performance expected by users – investigate

    || 100 | Task blowout | |

    • Double the remaining hours on a task
    e.g. Multiple field data validation was supported in the application but when it was implemented for this work it failed all validations calls and it took ages to find the settings in web.config were wrong. | | \*\*Cancelled Sprint\*\* | The PO cancels the sprint | |
    • Cancel all tasks
    • Recycle the PBIs to the Product Backlog
    | | \*\*Team Member
            Leaves** | The Team is missing a Team Member |


    • Reduce the hours the team works by 8 hours
    | | \*\*Scrum Master
            Leaves** | The Team is missing the  Scrum Master |


    • The team handles the missing SM
    | | \*\*Product Owner
            Leaves** | The Product Owner is missing |


    • The team handles the missing PO
    | | \*\*Stakeholder Interferes\*\* | Stakeholders are contacting the Team to change priorities and requirements | |
    • The team handles the Stakeholders
  35. Disrupting a team member can affect the delivery of the whole Sprint. Product Owners should always avoid giving tasks outside the Sprint. It may seem to affect just one member, but it does affect the entire project.

    With Scrum, the team commits to deliver some set of functionality by the end of each sprint and the whole team is accountable for what they engaged to deliver. Missing a team member, even if temporarily can affect the success of the Sprint, the Scrum Master may recommend removing stories to be delivered. Product Owners must be aware of how Scrum works and understand the importance of keeping the team focused on their tasks.

    Team members need to be completely transparent with the Product Owner, the Scrum Master, and the rest of the team. Even if someone offers them a free trip to Iceland, they still need to ask permission from the Product Owner as it can affect the Sprint.

  36. Although the team will always strive to complete all the items on the sprint backlog within the sprint, it’s not uncommon for them to not finish all of them. If this is the case, you want to at least make sure that the PO's (Product Owner)’s most important items are done.

    Whenever you are choosing your next task, always work from the top down, only skipping items if there is a dependency or another good reason why a lower item needs to be done first.

    priority order
    Figure: a good example of a team working in priority order. Mid-way through the sprint, the top items have been completed, the middle items are being worked on, and the bottom items have yet to be looked at

  37. Do you have a "Definition of Ready"?

    As part of the update to the Scrum Guide for 2013, there is a concept of a product backlog being "Ready".

    Just like how the team has a Definition of Done as a checklist for completing a PBI, the product owner needs a Definition of Ready to get the PBI in a state that’s ready for it to be added to a sprint. This should be done as part of the refinement (aka grooming) process and will greatly streamline the sprint planning meeting.

    A recommended “Definition of Ready” would be:

    • Has enough detail for the team to action (usually via good Acceptance Criteria)
    • Has Business Value assigned
    • Has effort assigned
    • Is in the Approved state

    Related Rule:

  38. Having a clear Definition of Done for your team is critical to your success and quality management in Scrum.

    Every team is different, but all need to agree on which items are in their "Definition of Done".

    There are 3 levels of 'Done' in communication

    Level 1

    Level 2

    • Sending a "Done" email
    • Screenshots
    • Code

    Level 3

    • Sending a "Done" email
    • Recording a quick and dirty "Done Video"
    • Code (showing a full scenario e.g. a user story)

    level 3 done
    Figure – Coded UI Test passes in Visual Studio

    There are 8 levels of 'Done' in software quality

    Start with these examples showing typical "Definitions of Done" from beginner teams to more mature teams:

    Team - Level 1

    • The code compiles
    • All tasks are updated and closed
    • No high priority defects/bugs are on that user story

    Team - Level 2

    • All of the above, plus
    • All unit tests passed
    • Greater than 1% code coverage (not earth shattering, but you need to start somewhere)

    Team - Level 3

    • All of the above, plus
    • Successful build on the Build Server
    • Git Branch Policies
      Azure DevOps Check in Policy - Change set Comments Policy (all check-ins must have a comment)
    • Azure DevOps Check in Policy - Work Items (all check-ins must be associated with a work item)
    • Code reviewed by one other team member (e.g. Checked by Bill)
    • Sending a Done email with screenshots

    Figure: Good example - Add check in policies to enforce your Definition of Done

    Team - Level 4

    • All of the above, plus
    • All acceptance criteria have been met
    • All acceptance criteria have an associated test passing (aka. Automated functional testing with Web Tests (Selenium), Coded UI Tests, or Telerik Tests)
    • Tip: Use Microsoft | Azure Test Plans
    • Sending a Done email (with video recording using SnagIt)

    TestPlanning 1
    Figure: Organize tests in suites with built-in E2E traceability across requirements, test artifacts and defects

    MTR 2
    Figure: Use the client, Microsoft Test Manager, to run tests and not just capture the pass/fail of steps, comments/attachments and bugs, but also capture diagnostic data during execution, such as screen recording, system info, image action log etc

    XT 3
    Figure: Explore your web applications, find and submit bugs directly from your Chrome browser – no need for predefined test cases or test steps

    Figure: Good example - Done video showing the features worked on

    Team - Level 5

    • All of the above, plus
    • Deployed to UAT (ideally using Continuous Deployment)
    • Complex code is documented (removing technical debt)
    • Product Owner acceptance

    Team - Level 6

    • All of the above, plus
    • Multiple environments automatically tested using Lab Management

    Figure: Good example - A tester Lab Management to create VMs for testing the application, then defines a test plan for that application with Test Case Management

    Team - Level 7

    • All of the above, plus
    • Automated Load Testing
    • Continuous Deployment

    Figure: Good example - Load testing involves multiple test agents running Web Performance Tests and pounding the application (simulating the behavior of many simultaneous users)

    Team - Level 8 (Gold)

    • All of the above, plus
    • Deployed to Production

    Congratulations! You are frequently deploying to production. This is called “Continuous Delivery” and allows you to gather quick feedback from your end users.

    You might have everything deployed to production, but it might not yet be visible to the end user. This can be achieved by having “Feature toggles” in place. The actual release of the functionality is a decision that the Product Owner and business takes.

  39. When you've finished a PBI you should record a video to send to your Product Owner and anyone else that is interested. A 'Done' video is much better than a screenshot because you are proving the PBI workflow actually works. Even better, this video can double as documentation or release notes for your users.

    When deciding whether a PBI might be a good contender to record a done video for, consider these factors:

    1. Is it a key piece of functionality that has high business value?
    2. Would it be difficult to quickly demo in the Sprint Review without a video?
    3. Is it UI heavy? i.e. would the video be compelling?

    Choosing software to record your screen and camera together:

    • Remote recordings: Zoom, or Microsoft Teams via NDI
    • Basic recordings: Snagit, Loom
    • Advanced recordings: Camtasia

    Tip: Camtasia 2021 is recommended because it vastly improves upon 2018 and 2019.

    Choosing software to edit your video:

    • Basic editing: Camtasia
    • Advanced editing: Adobe Premiere Pro, Final Cut, DaVinci Resolve

    Here's a quick video describing how to record and edit a quick done video. (Notice how it itself is also in the done video format?)

    Figure: How to make a 'Done Video'.

    For a great 'Done Video' here are the key things to remember:

    • Introduce the video - start with “Hi everyone, today I would like to show you xxxx”.
    • Show the pain - don't just demonstrate your new feature, start by showing the problem you are solving and why you needed to add the feature.
    • Record it in one take - it doesn't matter if you stuff up or something goes wrong, treat it like you're having a conversation with them in the room. If it's super bad, just start again.
    • Make it quick and easy - if you spend too much time, you will be less likely to want to do it again in the future.
    • Be quick and concise - you don't want to waste other peoples' time either!
    • Use a clean browser - hide visible bookmark bars, browser tabs, add-in icons, and taskbar items to make it easier to view.

      • Tip: In Chrome you can use the "guest" profile to open a clean window with no history or cookies.
    • Set your screen resolution to 1080p (1920x1080) - higher resolutions (e.g. 4k/3840x2160) will scale down graphic elements and make it harder to view.
    • Zoom in to 125% in your browser - as per: Do you make sure your screen recordings are easy to view?
    • Record both your screen and webcam - PC and Mac can both use Camtasia (2021 version recommended). For Mac you can use Quicktime, but it’s not as flexible.
    • Don't edit the video - your introduction and closing should have your webcam on full-screen, and the rest of the video should be your screen with your webcam in the corner (also called a picture-in-picture, or PiP).

      • Tip: If you are using Zoom you do not need to edit the video. Zoom includes your face automatically in the screen capture. Awesome!
    • Check your audio devices - if you have multiple microphones (e.g. headphone/mic set, webcam mic, inbuilt mic, etc.) do a test recording to see which is the best quality.

      • Tip: You can use the default Voice Recorder app on either Windows or Mac to quickly record audio.
    • Audio needs to be clear and not distracting - if there are lots of background noises it will prevent audiences from focusing on you, as per: Do you record better audio?
    • Interact with your webcam like it's a person - look into the camera and smile when doing your introduction and closing for the video!

    Tip: Some offices have a professional setup:

    E.g. SSW have the Marantz Turret hardware and desktop recording kit. The Turret is an ideal device to record these videos as it has a professional podcasting microphone, built-in light and good quality High Definition video camera.

    turret usage
    Figure: 'Done' video in progress using a Marantz turret broadcasting kit

    Learn more about the Turret:Product Review: The Marantz Turret — Wistia

    Camtasia - Let's look at an example by Ben Cull

    E.g. SSW TimePRO - Power BI Ad-Hoc Reporting:

    Figure: A real example of a 'Done Video' with Fades

    Tip: Fix the audio before making any cuts to the video

    After recording your video, you need to do some basic sound processing to make the audio awesome.

    • In the Timeline, select the clip with the audio
    • On the top left panel, click ‘Audio Effects’ and drag the ‘Levelling’ effect onto your clip
    • On the timeline, move the new audio meter up just until the audio waveform is about to hit the top
    • Listen and adjust as necessary

    audio effects panel
    Figure: audio effects panel with the compressor

    Tip: Camtasia 9 - How to fade-out and fade-in the video track of your face in Camtasia 9

    1. With the video track of your face selected, click on Animations (1) . Track 3 in the image below.
    2. Select the No Opacity (2) animation effect for the fade-out.
    3. Drag and drop the No Opacity effect (3) to the point in the track where you want to fade-out. Adjust the start and end point of the fade using the handles on the animation arrow.
    4. Select the Full Opacity (4) animation effect for fade-in.
    5. Drag and drop the Full Opacity effect (5) to the point in the track where you want to fade-in. Adjust the start and end point of the fade using the handles on the animation arrow.

    fade in and out
    Figure: Camtasia - Steps for adding fade-out/fade-in animation to video track of your face in 'Done' video

    Final Step – Export your video

    Follow the steps to export your video:

    1. Click the Share button on the top right of the window

    export video1

    1. In the new dialog, select custom production settings

    export video2

    1. In the next window, uncheck the ‘Produce with controller’ option

    export video3

    1. In the ‘Video settings’ tab, copy these settings:
    2. Frame Rate: 30
    3. H.264 Profile: High
    4. Encoding mode: Quality o Increase the quality to 100%

      export video4
      Figure: Copy these settings

    5. In the ‘Audio settings’ tab, make sure the Bit rate is set to 320 kbps

    export video5

    1. Click Next and save your file!
  40. Do you know when you use @ mentions in a PBI?

    When the Product Owner verbally requests a change to a PBI, how do you update the PBI to reflect the change and also keep track of the conversation?

    You could send yourself a "To Myself" email and update the PBI description accordingly, but only those people included in the email chain are aware of the conversation. Only send a "To Myself" email when there is no product backlog that is related to the request, otherwise you should create or update a PBI and @ mention the Product Owner and other relevant people (@ mentioned people will still receive an email).

    bad mention pbi
    Figure: Bad Example – don't use emails to update tasks

    Instead, what you should do is use the discussions feature in the PBI and mention the user using "@<username>".The benefits of using comments are:

    • Quick and easy, no need to compose an email
    • History is visible to anyone looking at the PBI (with email, if you don’t cc them, they wouldn’t have a clue)
    • Easy to see all important notes/comments in one place instead of digging through email

    When someone (especially the PO) asks you to fix a PBI, mention that person in the PBI comments so he knows when it’s fixed.

    Example: When replying to "Hey XXX, can you please fix PBI 123?"

    Bad example: "I have found the PBI and moved it near the top of our backlog"

    Good example: "I have found the PBI, prioritized it near the top, and @mentioned you so you know when it is fixed"

    Azure DevOps PBIs

    good mention pbi
    Figure: Good Example – Using @ mentions in Azure DevOps discussion

    good mention pbi 2
    Figure: Good Example – Email still gets sent to the users who are mentioned in the discussion, so they can still chime in if any details are incorrect

    GitHub Issues

    MicrosoftTeams image
    Figure: Good Example – Using @ mentions in GitHub

    Tip: You can @mention on your pull requests as well.

  41. When discussing a PBI/Issue, Pull Request, or a project in general, it is important to do it in the right place.

    Kanban on Screen

    bad mention pbi
    Figure: Bad Example – don't use emails to discuss tasks

    For code

    Sometimes developers need to discuss code implementations - sometimes to improve the code, other times to explain why something was done a certain way.

    This should be done in the Pull Request, if possible comment directly on the line of the code change and once resolved, make sure that the important information is captured in the merge's commit description.

    comment on code in pull request
    Figure: You can add a comment on a specific line of code

    For a new PBI/Issue

    As perDo you know when you use @ mentions in a PBI? - Create a new issue mentioning the Product Owner and the related people

    Create Issue
    Figure: Good Example - When adding a GitHub issue, @ mention the Product Owner and other related people so they receive a notification e.g, an email

    For an existing PBI/Issue

    Discuss it in the existing PBI/Issue.

    existing issue discussion
    Figure: You can discuss an existing issue, even when it has been closed

    For other topics (brainstorm ideas, general discussion, etc.)

    You can:

    • Create a PBI/Issue

      • use a "discussion" label so that others know that it is just a discussion point and not actionable work yet
      • have it checked by the client before publishing it (recommended)
    • Discuss it in the discussion tab in GitHub

    Discussion Tab in GitHub
    Figure: You can create discussions on your project using the Discussion tab in your GitHub repository

    • In the team channel in Teams

    Team channel
    Figure: You can discuss your idea in Teams on the team channel

    In summary, Email should be the last resort.

  42. Do you know which emojis to use in Scrum?

    Emojis make it easier for people to quickly workout what type of content is coming up and to highlight important stuff. It works nicely for meetings, backlogs, and more.

    An easy and fun way to have use emojis consistently in Scrum is to follow the list on scrumoji - An emoji guide for your agile communication.

    Tip: Use the "Windows Key" + "." to see the emojis in your screen.

    srumoji   bad example
    Figure: Bad Example - The Sprint Review is an important meeting but doesn't stand out in my calendar

    scrumoji   good example
    Figure: Good Example - The Daily Scrum and Sprint Review stand out and I will definitely not forget to attend

  43. When selecting their tasks, team members should be looking to extend their skills. Scrum encourages multi-skilled workers, rather than having testers, back-end developers, designers etc. In other words, all team members should be able to help completing any task.

    This does not imply that everyone is a guru in everything; no doubt some people are especially skilled in a specific area, but team members work together and should be learning new skills from each other.

    During task generation and estimation in Sprint Planning, choose something new and ask someone experienced in that area to have a subtask to help you.

    This is to make the team multi-skilled and reduce dependencies on individuals.

  44. Sometimes it can be unclear to The Scrum Team whether a PBI can be completed as required. For example the PBI "automatically package with Wise after the automatic build" requires investigation and experimentation to see if this is possible and to provide a meaningful estimate for the original.

    ProjectManagement DigaLittleDeeper
    Schedule time to dig a little deeper. There's always another layer to uncover
    Figure: Schedule time to dig a little deeper. There's always another layer to uncover

    How is experimentation done? In Agile software development, when you have an unknown, you do a spike PBI. A spike is a time boxed investigation with the output being the answer to an experiment or investigation and the resolution of an estimate for the original PBI.

    It is then best to write a new PBI “Investigate whether it is possible to automatically build with Wise”. This PBI can be more accurately estimated and the result will allow the original PBI to be estimated or revised.

    RuleEncouragingInvestigationStoriesBad Figure: Bad example – I want you to implement something, but I am not going to tell you what it is. How long will it take?

    To embark on the original PBI when it is inestimable would be irresponsible and leave The Team with a potentially impossible PBI and the risk of a failed sprint.

    All investigating PBIs must be timeboxed, otherwise the process of investigation can meander and never come to a conclusion.

    RuleEncouragingInvestigationStoriesGood Figure: Good example – The spike (time boxed investigation) comes first as it is impossible to estimate implementing something you do not know

    Note: This gives you work for future Sprints

    Tip: There is a further benefit of tagging 'spike' tasks with a consistent label. If your company takes up R & D tax incentives, then you need to be able to query for activities that were 'of an experimental nature'. In Australia this is a 15% credit on each dollar you spend on a developer.

  45. Working together as a team is hard. Especially with the distractions that are around as part of daily office life. You need all three partied to a Scrum Team, the Product Owner, the Scrum Master, and the Team, to work together to achieve the Sprint Goal.

    "Scrum defines three distinct roles that must work together as a Scrum team to produce a successful product. The Product Owner is responsible for understanding what stakeholders require, interpreting these requirements for the team, and providing clear prioritized direction. The team is composed of those people actively engaged in building the product. The team collectively and members individually are responsible for building the product according to the priorities and requirements provided by the product owner. The team is completely responsible for deciding how to achieve its goals and how to organize its work. Finally, the Scrum Master is responsible for the health of the process, reporting the progress of the team, and removing impediments to progress."


    With these roles come a number of promises between the three parties, the Product Owner, the Scrum Master, and the Team. These promises should be formalized so that everyone knows where they stand.

  46. Do you estimate “Business Value”?

    You do Scrum, but do you use the "Business Value" field?

    That's OK, most teams don't... but it is a shame, because developers go to the trouble of estimating 'Effort' and if you have Effort, all you need is Business Value and you can calculate ROI.

    Once you have ROI a Product Owner can use the ROI field to sort priority. Awesome.

    ROI (Return on Investment) is an unbelievably simply calculation.

    business value field
    Figure: Product Owners should be estimating the Business Value

    ROI = Business Value / Effort

    ...of course there are other factors to consider.

    E.g. Risk, Dependencies etc and you could make the formula more complicated....

    Priority = (Positive Value - Negative Value) + Risk + Dependencies / Effort

    ...but don't bother.

    The product backlog is just a list of items with rough estimates of both development 'Effort' and 'Business Value'. You will find that ROI will tell you great stuff. It is especially useful for finding the easy high value items to kick off a sprint.

    Product Owners are too busy for this

    If it is good enough for developers to estimate story points... then it is good enough for the Business to estimate Business Value. Usually devs will use the Fibonacci sequence, but since it is a good idea that the business guys use the same scale, it is best to switch to the doubling method of estimating - Do you know how to size user stories effectively?

    For example, if the "add rich text box" and "add sortable column headings on the grid" have the same business value of 3, the one with the smallest development effort will have higher priority (the ROI is greater).

    In summary, the simple calculated field ROI, can automatically order the backlog tasks for the Product Owner, makes estimating Business Value just good sense.

  47. Do you have a war room? (summary)

    The scrum team needs a place to gather for all the scrum ceremonies. This room should have useful information on the wall to help the team work more efficiently. We recommend having the following:

    Note: For co-located teams only.

    war room bad example
    Bad Example – No Product Roadmap is on the wall, so people can be out of sync with the future plans of the Product Owner

    war room good example
    Good Example – The Product Roadmap is visible at a glance

  48. Do you know your agility index?

    So you’re agile… or are you? Find out what you’re doing right and what things you can improve on by taking our quiz and finding out your agility index. Do this at each of your sprint retrospectives and ratchet up the quality with each sprint

    What’s My Agility Index? HowAttractiveAreYou.docx

  49. Having an electronic task board makes it easy for developers to keep track of tasks.

    These are the columns (aka swim lanes) you need:

    TFS Preview Task Board
    Figure: Good Example - a virtual client task board in action

    Figure: OK Example - a physical client task board in operation

    Near your task board, stick an SSW "Want to submit a User Story?"

    • Where to find their project portal
    • Who to contact with questions
    • How to add tasks to the task board

    Print out this PDF and fill in the 2 fields and stick it on own task board.

    Figure: Create an avatar for each person and stick them on the current task. You can find our User Story Cards here. You can write the Azure DevOps Work Item ID on each card.

  50. This is a very common question asked of teams using Scrum. The answer can depend on a lot of things, such as:

    • How big is the bug?
    • Can it be fixed right now?
    • How important is quality to the product?
    • Are there dedicated testers as part of the team?

    Regardless of your answers, there are basically two types of bugs: those found in code currently being developed (in-Sprint) and those found in code previously thought done (out-of-Sprint).

    In-Sprint bugs

    For stories that are currently in progress, here are some guidelines:

    Typically you want to fix all bugs discovered during the sprint or else they could impact the team’s ability to achieve its Sprint goal:

    • If it’s a small bug (< 1 hour to fix) and won’t impact the burndown, then just fix it
    • If it’s a larger bug (> 1 hour to fix) and won’t impact the ability to achieve the Sprint goal, then create a Bug work item, associate a Task and have a team member perform the fix during the Sprint
    • If it’s a larger bug (> 1 hour to fix) and will impact the ability to achieve the Sprint goal, then create a Bug work item to be prioritized (by the Product Owner) and to be fixed in a later Sprint; you may not be able to achieve your Sprint goal
    • If another team member finds the bug, then they should create a Bug work item and then the team decides if it can be fixed in the current Sprint or needs to be prioritized (by the Product Owner) to be fixed in a later Sprint, in which case you may not be able to achieve your Sprint goal The team decides how many hours “n” equals

    Out-of-Sprint bugs

    For stories that the team had previously considered done, here are some guidelines:

    • If the bug is not critical (i.e. a hotfix), then create a Bug work item to be prioritized and fixed in a later Sprint
    • For a critical hotfix, do whatever needs to be done to get the fix into production, knowing that your current Sprint commitments may be impacted Adjust the team’s capacity accordingly, especially if lots of hotfixes start occurring. General tip: don’t create an associated task to fix a bug until the Sprint in which the team commits to fix it

    See rule on Do you know how to handle Bugs on the Product Backlog? for how to work with bugs on your backlog.

    Extracted from Accentient’s Scrum Training by Richard Hundhausen.

  51. Part of the Scrum Master's (not ScrumMaster's) role is to protect the team from distractions so they can deliver on their commitments, to ensure agreed process is followed and to help all roles keep their promises.

    It is also important that team members do not allow themselves to get distracted and must work based on priority.

    Here is a good saying to remember: "It is very important I complete my sprint. Can this wait 1 week until the next sprint?".

    Any requests for work or distractions outside the scope of the project that take more than 15 minutes must be declined politely and the distraction notified to the Scrum Master, or, if the request comes from the Product Owner, it can be added as a new PBI as described in

    The only exceptions, where a Team Member can start the work before notifying the Scrum Master are:

    • Any critical production issues that absolutely requires the attention of the Team Member and nobody else is available
    • A client request for work when the Team Member is working on an internal project
    • Test please requests, if the total time taken from the Sprint for all Test Please requests is less than 8 hours

    In these 3 exceptional cases only, even if the Team Member doesn't get a response from the Scrum Master, the requestor can insist that the member starts the other work immediately.

    For details on promises, see the rule “Do you understand the implied contract (promises) between Members of the Scrum Team?”

  52. Pure Scrum dictates that the Scrum Master could be one of the developers on the team, but we find this is hard for a developer as he will be split between trying to do the work himself, while also ensuring that the Team still uses Scrum properly.

    We find that a better option is to use a separate Scrum Master so his only responsibility on the project is to ensure Scrum is used well and the Product Owner is informed of any developments.

  53. We all know that a visual image can make a complex process easy to understand. Having a visual image of the Scrum process helps everyone, including the product owner and interested stakeholders, understand the process and make sure the steps are being followed.

    Here is an image for your war room wall...

    SCRUMImage bad02
    Bad Figure: This image doesn't include the review and the retro

    SCRUMImage good
    OK Figure: This Scrum image is OK because it includes all the important steps including the Review and the Retro

    8Steps preview
    8 steps to scrum
    Good Figure: This Scrum image includes all the important steps from the initial meeting to the Review and Retro. Print this "SSW 8 Steps to Scrum pdf" and put it on your 'War Room' wall
    scrum twitter
    Figure: If you like this, retweet

  54. Do you know how DevOps fits in with Scrum?

    DevOps and Scrum compliment each other very well. Scrum is about inspecting and adapting with the help of the Scrum ceremonies (Standup, Review, Planning and Retro). With DevOps it's all about Building, Measuring and Improving with the help of tools and automation.

    2016 06 08 14 33 24
    Figure: Traditional Scrum Process

    2016 06 08 14 30 33
    Figure: Scrum with DevOps

    With DevOps, we add tools to help us automate slow process like build and deployment then add metrics to give us numbers to help quantify our processes. Then we gather the metrics and figure out what can be done to improve.

    For example with Exception Handling, you may be using a tool like or Elmah and have 100s of errors logged in them. So what do you do with these errors? You can:

    1. Add each one to your backlog
    2. Add a task to each sprint to "Get exceptions to 0"

    The problem with the above is that not all exceptions are equal, and most of the time they are not more important than the planned PBIs being worked on. No developers like working a whole sprint just looking at exceptions. What should happen is:

    1. Have the exceptions visible in your development process (i.e. using Slack, adding as something to check before Sprint Planning)
    2. Triage the exceptions, either add them to the backlog if they are urgent and important
    3. Add ignore filters to the exception logging tool to ignore errors you don't care about (e.g. 404s)
    4. Prioritize the exceptions on the backlog

    The goal here is to make sure you're not missing important and to reduce the noise. You want these tools to help support your efforts and make your more productive and not just be another time sink.

  55. When doing a Spec Review, always bring printed pdf file SSW Story Cards.

    • Complete the story card with the client
    • Teach the clients how to complete story cards by themselves
    • Go to Project Portal (E.g. Azure DevOps or GitHub) and enter the story
    • Write the Story ID field on the card
    • Stick the cards on the project room wall maximizing visibility

    Figure: SSW Story Card

We open source. Powered by GitHub