$30 off During Our Annual Pro Sale. View Details »

Cultivating Architecture (2022)

Cultivating Architecture (2022)

Presented at Xpand Jordan 2022

Birgitta Boeckeler

October 23, 2022
Tweet

More Decks by Birgitta Boeckeler

Other Decks in Technology

Transcript

  1. Cultivating Architecture
    Birgitta Böckeler | @birgitta410
    October 2022

    View Slide

  2. Autonomous Teams

    View Slide

  3. https://agilemanifesto.org/

    View Slide

  4. Autonomous Teams

    View Slide

  5. Motivation
    Flexibility
    Scaling
    Why autonomy?

    View Slide

  6. Decentralisation
    Autonomous Teams
    && Architecture

    View Slide

  7. “We need some governance!”

    View Slide

  8. manipulate
    control
    rule
    restrain
    guide
    serve as
    deciding principle
    have decisive
    influence
    Exert a determining or
    guiding influence
    to govern

    View Slide

  9. guide
    serve as
    deciding principle
    have decisive
    influence
    Exert a determining or
    guiding influence
    rule
    to govern

    View Slide

  10. [ Side note on
    automation of
    governance ]

    View Slide

  11. Decision
    Records
    Default
    Practices
    Business Goals
    Architecture
    Characteristics
    Architecture
    Principles
    Building blocks of a
    Guidance-based approach

    View Slide

  12. Decision
    Records
    Default
    Practices
    Business Goals
    Architecture
    Characteristics
    Architecture
    Principles

    View Slide

  13. Push & pull the
    business context

    View Slide

  14. https://blog.pragmaticengineer.com/
    the-product-minded-engineer/
    Gergely Orosz
    Reward “product-
    minded engineers”

    View Slide

  15. View Slide

  16. Decision
    Records
    Default
    Practices
    Business Goals
    Architecture
    Characteristics
    Architecture
    Principles

    View Slide

  17. Architecture
    Characteristics

    View Slide

  18. Accessibility
    Auditability
    Availability
    Compliance
    Configurability
    Data integrity
    Distributability
    Extensibility
    Internationalization
    Monitoring
    Performance
    Portability
    Resilience / Fault
    Tolerance
    Scalability
    Security
    Supportability
    Usability
    Upgradability
    Responsiveness
    Testability
    Recoverability
    Data Privacy
    Find your focus

    Traceability

    View Slide

  19. Prioritise
    Offline
    Availability
    Portability
    Data privacy


    View Slide

  20. Prioritise

    View Slide

  21. Decision
    Records
    Default
    Practices
    Business Goals
    Architecture
    Characteristics
    Architecture
    Principles

    View Slide

  22. https://www.slideshare.net/EoinWoods1/using-software-architecture-principles-in-practice
    “A declarative statement made with the intention
    of guiding architectural design decisions in order
    to achieve one or more qualities of a system.”
    - Eoin Woods
    Architecture Principles

    View Slide

  23. Statement
    Team
    Decisions System
    Qualities
    Team
    Decisions
    Team
    Decisions
    Team
    Decisions
    guide
    lead
    to
    Architecture
    Characteristics

    View Slide

  24. Example
    http://engineering-principles.onejl.uk/
    “A declarative statement made with the
    intention of guiding architectural
    design decisions in order to achieve one
    or more qualities of a system.”

    View Slide

  25. http://engineering-principles.onejl.uk/
    http://pubs.opengroup.org/architecture/togaf8-doc/arch/chap29.html
    in order to achieve one or more
    qualities of a system.
    made with the intention of guiding
    architectural design decisions
    A declarative statement

    View Slide

  26. http://engineering-principles.onejl.uk

    View Slide

  27. Sam Newman, “Building Microservices”
    Rationale
    Implications

    View Slide

  28. Facts over
    Opinions
    Hypothesis-driven
    development
    Data
    democratization
    Enter new
    market X
    Customer
    centricity

    View Slide

  29. Authorizations are
    role-based
    Eliminate integration
    databases
    Do ongoing user
    research
    Design for Pace of
    Change
    Build Differentiators
    Open Integration
    Standards
    Reusable
    Components
    Scale Horizontally
    Cloud Native
    Production Ready
    Automate Repetitive
    Tasks
    Clean Code
    Continuous Delivery
    Consistent
    Environments
    Maintainability
    Performance
    Importance
    Release Early and
    Often
    Security First
    Loosely Coupled
    Security,
    Compliance and
    Data Privacy
    AWS First
    Be Bold
    Data-driven/
    metric-driven
    Infrastructure as
    Code
    Have a
    multidisciplinary
    team
    Eliminate accidental
    complexity
    Consistent
    interfaces and data
    flows
    Small and Simple
    Smarts in the
    Nodes, not the
    Network
    Encapsulate legacy
    Minimal
    customisation of
    COTS/SaaS
    Organise around
    Business
    Capabilities
    Consolidate and
    cleanse data
    Minimize technology
    variation
    Cleaning is part of
    work well done
    You build it, you run
    it
    Apply principle of
    least privileges
    Data is a shared
    asset
    Small independent
    services
    Facts over Opinions
    Autonomy over
    Economies of Scale
    Decisions at latest
    responsible moment
    Single Source of
    Truth
    Data freshness
    Domain Integrity
    Sensitive data are
    exchanged securely
    Existing experiences
    over different
    variations
    Asynchronous
    interactions over
    synchronous coupling

    View Slide

  30. Authorizations are
    role-based
    Eliminate integration
    databases
    Do ongoing user
    research
    Design for Pace of
    Change
    Build Differentiators
    Open Integration
    Standards
    Reusable
    Components
    Scale Horizontally
    Cloud Native
    Production Ready
    Automate Repetitive
    Tasks
    Clean Code
    Continuous Delivery
    Consistent
    Environments
    Maintainability
    Performance
    Importance
    Release Early and
    Often
    Security First
    Loosely Coupled
    Security,
    Compliance and
    Data Privacy
    AWS First
    Be Bold
    Data-driven/
    metric-driven
    Infrastructure as
    Code
    Have a
    multidisciplinary
    team
    Eliminate accidental
    complexity
    Consistent
    interfaces and data
    flows
    Small and Simple
    Smarts in the
    Nodes, not the
    Network
    Encapsulate legacy
    Minimal
    customisation of
    COTS/SaaS
    Organise around
    Business
    Capabilities
    Consolidate and
    cleanse data
    Minimize technology
    variation
    Cleaning is part of
    work well done
    You build it, you run
    it
    Apply principle of
    least privileges
    Data is a shared
    asset
    Small independent
    services
    Facts over Opinions
    Autonomy over
    Economies of Scale
    Decisions at latest
    responsible moment
    Single Source of
    Truth
    Data freshness
    Domain Integrity
    Sensitive data are
    exchanged securely
    Existing experiences
    over different
    variations
    Asynchronous
    interactions over
    synchronous coupling
    Focus
    Consensus
    Official Blessing
    Why bother with your own
    principles?

    View Slide

  31. How to find your principles?

    View Slide

  32. Goals
    What’s holding us
    back today?
    What’s moving
    us forward today?
    Risks
    Strengths
    Opportunities
    Threats
    Weaknesses
    Cross-team
    relevance
    Business
    Goals
    Architecture
    Characteristics

    View Slide

  33. View Slide

  34. Decision
    Records
    Default
    Practices
    Business Goals
    Architecture
    Characteristics
    Architecture
    Principles

    View Slide

  35. Sensible Default Practices
    Thoughtworks Technology Podcast, “Starting out with sensible default practices”
    https://www.thoughtworks.com/en-de/insights/podcasts/technology-podcasts/sensible-defaults

    View Slide

  36. Technology
    Radar
    https://thoughtworks.com/radar

    View Slide

  37. Build your own
    Technology Radar
    https://opensource.zalando.com/tech-radar/

    View Slide

  38. Promising, experimenting with this on one or more teams
    TRIAL
    https://www.thoughtworks.com/insights/blog/using-thoughtworks-technology-radar-track-governance
    Proven to work within this organisation, well supported
    ADOPT
    Evaluating for potential experiments, under active research
    ASSESS
    Deprecated, don't start new projects using this
    HOLD
    Level of guidance

    View Slide

  39. Decision
    Records
    Default
    Practices
    Business Goals
    Architecture
    Characteristics
    Architecture
    Principles

    View Slide

  40. Decision Records
    https://cognitect.com/blog/2011/11/15/documenting-architecture-decisions

    View Slide

  41. Business Goals
    are connected
    Architecture
    Characteristics
    are defined
    Decisions
    Records
    are documented
    Default
    Practices
    are documented
    and evolved
    Architecture
    Principles
    are continuously
    discussed, understood
    and evolved
    Building blocks of a
    Guidance-based approach

    View Slide

  42. CULTIVATING ARCHITECTURE
    How to make it
    effective?

    View Slide

  43. Autonomy
    Trust
    Voice
    Westrum
    Organizational
    Culture
    Software
    Delivery
    Performance
    Forsgren et al, State of DevOps Report 2018
    https://puppet.com/resources/report/2018-state-devops-report
    predictive relationship
    Climate for Learning

    View Slide

  44. guide
    serve as
    deciding principle
    have decisive
    influence
    Exert a determining or
    guiding influence
    rule
    foster learning culture
    to govern
    telling people
    what to do

    View Slide

  45. CULTIVATING ARCHITECTURE
    Approach governance
    through a learning lens
    Nudge effectively

    View Slide

  46. https://www.bi.team/publications/east-four-simple-ways-to-apply-behavioural-insights/

    View Slide

  47. “Harness the power
    of defaults”
    “Show that most people perform
    the desired behaviour”
    “Prompt people
    when they are likely
    to be most receptive”
    “Design rewards
    and sanctions for
    maximum effects”

    View Slide

  48. Business Goals
    are connected
    Architecture
    Characteristics
    are defined
    Decisions
    Records
    are documented
    Default
    Practices
    are documented
    and evolved
    Architecture
    Principles
    are continuously
    discussed, understood
    and evolved
    Building blocks of a
    Guidance-based approach
    Learning culture Effective nudging

    View Slide

  49. Cultivating Architecture
    Birgitta Böckeler | @birgitta410

    View Slide