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

DDDEU2023 Keynote - Systems thinking in large-scale modeling

xinyao
June 11, 2023

DDDEU2023 Keynote - Systems thinking in large-scale modeling

To understand and impact a large-scale environment (a team, an enterprise, a society), we need effective modeling. Over the years DDD has gained a visible foothold in software-centric corporate change agendas.

In my work as a DDD evangelist and sociotechnical architect in large organizations, I’ve lived and breathed DDD to decouple domains and systems, to kickoff greenfield initiatives, to deploy brownfield modernization, and to design reteaming using the Inverse Conway Maneuvre and Team Topologies.

All that hard work has brought me many a pat on the shoulder. But time after time I’ve been surprised by how I/we could make things worse by attempting to make things better. I’ve been frustrated to witness bubbly energy and DDD enthusiasm from event storming workshops and alike evaporate like a deflated balloon. Improvements remained temporary and local. New practices failed to gain widespread adoption. I have to admit with absolute candor that it is so very hard to make lasting impact with DDD, or whatever else technology or tooling du jour.

In this talk, I will share my observations through the systems thinking lens, of what happened in a large change initiative in a big bank, where DDD played a central role. You will hear examples of sociotechnical systems dynamics and episodes about shifting dominance of competing feedback loops. You will be invited to partake in a postmortem forensic of what could have happened, what unfortunately didn’t happen, and the many what-if’s of alternate realities, or pasts. For people new to systems thinking, a positive side benefit can be a sneak peak into systems modeling building blocks and systems archetypes.

As a community, we’ve come a long way modeling software-centric systems, thanks to practice like DDD, architecture and Team Topologies. But what about the runtime dynamics of large human systems in our working environment, especially when such systems are full of fixes that don’t work? As software professionals, can we just tell jokes about SAFe, about policy makers in our company who can copy the Spotify Model, but not paste it? Or should we give the usual shrug – “it’s the system’s fault”?

From a systems standpoint, we are part of the same mess. If we can become better at seeing and naming the elephants in the room, not as random events, but as systemic patterns described through a consistent systems language, then the current messy reality is no longer our enemy but our ally. It can become a generative force for us to identify leverage and sustain influence in large organizational spaces.

I hope this talk will spark interest in system dynamics modeling. It is a call to action for boundary spanners and design-oriented change agents to explore abstractions, heuristics, modeling and visualization techniques to articulate and reason about dynamic system behavior.

How can we architect shared experiences to surface mental models so they can be challenged, improved and no longer stand in the way of change? With the rising initiative fatigue in large enterprises, how do we collectively discover leverage points, design and deploy systemic interventions with long lasting impacts?

xinyao

June 11, 2023
Tweet

More Decks by xinyao

Other Decks in Design

