Upgrade to Pro — share decks privately, control downloads, hide ads and more …

From Business Goals to Software Requirements - ...

From Business Goals to Software Requirements - with Impact Mapping and Domain Storytelling

Building software that fulfills business goals is the core task of software development teams. To turn business goals into software, stakeholders must have shared artifacts to align their needs and priorities. Those artifacts have many names: requirements, features, user stories, use cases, specifications, etc.

As Domain-Driven Design practitioners, we believe that software requirements are best created as a result of a collaborative modeling process. Impact Mapping and Domain Storytelling are collaborative modeling methods that support conversations about requirements. They help you to approach requirements from two different angles:
- Linking business goals with impacts that a software product has on its users.
- Designing cohesive and viable business processes as Domain Stories.

In this hands-on workshop, we will show you how:
- Impact Mapping and Domain Storytelling work together
- to apply these methods on a case study in small groups
- to learn to have conversations about WHY you need to build WHAT
- to turn individual requirements into business processes

Finally, we will give you some pointers on how to organize requirements and drill down to implementable domain models.

Mufrid Krilic

June 12, 2024
Tweet

More Decks by Mufrid Krilic

Other Decks in Technology

Transcript

  1. From Business Goals to Software Requirements with Impact Mapping and

    Domain Storytelling NDC Oslo 2024 Mufrid Krilic, Domain-Driven Design Coach CoWork, Norway
  2. What can you expect to learn in next 2 hours?

    Learn that tools to assist you exist and get encouraged to try it for yourself Understanding there is a way to navigate between: Business Intent => Actionable Requirements
  3. The Purpose • One workshop method => Good • Two

    workshop methods => Great • Combining different methods?
  4. Workshop Facilitation – The Real Value Combining different methods to

    be able to adapt to dynamic and complex environments
  5. Agenda When What 0900 Intro  You are Here Part

    1 From Business goals to Impacts Impact Mapping Demo 30 minutes Exercise/Skill Builder Q&A 1000-1020 Break Review Part 1 Part 2 From Impacts to Software Requirements Combining Impact Mapping and Domain Storytelling Domain Storytelling Demo 30 minutes Exercise/Skill Builder Q&A 1115 Wrap-up with references for further study
  6. Questions at menti.com 5974 1687 Impact Mapping ▪ “An impact

    map is a visualization of scope and underlying assumptions, created collaboratively, by (senior) technical and business people” ▪ Gojko Adzic, Impact Mapping, the book impactmapping.org
  7. Questions at menti.com 5974 1687 Four questions to ask to

    facilitate the conversation about business intent! • Business goal Why? • Role/Actor Who? • Impact How? • Deliverable • Experiment What? Software Goes Here
  8. Questions at menti.com 5974 1687 Finding What-part in the Impact

    Map • …is discovering software requirements by connecting deliverables with impacts and goals • Part 2 of the Workshop!
  9. Questions at menti.com 5974 1687 Impact Mapping Exercise 1. Add

    more actors to the map 2. Add impacts (for new or existing actors) to the map a) Challenge each other • Did you really capture the behavior change? • Is it measurable? 3. Prioritize the impact with the most business value a) According to your own assessment
  10. Questions at menti.com 5974 1687 Agenda When What 0900 Intro

    Part 1 From Business goals to Impacts Impact Mapping Demo 30 minutes Exercise/Skill Builder Q&A 1000-1020 Break Review Part 1  You are here Part 2 From Impacts to Software Requirements Combining Impact Mapping and Domain Storytelling Domain Storytelling Demo 30 minutes Exercise/Skill Builder Q&A 1115 Wrap-up with references for further study
  11. Different kinds of Domain Stories • Highlight • bottlenecks •

    “pain” As-Is • Highlight • Requirements To-Be Discovers What-part of the Impact Map Specifies What-part of the Impact Map
  12. Collaborative Modeling! Right people in the room! Domain experts explain

    the business process as a scenario or example Visualize! Facilitator visualizes the scenario as a Domain Story Repeat! Domain experts confirm if the visualized story is correct
  13. Domain Story AS-IS: Movie Scheduling To understand the impact: Highlight

    bottlenecks/pain and discover What-part of the Impact Map
  14. Questions at menti.com 5974 1687 No Branching or Parallel Flows

    Focus on what happens in the domain not on what could happen
  15. Questions at menti.com 5974 1687 ▪ An actor should not

    occur more than once in a story ▪ A work object can occur multiple times Make Story Readable!
  16. Domain Story TO-BE: Movie Scheduling To achieve the impact: Highlight

    the requirements and specify What-part of the Impact Map
  17. Questions at menti.com 5974 1687 Domain Storytelling Exercise • If

    you are happy with the impacts you found in Part 1 • Create To-Be Domain Story for one of the impacts in your map • Otherwise • Create To-Be Domain Story for one of the suggested impacts • Highlight the requirements
  18. Questions at menti.com 5974 1687 Core Domain • The thing

    that distinguishes you from the competitors • “Not every part of the system will be well-designed” • Generic subdomain • Supporting subdomain
  19. Questions at menti.com 5974 1687 Extracting Core Domain from Impact

    Map Business goals and impacts give you hints on what is the current most important thing for the organization
  20. Product Architecture Which users are we tailoring our products for?

    The cost of customizing the product for diverse user groups The cost of developing separate products for separate user groups
  21. Software Architecture Aligning system boundaries with business intent Re-usable generic

    domain model that can be adapted to serve needs of multiple user groups Specific domain model highly aligned with needs of specific user groups
  22. Questions at menti.com 5974 1687 Extracting Boundaries from Domain Stories

    Communication paths between the actors and the systems give you hint on subdomains and data ownership
  23. Book by Gojko Adzic impactmapping.org Impact Mapping: Making a big

    impact with software products and projects