Understanding and Apply Scrum [P7]: Done - Getting started with a DoD Flashcards

1
Q

What does the DoD create?

A

transparency by providing everyone a shared understanding of what work was completed as part of the Increment

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What happens if a product backlog item (PBI) does not meet the DoD?

A

it cannot be released or even presented at the Sprint Review. Instead, it returns to the Product Backlog for future consideration

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

How does the dev team create a DoD from a high level POV?

A
  • needs to decide what Done means within the organizational context and the product domain
  • need to sit down and create a list of things that must be true for every Increment of software that they deliver
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Why do we need a DoD?

A
  • So we know what working software means
  • thus know that it is shippable and meets the agreed acceptable standard
  • need it for predictable delivery
  • PO can’t reject sprint backlog item unless they have a reference of what done means
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are some core characteristics of a DoD?

A
  • A short, measurable checklist
  • Mirrors shippable
  • No further work
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Explain the “A short, measurable checklist” character of a DoD?

A

try and have things on your DoD that can be measured, that you can test the outcome, preferably in an automated fashion

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Explain the “Mirrors shippable” character of a DoD?

A
  • While you might not have shipped the product (although recommended!), you should have that choice
  • PO should be able to say at the sprint review, awesome let’s ship
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Explain the “No further work” character of a DoD?

A
  • no more work required from dev team to ship product to production
  • any additional work means YOU ARE NOT DONE and it takes away from the PO capacity for the next iteration
  • ideally, you have a fully automated process for delivering software and use staggered iterations for delivery
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Tips for writing you first DoD?

A

run a workshop with dev team, PO and relevant stakeholders (and any people who get stage gates after devs are Done)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Suggestions for things to put on DoD?

A
  • Increment Passes SonarCube checks with no Critical errors
  • Increment’s Code Coverage stays the same or gets higher
  • Increment meets agreed engineering standards e.g. naming conventions, tests, wiki for list
  • Acceptance Criteria for Increment pass - reqs met
  • Acceptance Tests for Increment are Automated
  • Security Checks Pass on Increment
  • Increment meets agreed UX standards
  • Increment meets agreed Architectural Guidelines
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Elaborate on “Increment Passes SonarCube checks with no Critical errors”

A

You will be increasing over time, so maybe you need to say “Code Passes SonarCube checks with no more than 50 Critical errors” then work on it over time.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Elaborate on “Increment’s Code Coverage stays the same or gets higher”

A

Looking at a specific measure, like 90%, of code coverage is a read hearing and tells you nothing of code quality. However, it might be advantageous to monitor and measure for adverse change in code coverage, and always advocate for TDD practices

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Elaborate on “Increment meets agreed engineering standards e.g. naming conventions, tests, wiki for list”

A

You should decide rules for naming of methods, tests, variables and everything in-between. Start small and add over time. Link to your agreed standards on a Wiki and continuously improve and expand your rules. Automate if possible.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Elaborate on “Acceptance Criteria for Increment pass - reqs met”

A

Making sure you at least meet the prescribed criteria is a laudable goal and automated via ATDD where possible

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Elaborate on “Acceptance Tests for Increment are Automated”

A

Make sure that you automate all of your tests. If you think something will break, then you should have a test for it.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Elaborate on “Security Checks Pass on Increment”

A

Use an automated tool as part of your build and check for known security vulnerabilities. You will not find all of your security issues, but at least don’t do things we know to be reflective of poor Security.

17
Q

Elaborate on “Increment meets agreed UX standards”

A

Wiki page and make sure that you check it twice. If you are not using an automated DoD entry, then you need to agree as a Team that you have met the criteria.

18
Q

Elaborate on “Increment meets agreed Architectural Guidelines”

A

Wiki’s are fantastic for this, but automate what you can

19
Q

What is the DoD a commitment to?

A

Quality for the increment

20
Q

Why do we need to reflect on our DoD?

A

keep improving quality

21
Q

When should we reflect on our DoD?

A

All the time - are we currently meeting DoD? Can we improve our DoD?

Definitely at retros

22
Q

When should we improve our DoD?

A
  • when we realise that it needs improvement
  • make sure the change to it does not endanger the sprint goal
23
Q

What does Scrumble mean?

A
  • stop sprint because of poor quality and fix it
  • called this as when the devs stumbled because something is missing
24
Q

What are our options if we realise we have a product performance issue?

A
  • 1) stop the sprint and fix the issue (scrumble)
  • 2) integrate this new knowledge into your product cycle —> keep working and add what you need to PB, deliver improvements over next sprints that mitigate and resolve issue
  • if it is a significant issue, you should stop and fix the problem so that you have a usable increment before you continue sprinting and adding new features