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

The Future has Arrived - Mary Poppendieck - Agile SG 2016

The Future has Arrived - Mary Poppendieck - Agile SG 2016

Presented in Agile Singapore 2016 Conference

Agile Singapore

October 06, 2016
Tweet

More Decks by Agile Singapore

Other Decks in Technology

Transcript

  1. It's just not evenly distributed.
    Photograph © Tom Poppendieck
    Mary Poppendieck
    [email protected]
    www.poppendieck.com

    View Slide

  2. Copyright©2016
    Poppendieck.LLC
    2
    Photograph © Tom Poppendieck

    View Slide

  3. Business Software:
    Why One Server?
    Monolithic & Slow to change
    ERP Database  Integration
    On a Single Server
    CAP Theorem:
    Partitioned databases
    must choose between:
    Availability
    Consistency
    Photograph © Tom Poppendieck
    Copyright©2016
    Poppendieck.LLC
    3

    View Slide

  4. [c. 2001]
    Copyright©2016
    Poppendieck.LLC
    4

    View Slide

  5. Get a bigger computer.
    Copyright©2016
    Poppendieck.LLC
    5
    Get more computers. Google Hardware c. 1999

    View Slide

  6. Amazon ~ 2001
    Handle a gazillion transactions
    All at once
    What Amazon Did:
    Break transactions into services
    Replicate bottleneck services
    Each service owned by a semi‐
    autonomous “two pizza” team
    Option 2:
    Scale Out
    Option 1:
    Scale Up
    Copyright©2016
    Poppendieck.LLC
    6

    View Slide

  7. Copyright©2016
    Poppendieck.LLC
    7
    Photograph © Tom Poppendieck

    View Slide

  8. Pinkham moves to South Africa
    Asked to pursue project there
    Assembles and leads a team
    Develops EC2 in 2 years
    EC2 Launches in 2006
    10 Years Later:
    The Cloud has Changed
    Software Engineering
    Autonomous Services 
    Autonomous Service Teams
     Independent Deployment
     Much Stress in Operations
    Chris Pinkham (VP Infrastructure)
    Proposes self‐service deployment
    for development teams
    Maybe sell the capability?
    Time Passes….
    Photograph © Tom Poppendieck
    Copyright©2016 Poppendieck.LLC 8

    View Slide

  9. Simplicity
    Infrastructure without code
    Isolation
    No more multitenant packages
    Lower Cost
    Cheaper for event‐driven code
    Utilization
    Many more apps/server
    Portability
    Build once run anywhere
    Consistency
    Configuration managed
    by containers at runtime
    Isolation
    Hardened containers
    protect the contents
    Copyright©2016
    Poppendieck.LLC
    9
    Containers Serverless
    Software Defined Networks (SDN)
    Google’s Jupiter
    Critical for Scale
    “Jupiter Rising: A Decade of Clos Topologies and Centralized Control in Google’s Datacenter Network”, by Amin Vahdat et al.
    https://www.youtube.com
    /watch?v=FaAZAII2x0w

    View Slide

  10. Copyright©2016
    Poppendieck.LLC
    10
    Photograph © Tom Poppendieck

    View Slide

  11. The Evolution of IT
    1996 2016
    Running on any
    available set of
    physical resources
    (public/private/
    virtualized)
    Assembled by
    developers using
    best available
    services
    Thin app on mobile,
    tablet
    Thick, client‐server app
    on thick client
    Well‐defined stack:
    ‐ O/S
    ‐ Runtime
    ‐ Middleware
    Monolithic
    Physical
    Infrastructure
    www.docker.io
    11

    View Slide

  12. Scale Out
    Technology Platform
    Scale Up
    Enterprise
    Architecture
    Federated
    Architecture
    Copyright©2016
    Poppendieck.LLC 12

    View Slide

  13. Copyright©2016
    Poppendieck.LLC
    13
    Photograph © Tom Poppendieck

    View Slide

  14. Three Kinds of Systems
    Copyright©2016
    Poppendieck.LLC
    14
    Nassim Nicholas Taleb:
    Antifragile – Things that gain from Disorder
    Acm Queue, September 2012:
    “Resilience Engineering: Learning to Embrace Failure”
    Picture Credit: André Faria Gomes

    View Slide

  15. Periodic Releases
    Monolith
    Database as Integrator
    Stateful Protocols
    Synchronous Communication
    Procedural Programming
    Consecutive Execution
    Defect Free
    Continuous Delivery
    Microservices
    API’s as Integrators
    Stateless Protocols
    Asynchronous Communication
    Event Driven Programming
    Concurrent Execution
    Fault Tolerant
    Copyright©2016 Poppendieck.LLC 15

    View Slide

  16. Copyright©2016
    Poppendieck.LLC
    16
    Photograph © Tom Poppendieck

    View Slide

  17. Copyright©2016
    Poppendieck.LLC
    17
    More Value
    for Customers
    Scale Out
    Scale Up

    View Slide

  18. Diverse Design Team
    Copyright©2016 Poppendieck.LLC
    18
    Stanford d.school Ashish Goel
    More Value
    for Customers
    Proven Design Process

    View Slide

  19. Copyright©2016
    Poppendieck.LLC
    19
    Sketch: Jake Knapp

    View Slide

  20. Copyright©2016
    Poppendieck.LLC
    20
    Photograph © Tom Poppendieck

    View Slide

  21. Copyright©2016
    Poppendieck.LLC
    21
    Deep Learning

    View Slide

  22. Copyright©2016
    Poppendieck.LLC
    22
    Photograph © Tom Poppendieck

    View Slide

  23. A Matchmaker – a business that
    connects members of one group
    with members of another group.
    23
    Photograph © Tom Poppendieck
    Copyright©2016
    Poppendieck.LLC

    View Slide

  24. Copyright©2016 Poppendieck.LLC 24
    Photograph © Tom Poppendieck

    View Slide

  25. Photograph © Tom Poppendieck
    Mary Poppendieck
    [email protected]

    View Slide

  26. Photograph © Tom Poppendieck
    Mary Poppendieck
    [email protected]

    View Slide