Agile Methods in Minutes

Craig Smith Welcome… Let’s Go! Foundations Manifesto for -- Agile Software Development Manifesto for -- Agile Software Development Values

Signatories

17 signatories 2001 agilemanifesto.org Principles 1 Scrum 1 Scrum

“A framework within which people can address complex adaptive problems, while productively and creatively delivering products of the highest possible value.” Process Basis for most iterative processes / methods currently in use. Opinion Roles

+ Theory

- Jeff Sutherland / Ken Schwaber 1996 scrumguides.org 1a Scrumbut (Scrumand) 1a ScrumBut (ScrumAnd)

“We're doing Scrum but...” “We use Scrum and...” ScrumBut vs ScrumAnd

ScrumAnd framework

ScrumBut "We're doing Scrum but..." our sprints are 12 weeks long”

ScrumAnd “We use Scrum and we are collaborating and brainstorming within the Scrum Team to increase value every Sprint.” Eric Gunnerson 2006 blogs.msdn.com/b/ericgu/archive/2006/10/13/scrumbut.aspx Ken Schwaber 2008 kenschwaber.wordpress.com/2012/04/05/scrum-but-replaced-by-scrum-and/ 2 (XP) 2 Extreme Programming (XP)

“Extreme Programming is the first popular methodology to view software development as an exercise in coding rather than an exercise in management.” Practices

Process

Principles

+

Practices have become Values - software engineering good practice Opinion Kent Beck 1996 extremeprogramming.org 3 Crystal 3 Crystal

“Crystal is a family of human-powered, adaptive, ultralight, “stretch-to-fit” software development methodologies… designed to scale by project size and criticality” Exploratory 360 degree Early victory Walking skeleton Incremental rearchitecture Information radiators Methodology: Strategies Size vs Criticality Properties

+

-

Alistair Cockburn 1992 alistair.cockburn.us/crystal+methodologies Dynamic Systems Development Method 4 (DSDM) Dynamic Systems Development Method 4 (DSDM) “Incorporates disciplines… to ensure… project benefits are clear,… proposed solution is feasible and …solid foundations in place…”

Process MoSCoW Practice

Deliverables + Principles

- DSDM Consortium 1994 dsdm.org Feature Driven Development 5 (FDD) Feature Driven Development 5 (FDD) “a recipe for simplified, enhanced and measurable project management: patterns of play that bring success.” Process Parking Lot Practice

Best Practices

+

-

Jeff De Luca 1997 featuredrivendevelopment.com/ Adaptive Software Development 6 (ASD) Adaptive Software Development (ASD) / 6 Adaptive Leadership “Adaptive Software Development does not provide a set of prescriptive rules or tasks, but a framework of concepts, practices, and guidelines”

Complex Adaptive Systems (CAS) Theory Agents Environments Lifecycle Emergence + Characteristics

-

Jim Highsmith 1992 adaptivesd.com Lean Lean / Lean Manufacturing / Lean 7 Enterprise / Toyota Production System Lean / Lean Manufacturing / Lean 7 Enterprise / Toyota Production System “Lean uses less of everything compared with mass production… As it inevitably spreads… will change almost everything in almost every industry…” Improvement Kata

Lean Principles + 8 Wastes (Muda)

-

Eli Whitney  Taichi Ono  James Womack 1850  1936  1990 lean.org 7a Lean Software Development 7a Lean Software Development

“Lean uses less of everything compared with mass production… As it inevitably spreads… will change almost everything in almost every industry…”

7 Principles / 22 Tools

+ - Mary & Tom Poppendieck 2003 poppendieck.com Deming System of 8 Profound Knowledge Deming System of 8 Profound Knowledge “An effective theory of management that provides a framework of thought and action for any leader wishing to transform and create a thriving organization…” Systems Thinking Knowledge of Variation

Theory of Knowledge

+

14 points W. Edwards Deming 1939 deming.org for management - 9 (Product Development) Flow 9 (Product Development) Flow

“...the dominant paradigm for managing product development is wrong. Not just a little wrong, but wrong to its very core.” High Delay Cost Job First

