Upload
vuongdan
View
218
Download
0
Embed Size (px)
Citation preview
We are uncovering better ways of
developing software by doing it and
helping others do it.
Fast Food vs.
Homemade AgileUncovering Better Ways of Delivering Software
Jeffrey Davidson / @JeffreyGoodReq#dsmAgile / Sept 9, 2016
We are uncovering better ways of
developing software by doing it and
helping others do it.
reimagining Agile
Proposing An UpdatedSet of Processes and Practices to
Achieve High-Performance Delivery
reimagining Agile
Proposing A Updated PersonalizedSet of Processes and Practices to
Achieve High-Performance Delivery
Potentially Shippable Product
Increment
Time-boxed SprintBacklog
Items
24 hours
Daily Standup
Prioritized Product Backlog
We uncovered the only better way of
developing software. Do it our way.
You’re welcome.
Wow!
This guy makesa lot of sense.
Hmm.I wonder whatJeffrey’s Agile
would look like?
PerformanceHigh
Performance
Technical Stack
Business Domain Teamwork
Bel
iefs
: 3 K
eys
to H
igh-
Perf
orm
ance
Automated testing
Automated build process
Search for improvement
Daily clean code
Start How You Mean To Go: 4 Practices
These practices will slow us to start,
And accelerate us forever more
Understanding is Everything: 3 Levels
Impact
User Stories
Daily Slices
• Results in terms of measurable change
• Not a scope item list
• Customer viable• Have Acceptance
Criteria
• Testable / Provable• May not be customer
viable
At the end of every day I finished something that makes a tangible difference.
broken into
completed via
Time
Work Organization
User Stories are organized into a Story Map,which serves as
ª Guide to Investment Experimentsª Planning Runwayª Roadmap
Activity 1
Role Task 1 Role Task 2 Role Task 3 Role Task 4 Role Task 5
Task Detail(User Story)
Task Detail(User Story)
Task Detail(User Story)
Task Detail(User Story)
Task Detail(User Story)
Task Detail(User Story)
Task Detail(User Story)
Ceremonies: Only When Requiredfor
Understandingfor
Validationfor Finding
Improvement
Impact X XStory Map X XUser Story X X XDaily Slice X X
Release XImpact 10% Party
Recommended: Every time the team delivers measurable impact to the customer or business process there shall be a “Gathering of Joy.”
Feedback Loops• When the Impact is reached
• When a User Story is done
• When we think we can improve
Slices• Planning your daily slice requires
everyone involved in that slice and may not require the whole team.
• If it takes too long to plan your daily slice, do it differently. For example:– Try slicing differently– Try planning your daily slices simultaneously– Try less planning, more building– Try _______
What, Not Who: team stuff• Skills, not roles– I expect to have the right technical expertise to
understand business needs, develop in our technical stack, and validate our deliverables
• Cross-functional is better than silos and sole-functional– It’s a journey. You can grow into it over time.
• No defined team size
How Big Is It: determining project size
– After the team has agreed to the story map, they may estimate user stories in terms of daily slices
– Daily slices may be added up within the story map to determine estimated project size, release dates, or other metrics
– Anyone may request a re-estimation from the entire team
What about Estimation?
How Big is TOO Big?We don’t know (!!), but maybe when: • Daily slices take more than 5 people• User stories take more than 20 – 30
daily slices• User stories take more than 3 weeks• Releases take more than 3 months
Potentially Shippable Product
Increment
Time-boxed SprintBacklog
Tasks
24 hours
Daily Standup
PrioritizedProduct Backlog
ShuHaRi
Perspective Mapping
Developed by Christopher Webb
Small releases
Sprint Planning
(1&2)
Product Backlog
Sprint Backlog
Poker Planning
User Story
Daily Meeting
Relative Estimation
Definition of Ready
3 qns
Burndown Chart
Refinement Meeting
Definition of Done
Sprint Review
(Showcase)
Retrospective
Task Board
Limit WIP
Flow Control
Kanban board
Visual waste & waiting
Make Policies Explicit
3 bin system
Implement feedback
loops
Frequent releases
Evolve experimentally
Muda, Muri, Mura
Story Splitting
3C’s
INVEST
Story Mapping
Personas Queuing Theory
Manage & Measure
Flow
Theory of Constraints
Fast Feedback
Velocity
Lead time
Optimal Batch Sizes
UML Diagram
Risk Log
Minimum Viable
Product (MVP)
Minimum Viable Change
Feature
Onsite Customer
5 Whys 8 Wastes5 S’s
Spikes
Design Brief
Stakeholder Mapping
Focal Question
Relational MappingTop 5 (ideas)
Business Model Canvas
Brainstorming
Rules of Simplicity
Design Principles
Low Fiedelity
Prototypes
Doblin’s 10 types of
innovation
Define Success
User Testing
Walking Skeleton
6 Levels of Planning
Delphi estimation
Product Vision
(elevator pitch)
Trade off Sliders
Cause effect diagrams
Contract Game
Project approach questionnaire
Storyboards
Facilitated workshops
Scrum of
Scrums
Story telling
Guided Tour
SPICE
2x2 Matrix
Feasibility Assessment
Divergent / Convergent
Thinking
Five E’s
Why-How Laddering
Programming Rotation
Refactoring Map
Revert
Independent Goal Naively
Mikado Dependency Map
5 Focusing
Steps
TOC thinking process
Information Radiators
Improvement KATA
Dreyfus Model
Team eNPS Actionable
Metrics
Monte Carlo
Poisson Cumulative Distribution
Test Driven Development
Integrated Testing
Test Automation
Inspections
7 qns of context driven testing
Continuous Integration
Automated Test Code Coverage
Plant Types
Context Driven Testing
Reflection Workshops
Domain Object Modelling
Niko-Niko Calendar
Exploratory 360 degree
reviews
JIT Ad-Hoc
retrospective Agile Release Trains (ART)
Parking Lot
Decision Tree
Object Relational Mapping
Baselined Requirements
Delivery Plan
JIT Model Storming
Continuous Production Testing
Automated visual dashboard
Continuous Deployment
Standardised Promotion
Path
Source Code Mgmt
Config Mgmt
Virtualisation
Feature Toggling
Artefact Mgmt
Version Control
Dynamic Environments
Componentised Architecture
Automated Build
Casual Loop Diagrams
Auto-scale & Heal
Buffer Mgmt
Incremental Architecture
Incremental Re-architecture
Usability Testing
Acceptance Testing
Sustainable Pace
Release Planning
Story Hierarchy
Metaphor
iterations Feedback Loops
Test
Feature naming template
Idea collaboration
session
Ecosystem Map
Empathy Maps
Affinity Clustering
Context Mapping
Journey Maps
PDCA (Deming cycle)
Kaizen blitz
Kaizen burst
Refactoring
Document Prerequisites
Change Canvas
Scale method by
colour
Osmotic Communication
Reflective Improvement
Focus Period (2hr)
SOLID principles
4+1 View architecture
Emerging Design (code
craftsmanship)
A3
Update when if hurts
Team Safe
space
Safety (user
solution)
Business Vision
Development approach definition
Time box
Shift Left
MoSCoW
Hypothesis Statement
Value stream mapping
Lean Coffee
12 Cardinal Sins
Exploratory Days
ADKAR Survey
4 MindsetsMarshall Model
Mock Objects
Marick’s Test
Categories
Acceptance Criteria
Understanding complexity (Framework
precedes data)
Sense making (Data precedes
framework)
User Case
CDEL method selection
Barmaiindex
estimates
Improvement Service
Communities of Practice
System NFR Overview
page
Feature Teams
Potentially Shippable Product
Overall Retrospective
Requirement Area
Feature Set (combined, vertical, horizontal)
Product Owner
Top down+ Bottom
Up
Feature team
adoption map
Area Product Owner
Multi-team design
workshop
Vision Page
Team PBR
3 levels coaching (org, team, tech)
Organise by
customer value
Project Charter
5 Dysfunctions of team
Strategic Theme
ART Budget
Release on Demand
SAFe Patterns
Program Planning
3 Levels Portfolio, Program, Team
WSJF Agile portfolio
Architectural runway
Portfolio Backlog
Business EPIC
Innovation & Planning
Sprint
Cycle time
Program Increment
5C’s of Agile Mgmt
Architectural EPIC
Release Train Engineer
Voice of Customer
Cumulative Flow
Diagram
Hackathon
4 versions of lifecycle
Fixed Delivery
Date
Software Development
Context Framework
(SDCF)
Hybrid waterfall practices
Product MgmtTeam
Architecture Team
Geographically distributed
development (GDD)
Risk Value Driven cycle
Coordinate Activities
Focus
Goal Diagram
Parallel Independent
Testing
Tiger Team
Card sort
6 Sigma
Meddlers (change
card game)
Delegation Poker
Kudos Cards
10 Intrinsic desires
Moving Motivators
Turn up the good
7 Tests of a new model
Schneider Culture Model
Theory X vs. Theory Y
Collaboration, Cultivation, and
Competence
Simple Design
Business Case
Solution Architecture
Delivery Control Pack
CRC Cards
Branching Strategy
Leadership
FDD
Scaling
Initiate Discover Deliver Release
Disciplined Agile Delivery (DAD)Scaled Agile Framework (SAFe)
Large Enterprise Scaled Scrum (LeSS)
Design Thinking
Cynefin
Lean
eXtreme Programming (XP)
Human Centered Design
Product Development (FLOW)
Deming Theory of Constraints
Dynamic System Development Method (DSDM)
RUP
Crystal
Mikado Method
Kaizen
Kanban
Rightshifting Management 3.0
Beyond Budgeting
DevOps
Test Driven Dev
Scrum
Prince2 / Waterfall
Agile Modelling
2016 Deloitte Consulting Pty Ltd.
The Agile Landscape v3
High Performance
Technical Stack
TeamworkBusiness Domain
Impact
User Stories
Daily Slices
Automated testing
Automated build process
Search for improvement
Daily clean code
Always Feedback
How About You?What ideas do you have?
• What are your core beliefs about delivery / excellence?• What are your must-have practices?• How do you ensure understanding? • How would you deliver value?
Beliefs about Delivery / Excellence
Practices
Understanding & Organization
Feedback & Improvement
We are uncovering better ways of
developing software by doing it and
helping others do it.