Developing and Delivering Products Professionally / Emergent Software Development

Getting to Done: Balancing Emergence and Delivery

We do not know everything about what is needed and how to deliver it before we start working. This is where the concept of emergence comes in.

Emergence implies that all solutions to all problems will become clear as we work, not simply by talking about them

1 - New work is being assigned to the Development Team.

A Scrum Master can help protect the Scrum Team from outside distractions

Having support from your team when you need to say "not now" is helpful.

Development Team and the Product Owner should negotiat

Remember that our Sprint Goal should not be changed during the Sprint.

2 - Poor Product Backlog refinement causes the "what" to grow during the Sprint

full Scrum Team participate in Product Backlog refinement

Definition of Ready

3 - Not discussing the "how" during Sprint Planning.

This is a large item. How can we break this down into smaller pieces the team can tackle together?

Do we have everything we need as a team to meet our Definition of Done and achieve the Sprint Goal?

What dependencies will drive how we deliver on the Sprint Goal?

Break the Product Backlog Items into tasks or to-dos

The Importance of Vertically Slicing Architecture

Little database, little API, little UI