Optimum Batch Size 175 Principles Failure to correctly quantify economics + Blindness to queues Worship of efficiency Hostility to variability Worship of conformance Institutionalization of large batch sizes Underutilization of cadence Managing timelines instead of queues Absence of WIP constraints Inflexibility Noneconomic flow control 12 Cardinal Centralized control Sins - Donald G. Reinertsen 2009 lpd2.com / leanproductflow.com Kanban 10 (Modern Management Methods) Kanban 10 (Modern Management Methods) “...evolutionary change model that utilizes a kanban (small k) pull system, visualization, and other tools to catalyze the introduction of Lean ideas into technology…” Start with what you do now Agree to pursue incremental, evolutionary change Respect the current process, roles, responsibilities and titles Leadership at all levels 4 Principles Kanban Board 5 Core + Properties

- David J. Anderson 2010 djaa.com 11 Personal Kanban 11 Personal Kanban

“...provides a light, actionable, achievable framework for understanding our work and its context.”

Get your stuff ready Establish your value stream Establish your backlog Establish your work in progress limit Begin to pull Reflect 5 Steps 2 Rules of Personal Kanban +

Throughput -

Jim Benson / Tonianne DeMaria Barry 2011 personalkanban.com 12 Lean Startup 12 Lean Startup

“It's ultimately an answer to the question ‘How can we learn more quickly what works, and discard what doesn't?”

5 Principles

Process

+

-

Eric Ries 2008 theleanstartup.com Popularised Extensions Hybrid Agile (Scrumban, Xanpan, 13 Nonban, Water-Scrum-Fall) Hybrid Agile (Scrumban, Xanpan, 13 Nonban, Water-Scrum-Fall) “Using one or more aspects of different methods Xanban Scrumban Nonban

Water Scrum Fall ScrumPLOP 14 (Pattern Languages of Programs) ScrumPLOP 14 (Pattern Languages of Programs) “ScrumPLoP mission is to build a body of pattern literature around… communities, describing… insights, so we can easily share them.” Pattern Spreadsheet

Pattern Map

+

-

Jeff Sutherland / Jim Coplien 2010 scrumplop.org Enterprise Transition Framework 15 (ETF) Enterprise Transition Framework 15 (ETF) “…focus of ETF is to allow an organization to implement continuous improvement and to experience change in an empirically controlled way.” +

-

Framework Agile42 2014 agile42.com/en/agile-transition/etf/ 16 Software Faster 16 Software Faster

“…Brings agile principles into the 21st century… to think differently about design, architecture, development & testing, operations, automation & team dynamics…”

3 ages of agile Patterns Workshop Agenda Deliberate Discovery Avoiding problems Fits in my head Micro services Focussed effort Release mentality is harmful Software: asset or liability Blink estimation

- +

Dan North 2010 dannorth.net Extreme Manufacturing (XM) 17 (Wikispeed) Extreme Manufacturing (XM) 17 (Wikispeed) “…Set of technical practices and management principles to go from an idea to a product or service in the customers hands in less than 7 days.” Wikispeed

+

Process - Joe Justice 2008 wikispeed.org Certifications 18 (BABOK / PMI ACP / icAgile / …) Certifications 18 (BABOK / PMI ACP / icAgile / …)

PMI-ACP

PRINCE2 Agile Best Practice

IIBA BABOK Agile Extension

ICAgile Certification Scale Agile Unified Process 19 (AUP) Agile Unified Process 19 (AUP) “…A simplified version of the Rational Unified Process (RUP)…” Lifecycle

Philosophies

Scott Ambler 2005 ambysoft.com/unifiedprocess/agileUP.html Disciplined Agile Delivery 19a (DAD) Disciplined Agile Delivery 19a (DAD) “…People-first, learning-oriented hybrid agile approach… has a risk-value lifecycle, is goal-driven, is scalable, and is enterprise aware.” Lifecycle

Scaling Key Aspects

+

- Scott Ambler 2012 disciplinedagiledelivery.com Enterprise Unified Process 19b (EUP) Enterprise Unified Process 19b (EUP) “…a full-fledged software process …is an extension to the solution delivery methodologies such as DAD.”