Transcript

  1. Systems Thinking in Large-​Scale Modeling
    #Midjourney
    DDD Europe, June 2023

    View Slide

  2. Contextualizing DDD &
    architecture in large change efforts
    Conversation facilitator
    Boundary spanner, connector
    Idea spreader, change maker
    About me
    01
    02
    03
    Xin Yao
    Independent consultant
    Lives in Copenhagen, Denmark
    Loves gardening, yoga, sci-​
    fi, theater,
    good food, hanging out with friends and family
    @settling_mud
    [email protected]
    @[email protected]
    /in/xinxin/

    View Slide

  3. A tale of transformation at a large bank
    Systems
    thinking
    basics
    System
    dynamics
    modeling
    System
    leverage
    What we will cover today

    View Slide

  4. A tale of transformation at a large bank
    Systems
    thinking
    basics
    System
    dynamics
    modeling
    System
    leverage

    View Slide

  5. Context: A large Nordic bank
    3,5 m+ customers
    (B2C + B2B)
    22,000+ employees
    4,000+ in engineering
    (10 countries)
    +150 years old
    2000+ IT systems

    View Slide

  6. Organizations as sociotechnical systems
    Social systems
    (Complex)
    Engineered systems
    (Complicated)
    [software]
    [organization]
    The environment

    View Slide

  7. The next great frontier is to understand
    human systems.
    ~Jay Forrester

    View Slide

  8. Systems building blocks: feedbacks & delays
    Reinforcing loop Balancing loop
    Births Population
    +
    delay
    +
    Deaths
    +
    delay
    -

    View Slide

  9. Nonlinearity: Cause and effect can be
    far apart in time and space
    linear cause & effect
    Non-​
    linear feedback loop
    There’s a fundamental mismatch between
    the nature of reality in complex systems and
    our predominant ways of thinking about
    that reality.
    The first step is correcting that mismatch is
    to let go of the notion that cause and effect
    are close in time and space.
    ~Peter Senge
    now
    in one
    year

    View Slide

  10. The eventual consistency time span in a social
    system is much larger than that in an
    engineered system.
    Temporal and spatial systems modeling

    View Slide

  11. Graphic: Juliet Young
    Higher leverage at a different time, and place

    View Slide

  12. A tale of transformation at a large bank
    Systems
    thinking
    basics
    System
    dynamics
    modeling
    System
    leverage

    View Slide

  13. 2020: Reorg & change initiative
    DDD & API
    evangelism
    Cloud &
    DevOps
    evangelism Agile coaching
    Decoupled &
    reusable APIs
    Software delivery speed
    Agility,
    autonomy
    +
    +
    +
    +
    Engineering
    maturity
    +
    +
    +
    +
    Enabling tribe Enabling tribe Enabling tribe
    Journey/Platform tribes
    Source: Henrik Kniberg & Anders Ivarsson
    delay
    delay
    delay

    View Slide

  14. DDD reinforcing feedback loop
    Facilitated DDD
    workshops
    Eagerness to
    practice DDD
    Perceived value of DDD
    API delivery speed
    Domain modeling
    quality
    Domain
    understanding
    +
    +
    +
    +
    +
    +
    delay
    delay

    View Slide

  15. Facilitated DDD
    workshops
    Eagerness to
    practice DDD
    Perceived value of DDD
    API delivery speed
    Domain modeling
    quality
    Domain understanding
    +
    +
    +
    +
    +
    + Availability of DDD
    enabling capacity
    Utilization of DDD
    enabling team
    Demand on DDD
    workshop facilitators
    +
    +
    +
    -
    DDD enabling capacity limits DDD "growth"
    Reinforcing loop Balancing loop

    View Slide

  16. Pressure to increase
    WIP for DDD
    enabling team
    Pressure on DDD evangelists
    to rush domain discovery
    Premature
    convergence
    DDD enabling
    team attrition
    Stress & burn-​
    out in
    DDD enabling team
    Idle API engineers
    in enabling team
    API specification
    velocity per
    domain
    Intervention makes matters worse
    Facilitated DDD
    workshops
    Eagerness to
    practice DDD
    Perceived value of DDD
    API delivery speed
    Domain modeling
    quality
    Domain understanding
    +
    +
    +
    +
    +
    +
    -
    -
    - +
    +
    +
    +
    +

    View Slide

  17. System archetype:
    Limit to growth/success
    Source: William Braun - "The System Archetypes"
    Structure Trend

    View Slide

  18. Systems vocabulary
    System variables
    Causal links Delays
    Feedback loops
    now
    in one
    year
    problem
    symptom
    Symptomatic
    solution
    Fundamental
    solution
    +
    -
    +
    -
    side
    effect
    +
    -
    nouns, verbs sentences, scenes Recurring plot lines
    System
    archetypes
    example

    View Slide

  19. Why do we keep seeing
    the same problems
    recur over time?
    What leverage do we
    have in impacting the
    system's underlying
    structure?
    diagnostic use prospective use
    How do system archetypes help us
    • Limits to Growth (aka Limits to Success)
    • Shifting the Burden
    • Eroding Goals
    • Escalation
    • Success to the Successful
    • Tragedy of the Commons
    • Fixes that Fail
    • Growth and Underinvestment
    • Accidental Adversaries
    • Attractiveness Principle
    ...
    System archetypes

    View Slide

  20. Domain-​
    driven APIs
    Challenge to
    deliver DDD-​
    enabled domain
    APIs
    Reliance on DDD
    enabling team
    +
    Perceived need to
    act on DDD skill
    gaps
    +
    Invested time to
    improve team's own
    DDD capacity
    +
    -
    +
    delay
    Alleviated resource
    shortage
    -
    -
    root cause
    Dependency
    High workload

    View Slide

  21. System archetype: Shifting the burden
    Source: William Braun - "The System Archetypes"
    Structure Trend

    View Slide

  22. Fast flow of change
    Value delivery rate
    +
    Team independence
    (X-​
    as-​
    a-​
    service)
    +
    Stable platform APIs
    +
    +
    Changes in
    environment (e.g.
    regulatory
    requirements)
    Need for platform
    rethink (different
    boundaries?)
    Need for coordination
    across teams
    Risk to miss fast flow KPI
    (embarrassment)
    +
    +
    Pressure to find a
    workaround (no
    interface change)
    +
    Accidental complexity
    (Business debt)
    +
    +
    -
    Is "flow" a non-​
    negotiable goal
    DDD to discover
    platform boundaries
    +
    Local optimization = negative externality
    KPI
    delay
    constraint =
    accidental
    complexity
    +

    View Slide

  23. Slowing down growth gives the balancing loop with
    limits and delays, time to function ... The optimal rate in
    a system is far less than the fastest possible growth.
    ~Donella Meadows
    Optimizing the whole

    View Slide

  24. What is Systems Thinking
    Interdependencies
    Living systems
    Many parts
    Synthetic holism Analytical reductionism
    Synthetic holism Analytical reductionism
    Graphics: Systems Innovation Network
    Mechanistic thinking Systems thinking

    View Slide

  25. A tale of transformation at a large bank
    Systems
    thinking
    basics
    System
    dynamics
    modeling
    System
    leverage

    View Slide

  26. How do fish explain the water they are in?

    View Slide

  27. Systems dynamics modeling:
    Moving to higher levels of abstraction
    problem
    symptom
    Symptomatic
    solution
    Fundamental
    solution
    +
    -
    +
    -
    side
    effect
    +
    -
    now
    in one
    year
    Structures of which
    we are unaware
    hold us prisoner.
    We can only grasp a
    complex system
    through abstract
    modeling.
    Reality
    Models

    View Slide

  28. Hurray! Now we can use systems dynamics
    modeling to understand and impact systems.

    View Slide

  29. You are only seeing my view of the world
    My experiences
    My data selections
    My perspectives
    My assumptions
    My conclusions
    My beliefs
    "The optimist sees the doughnut, the pessimist sees the hole."
    ~ Oscar Wilde

    View Slide

  30. You are not even seeing my view of the world

    View Slide

  31. Systems understanding: The Iceberg Model
    Graphics: Academies For Systems Change
    API delivery
    speed =
    business value
    APIs in prod pr. month
    Systems archetype
    Our team
    delivered no API
    this month. Observable
    Hidden

    View Slide

  32. Low leverage point: event-​
    driven systems
    A system
    input output
    Event
    handler
    Gain
    achieved
    Pain
    relieved
    events
    Trends
    Structures
    Mental
    models
    Credit: Systems Innovation Network
    Event
    issue, problem, goal

    View Slide

  33. React
    High leverage point: mental models
    events
    Trends
    Structures
    Mental
    models
    Anticipate
    Design
    Transform
    Credit: Systems Innovation Network

    View Slide

  34. A transformation isn't an event. It's a progressive
    accumulation of habits.
    -​Andrew Clay Shafer

    View Slide

  35. Culture (collective habits) for an organization is
    like personality for a person. Your energy to try to
    change it will tend to make it stronger.
    ~Peter Senge

    View Slide

  36. My worst event storming workshop

    View Slide

  37. Workshop retrospective
    You are too in
    love with your
    model :-).
    We don't see
    forest, only trees
    You=Me
    model=event storming

    View Slide

  38. We perceive the world through our
    individual filters
    Source: Jeff Patton

    View Slide

  39. Externalize our thinking visually
    "Make the implicit explicit"
    Source: Jeff Patton

    View Slide

  40. Combine & refine - integrate perspectives
    Source: Jeff Patton

    View Slide

  41. discussion
    Reflective conversation
    Credit: David Bohm, Peter Senge, Chris Argyris
    advocacy
    advocacy inquiry
    Here is how I see it.
    Here are the facts that
    support how I see it
    I know I don't see the
    whole picture, how
    do you see it?
    Here is what I think
    this data/episode
    means...
    Do you see it
    differently? Oh,
    that's a perspective
    I haven't considered
    Do you see gaps in
    my reasoning?
    Here is my view and
    here is how I arrived
    at it.
    dialogue

    View Slide

  42. What is it about this
    situation, and about
    me or others, that is
    making open
    exchange difficult?
    The questions that got us unstuck
    What are you
    most passionate
    about
    contributing to in
    this domain?
    What is the future
    we dream of for this
    domain?

    View Slide

  43. What happened after event storming
    Collective
    reflection
    Inquiry &
    advocacy

    View Slide

  44. To DDD or not to DDD
    Q: Why do you still
    want to finish the
    DDD Workshop series?
    A: You were trying to
    convince us before.
    Now we are testing
    ideas together.

    View Slide

  45. To enable is to lead
    "Will you follow me?"
    Task-​
    oriented
    Skill-​
    oriented
    Relationally
    oriented

    View Slide

  46. Undercover systems change with DDD
    DDD consultancy/
    facilitation
    DDD output
    +
    +
    Reflective
    converations
    +
    Generative,
    adaptive
    capacity
    +
    +
    The ideal Present (or future?)
    "DDD change agent"

    View Slide

  47. Life is not a problem to be
    solved, but a reality to be
    experienced.
    ~ Søren Kierkegaard

    View Slide

  48. A tale of transformation in a large bank
    Systems
    basics
    Systems
    dynamics
    modeling
    Systems
    leverage
    What we've covered today

    View Slide

  49. Thank you
    @settling_mud
    [email protected]
    @[email protected]
    /in/xinxin/
    Contact me if you need an undercover change agent :-)

    View Slide