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

Agile Architecture

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest. →
Avatar for Brent Pabst Brent Pabst
February 20, 2016

Agile Architecture

Building an architecture to support the development of a platform, various products, and sustaining massive growth-fueled change while operating in an agile environment.

Avatar for Brent Pabst

Brent Pabst

February 20, 2016

More Decks by Brent Pabst

Other Decks in Technology

Transcript

  1. The Basics • Agile • Able to move quickly and

    easily. • Architecture • The art or practice of designing and constructing something. public void ExplainAgileArchitecture() { if ("Agile" == "Fast" && "Art" == "Slow") { "Agile Architecture" != "Fast"; } }
  2. Common Organizational Challenges • Ivory Tower approaches to Architecture •

    Agile squads move faster than artifacts can be produced/maintained • Lack of technical debt and architectural runway focus • Lack of executive support and understanding of architecture
  3. People over other stuff… 1. Rely on Chapters 2. Keep

    POs involved, always 3. Form Guilds, as needed
  4. Minimum Viable Architecture (MVA) • Coach squads and engineers to

    strive for MVA • Business requirements MUST drive the architecture • Anything less is failing to deliver business value • Anything more is a waste of business investment • It’s OK to iterate on architectural designs
  5. Common Architect Challenges • Lack of detailed systems control •

    The squads own the product, not you, eventually • Wanting the right long-term solution now instead of an intermediate stepping stone(s) • Don’t be Snooty Brent, the Architect, work with squads and POs as much as possible
  6. Architectural Context • The right thing to build is based

    on fundamental business needs • Proper context is defined based on the combination of “what” and “how” Product Owner Squad (Architect) “What” “How”
  7. Architectural Bumper Guards • Establish the bumper guards, allow squads

    to operate within them • Adjust the guards as needed, let them drive conversations • Move to hands-off when tribes are healthy, continue to drive conversation
  8. Lifecycle of Healthy Architecture 1. Architect defines the “how”, possibly

    the “what” based on organization maturity 2. Architect empowers chapters to determine “how” 3. Squads determine “how”, approval and review from Chapter 4. Squads become self-sufficient with senior engineer/architect team members 5. Architect focuses on strategic runway epics, assists squads as needed, the tie-breaker
  9. Architecture @ The Dude • We currently manage 6 unique

    architectures: • 3 – Classic Architectures (3 offshore agile teams) • 2 – Acquisition Architectures (1 distributed & 1 collocated agile team) • 1 – Modern Architecture (3 collocated agile teams) • Complexity, age, and technical debt vary across each architecture • Each system is aimed at solving different business goals under different contexts
  10. Architecture @ The Dude • We’ve struggled multiple times to

    identify the “right” thing to build  • We’ve failed, architecturally, a couple of times  • UI Refactor Project • SQL Projects versus Entity Framework Code-First • We’ve iterated on our initial architectures multiple times!  • We’ve formed well-functioning chapters! 
  11. What’s Next… • Convergence of portfolio architectures • Building Guilds

    for cross-tribe activities: • Quality Assurance • DevOps • Tackling architectural runway and strategic stories to achieve desired future state • Focusing on reduction of technical debt