Lifecycle

+

- When to Adopt Scott Ambler 1999 enterpriseunifiedprocess.com Large Scale Scrum 20 (LeSS) Large Scale Scrum 20 (LeSS) “…a label to imply regular Scrum plus the set of tips we have seen work in large multiteam, multisite and offshore agile development.” + LeSS (up to 8 teams)

-

LeSS Huge (up to a few thousand people) Craig Larman / Bas Vodde 2008  2015 less.works/ 21 Enterprise Scrum 21 Enterprise Scrum

“… provide an expanded and more detailed framework foundation of Scrum so that we can use Scrum for business, generic or scalable purposes.” Model

Improvement Cycles

Business Skin

+

-

Mike Beedle 2010 enterprisescrum.com Scaled Agile Framework 22 (SaFE) Scaled Agile Framework 22 (SaFE) “…Interactive knowledge base for implementing agile practices at enterprise scale... Highlights the individual roles, teams, activities & artifacts necessary to scale agile…”

+

-

Framework Dean Leffingwell 2007 scaledagileframework.com 23 @Spotify / Squadification 23 @Spotify / Squadification

“…Scaling using tribes, squads, chapters and guilds” Engineering Approach Culture

Principles

+

-

Henrik Kniberg / Spotify 2012 labs.spotify.com 24 Nexus Framework 24 Nexus Framework

“…a framework consisting of roles, events, artifacts, and techniques that bind and weave together the work of approximately three to nine Scrum Teams…” Builds on existing Scrum knowledge 3-9 Teams Core Features Nexus Integration Team Builds on Scrum + Integrated Increment Adds “Nexus” to the ceremonies -

Framework Ken Schwaber 2015 scrum.org/nexus Development & Testing 25 DevOps 25 DevOps

“a response to the interdependence of software development and IT operations.” Process

Lifecycle Relationship

+

-

Principles Patrick Debois 2009 jedi.be/blog/ 26 Programmer Anarchy 26 Programmer Anarchy

“Developer driven development” Missing Reduction in Roles Agile Manifesto & XP Values Agile Practices Standups Trust with co location Story narratives Retrospectives Customer Developer Quality Assurance / Estimates Project Business Test Iterations Results, not blame Manager Analyst Mandatory pairing Unit tests, acceptance tests Refactoring Patterns Small, short lived apps Continuous deployment

+ -

Fred George 2010 db.tt/4qFljVxU 27 Mikado Method 27 Mikado Method

“…a pragmatic, straightforward, and empirical method to plan and perform non-trivial technical improvements on an existing software system.” Analogy

Mikado Graph

+

Method -

Ola Ellnestam / Daniel Brolund 2009 mikadomethod.wordpress.com 28 Mob Programming 28 Mob Programming

“All the brilliant people working at the same time, in the same space, at the same computer, on the same thing” Key Group work area Practices One computer for programming, all can see + Driver/navigator - 15 minute rotations Team communication ownership

Whole Team Rotation

Woody Zuill 2012 mobprogramming.org Process 29 TDD / ATDD / BDD / SBE 29 TDD / ATDD / BDD / SBE

“Begin with the end in mind…” Deriving scope from goals TDD / ATDD Specifying collaboratively Process Refining specifications Automating tests based on examples SBE Validating frequently using tests Practices Evolve documentation system from specifications with examples

- +

Kent Beck  Dan North  Gojko Adzic 1994  2006  2011 30 Context Driven Testing 30 Context Driven Testing

“…Advocates testing in a way that conforms to the context of the project, as opposed to testing in a way that follows some fixed notion of "best practice."

Community +

-

Principles

James Bach / Cem Kaner / Brian Marick / Bret Pettichord 2001 context-driven-testing.com Leadership 31 Vanguard Method 31 Vanguard Method

“…Means for helping service organisations change from a conventional ‘command-and-control’ design to a systems design.”

• Managers must know the system before changing it or making decisions within it • Managers shouldn’t control what is said to customers, only front line staff dealing with customers are best placed to understand context • Generalists over specialists • Management by numbers makes performance worse • When managers believe they know best, they inhibit ideas + • Improvement requires understanding the true problems, not fixing the problems you think you have • Instead of establishing standards, ensure capability and purpose • “Good enough” is the fast track to being mediocre. Systems thinking is the desire to be perfect - • Reports serve the hierarchy, they don’t serve constructive action • Never use the hierarchy to find out what is going on • Be wary of using the hierarchy to solve problems rather than connecting the two parts • Intrinsic motivation over targets • Management’s job is not to exert control through hierarchy with arbitrary measures, management’s job is to achieve real control by working on the system • 95% of a worker’s performance is attributable to the system, management’s job is to work on the system, know the types of demand requests • Standardisation is in effectual in variable outcome work. Economy comes from flow, not scale. • Manage value drives cost out of the system, managing costs drives cost up • Change requires no plan, the only plan is – get knowledge • Economies achieved through less of a common resource are marginal compared to the economies achieved through flow – redesign the services against the demand • Control the organisation with arbitrary measures and in fact, you actually diminish control. Or control the organisation with measures related to purpose, used where the work is done, and Principles you will achieve genuine control, and what’s more your people will innovate. • Understanding the causes of failure demand leads to redesigning services; failure demand is systemic, a product of the system, you can only remove it by changing the system

John Seddon 1985 vanguard-method.com 32 Holocracy 32 Holocracy

“…Radically changes how an organization is structured, how decisions are made, and how power is distributed.”

Circle Structure Holacracy Constitution

Process

- +

Brian Robertson 2006 holacracy.org 33 Rightshifting 33 Rightshifting

“Improving the effectiveness of knowledge-work businesses/”

SDLC – Various Stages of Effectiveness Project Management Effectiveness

+ Marshall Model - Stages

Bob Marshall 2008 flowchainsensei.wordpress.com/rightshifting/ 34 Beyond Budgeting 34 Beyond Budgeting

“…‘Budgeting’ is not used in its narrow sense of planning and control, but as a generic term for the traditional command and control management model”

+ -

Principles Approach

Jeremy Hope / Robin Fraser / Peter Bunce  Bjarte Bogsnes 1998 bbrt.org 35 Radical Management 35 Radical Management

“…A way of managing organizations that generates at the same time high productivity, continuous innovation, deep job satisfaction and customer delight. Radical.”

Delight The Customer Commit Evaluate Target Customise Focus Partner with Customers Read Their Minds Empower Innovate in Stages Measure

Principles

+ -

Steve Denning 2010 stevedenning.com/radical-management 36 Stoos Network 36 Stoos Network

“Uncovering better ways of leading organisations”

+

-

Problems Stoos Network 2012stoosnetwork.org 37 Management 3.0 37 Management 3.0

“…Help… grow and transform organizations into becoming great places to work.” Model

Improve Everything Empower People

+ -

Jurgen Appelo 2011 management30.com Individuals & Interactions 38 Drive 38 Drive

“…The secret to high performance… is the deeply human need to direct our own lives, to learn and create new things, and to do better by ourselves and our world.”

Intrinsic Motivation +

-

Key Points Dan Pink 2009 danpink.com 39 Theory of Constraints 39 Theory of Constraints

“A chain is no stronger than its weakest link.” Thinking Process

Process of Ongoing Improvement

+

- Bottlenecks Eli Goldratt 1984 goldratt.com 40 Cynefin 40 Cynefin

“a perspective on the evolutionary nature of complex systems, including their inherent uncertainty.”

Model +

-

Dave Snowden 1999 cognitive-edge.com Final Thoughts Raccoon!Agile ? -- Oath of Non Allegiance -- Oath of Non Allegiance

I promise not to exclude from “ consideration any idea based

on its source, but to consider

ideas across schools and heritages in order to find the “ ones that best suit the current situation.

Alistair Cockburn 2010 alistair.cockburn.us/oath+of+non-allegiance Questions?

http://www.craigsmith.id.au [email protected] @smithcdau

Craig Smith