Essential Patterns of Mature Agile Teams

21
TC Halfday Tutorial 6/3/2013 8:30 AM "Essential Patterns of Mature Agile Teams" Presented by: Bob Galen RGalen Counsulting Group, LLC Brought to you by: 340 Corporate Way, Suite 300, Orange Park, FL 32073 8882688770 9042780524 [email protected] www.sqe.com

description

Many teams have a relatively easy time adopting the tactical aspects of agile methodologies. Usually a few classes, some tools introduction, and a bit of practice lead teams toward a fairly efficient and effective adoption. However, these teams often get “stuck” and begin to regress or simply start going through the motions—neither maximizing their agile performance nor delivering as much value as they could. Borrowing from his experience and lean software development methods, Bob Galen examines essential patterns—the thinking models of mature agile teams—so you can model them within your own teams. Along the way, you’ll examine patterns for large-scale emergent architecture, relentless refactoring, quality on all fronts, pervasive product owners, lean work queues, providing total transparency, saying No, and many more. Bob also explores why there is still the need for active and vocal leadership in defending, motivating, and holding agile teams accountable.

Transcript of Essential Patterns of Mature Agile Teams

Page 1: Essential Patterns of Mature Agile Teams

 

 

TC Half‐day Tutorial 6/3/2013 8:30 AM 

       

"Essential Patterns of Mature Agile Teams"

   

Presented by:

Bob Galen RGalen Counsulting Group, LLC

         

Brought to you by:  

  

340 Corporate Way, Suite 300, Orange Park, FL 32073 888‐268‐8770 ∙ 904‐278‐0524 ∙ [email protected] ∙ www.sqe.com

Page 2: Essential Patterns of Mature Agile Teams

Bob Galen RGalen Consulting

Bob Galen is an agile coach at RGalen Consulting and director of agile solutions at Zenergy Technologies, a North Carolina-based firm specializing in agile testing and leading agile adoption initiatives. Bob regularly speaks at international conferences and professional groups on topics related to software development, project management, software testing, and team leadership. He is a Certified Scrum Master Practicing (CSC), Certified Scrum Product Owner (CSPO), and an active member of the Agile Alliance and Scrum Alliance. Bob published Scrum Product Ownership–Balancing Value from the Inside Out, which addresses the gap in guidance toward effective agile product management. Contact Bob at [email protected] or [email protected].  

Page 3: Essential Patterns of Mature Agile Teams

Essential Patterns of Mature Agile Teams

Bob GalenPresident & Principal Consultant

RGCG, LLC [email protected]

IntroductionBob Galen

Somewhere ‘north’ of 30 years experience ☺Various lifecycles – Waterfall variants, RUP, Agile, Chaos…Various domains – SaaS, Medical, Financial Services, Computer , , , p& Storage Systems, eCommerce, and TelecommunicationsDeveloper first, then Project Management / Leadership, then TestingLeveraged ‘pieces’ of Scrum in late 90’s; before ‘agile’ was ‘Agile’Agility @ Lucent in 2000 – 2001 using Extreme ProgrammingFormally using Scrum since 2000Currently an independent Agile Coach (CSC – Certified Scrum Coach, one of 50 world-wide; 20+ in North America)

at RGCG, LLC and Director of Agile Solutions at Zenergy TechnologiesFrom Cary, North Carolina

Copyright © 2013 RGCG, LLC 2

y,Connect w/ me via LinkedIn and Twitter if you wish…

Bias Disclaimer:Agile is THE BEST Methodology for Software Development…

However, NOT a Silver Bullet!

Page 4: Essential Patterns of Mature Agile Teams

First, let’s explore…

What are the basics of “Agility”

What would be indicators (patterns) of Agile maturity?

What about Agile immaturity?

Let’s rank order some of them; I.e. what do you think are

Copyright © 2013 RGCG, LLC 3

Let s rank order some of them; I.e. what do you think are the more impactful patterns in either direction?

The SCRUM FrameworkDo we need to review it?

4Copyright © 2013 RGCG, LLC 4

Page 5: Essential Patterns of Mature Agile Teams

Three CommonMeta-Patterns

Achieving Agile MaturityMany teams seem to have a false sense of over-maturityTeams become complacent or plateau; often regressing over timeCan you have too much self-direction?

Simplicity of the ‘Methods’“doing Agile” is easy; “being Agile” is much harder and continuousOrganizations, teams, and individuals often wait till the last minute to ask for helpInternally - retrospectives are the key; Externally - get a ‘compatible’

h

Copyright © 2013 RGCG, LLC 5

coachCulture seems to be the largest “failure factor”

Scrum can be quite disruptive; Kanban can be less so…All-in vs. incremental? Salesforce.com as a commitment model?Generally, how do we handle the term… Commitment?

“Doing” Agile vs.“Being” Agile?

One debate in the agile community surrounds agile maturity. A way of characterizing it surrounds

Doing Agile – focusing towards is tactics, ceremonies, and techniques vs.Being Agile – focusing towards team mindset, leadership mindset, behaviors, organizational adoption, etc.

As an entry exercise, can we brainstorm aspects of Doing vs. Being to capture how you view the differences?

The Mature Patterns workshops sort of crosses both, with an emphasis towards the Being-side of the equation.

Copyright © 2013 RGCG, LLC 6

Page 6: Essential Patterns of Mature Agile Teams

OutlineMaturity Patterns

1. Truly Emergent Architecture2 A i R f t i

13.Product Ownership takes a Village2. Aggressive Refactoring3. Pursue Ruthless KISS4. Behaving Like a Team5. Truly Collaborative Work6. Lean Work Queues7. Performing Extraordinary

Facilitation8. Quality on ALL Fronts

14.Pervasive Product Owners15.The Nuance of a Healthy Backlog16.Righteous Retrospectives17. The Power of Complete

Transparency18.Doing More than Thought

Possible19 E h i St th B d

Copyright © 2013 RGCG, LLC 7

9. Testing is Everyone’s Job10. Active Done-Ness11.Stopping the Line12. Investing in Serious CI

19.Emphasize Strength-Based Teams

20.Congruent Agile Measurement

For each pattern…workshop discussions

For sets or groups of patterns, we’ll pause and discuss the patterns in small groups

Looking for examples where you’ve seen the pattern in operation and have a story to tell

ORExamples where you’ve seen related anti-patterns in operation and have a counter-story to tell

Copyright © 2013 RGCG, LLC 8

Either way, we’ll be looking for group-based discussion around the ways and means of achieving agile maturity

Page 7: Essential Patterns of Mature Agile Teams

Technical

Copyright © 2013 RGCG, LLC 9

#1) Truly Emergent Architecture

Comfortable with on-the-fly de composition;de-composition;

no BDUF!

Sprint #0’s as appropriate

Backlogs contain learning activity – Research Spike stories

Architects work in “slices”Perhaps ‘skewed’ a bit forward from other teams

Copyright © 2013 RGCG, LLC 10

Should demonstrate architectural evolution in Sprint Reviews

other teamsDeliver architecture from within the Scrum teamsPublish system metaphors, guidelines, big picture views – to keep everyone focused on goals

Page 8: Essential Patterns of Mature Agile Teams

#2) Aggressive Refactoring

It’s easy to refactor on new work or greenfield project…so clearly do that.

But what about hairy, old, y, ,fragile code?

Aggressive refactoring

Put it on your BacklogsJustify / explain it in business terms

Copyright © 2013 RGCG, LLC 11

Remember the relationship to automation – making refactoring effective & Fear-Less

#3) Ruthless KISS

Getting LEAN deep into your cultural DNA

Fight complexityPeople & Collaboration over Process & ToolsFight Gold-plating developing (Just Enough) of EVERYTHING!

Deliver small increments (Just in Time) and pay attention to

Copyright © 2013 RGCG, LLC 12

in Time) and pay attention to feedback

Continuously engage your Product Owner

Page 9: Essential Patterns of Mature Agile Teams

Teaming

Copyright © 2013 RGCG, LLC 13

#4) Behaving Like a Team

Includes the Scrum Master and Product Owner

Developing trustCongruent feedbackGetting the “Elephants” on the tableAsking for help; helping each other

Strengths & weaknesses; dj t t h i i i &

Copyright © 2013 RGCG, LLC 14

Spending personal time together

Passionate debate; Healthy conflict

adjust to each; maximizing & minimizing

Succeeding or failing – as a team

Page 10: Essential Patterns of Mature Agile Teams

#5) Truly Collaborative Work

Co-located teams

Avoiding Scrummerfall-like dynamics

Stages and gates within the teamLong queues with hand-offs

Comfortable pairings (across the team); Triad

Copyright © 2013 RGCG, LLC 15

(across the team); Triad

Listening to each other; mutual respect, honor experience

#6) Lean Work Queues

Limiting WIPFewer things “in process” and small tasksVisible workflowKanban is interesting variant of the ‘correct’ team behavior

Blending roles – individuals doing more themselves and handing off less

Copyright © 2013 RGCG, LLC 16

Swarming!

Think in terms of reducing & eliminating WASTE

Page 11: Essential Patterns of Mature Agile Teams

KanbanIteration-less Production

Copyright © 2013 RGCG, LLC 17

#7) Performing Extraordinary Facilitation

Grooming meetingsDiscussions are at the “right level”Win-win discussions

Everyone on the team facilitates

Off-line action settingPlanning meetings

Copyright © 2013 RGCG, LLC 18

Teams get options on the table and pick best solutions

CraftsmanshipTechnical debt

Page 12: Essential Patterns of Mature Agile Teams

Quality & Testing

Copyright © 2013 RGCG, LLC 19

#8) Quality on ALL Fronts

Leaving behind the notion of “Testing in quality…”

Professionalism within the teamProfessionalism within the teamDoing the right things…doing things right

Self-inspecting; self-policingJust enough quality

Quality has a cost and should b i bl b d

Copyright © 2013 RGCG, LLC 20

be variable based on your context

Focus on Craftsmanship and Professionalism

Page 13: Essential Patterns of Mature Agile Teams

#9) Testing is Everyone’s Job

Willingness on the part of the whole-team to pitch in for testing

All types even manualAll types, even manualExtending it to test automationNever letting tests breakBuilding in testability

Listening to test estimates as part of work estimation

Copyright © 2013 RGCG, LLC 21

Understanding functional and non-functional testing

Root Cause Analysis as a team

#10) Active Done-Ness; Readiness

Actively create and automate Acceptance Tests on a Story or a Feature basis

Customer heavily involved with ydefinitionNot functional tests

Have established a view to multiple levels of Done-Ness

Work - DoneStory AcceptanceSprint Goals

Copyright © 2013 RGCG, LLC 22

Sprint GoalsRelease Criteria & Goals

Think in terms of traditional Entry, Exit, and Release criteria

Page 14: Essential Patterns of Mature Agile Teams

Levels of Criteria

Activity Criteria Example Basic Team

Work Products Done’ness criteria Pairing or pair inspections of code prior to check-in; or

development, execution and passing of unit tests. p , p g

User Story or Theme Level

Acceptance Tests

Development of FitNesse based acceptance tests with the customer AND their successful execution and passing. Developed toward individual stories and/or themes for sets of stories.

Sprint or Iteration Level

Done’ness criteria Defining a Sprint Goal that clarifies the feature development and all external dependencies associcated with a sprint.

Copyright © 2013 RGCG, LLC 23

p

Release Level

Release criteria Defining a broad set of conditions (artifacts, testing activities or coverage levels, results/metrics, collaboration with other groups, meeting compliance levels, etc.) that IF MET would mean the release could occur.

#11) Stopping the Line!

Fix your bugsRuthless testing; immediate testing; immediate feedbackg;Less logging more fixing

Build is broken ?Fix it!

Need automation for a key area?Build it!

N d t f t l l d

Copyright © 2013 RGCG, LLC 24

Need to refactor ugly legacy code that is bug infested?

Refactor it!Key impediments to your team?

Resolve them!

Page 15: Essential Patterns of Mature Agile Teams

#12) Investing in Serious CI

Build on every check-inAll artifacts – DB code (stored procedures, structure)Automated deployments toAutomated deployments to environments (real and/or virtual)

Automation everywhere!DashboardsLava lamps

Copyright © 2013 RGCG, LLC 25

Serious focus – dedicated teamTools are only part of the answerDevelop infrastructureContinuous refactoring of CI

Product

Copyright © 2013 RGCG, LLC 26

Page 16: Essential Patterns of Mature Agile Teams

#13) Product Ownership takes a Village

Fostering an environment where the entire team ‘owns’ the Product Backlog

Freely contributes User StoriesPassionate debate on priority, themes, and release goals

Shared—Vision & GoalsBusiness Values

Copyright © 2013 RGCG, LLC 27

Technical direction

Functional, Technical, and Product ‘voices’

#14) Pervasive Product (Customer) Owners

Can be a ‘team’, but needs a unified decision-maker

Organizationally ‘sticky’ decisions

Engaged as a team member

Outwardly focused toward the market & stakeholder demands

Copyright © 2013 RGCG, LLC 28

market & stakeholder demandsAdvocate for the team

Engage the customer and stakeholders

www.leadingagile.com

Page 17: Essential Patterns of Mature Agile Teams

#15) The Nuance of a Healthy Backlog

Considering it a tapestry of work that is considered in turn:

Architecture & designArchitecture & designQuality & Test AutomationTechnical debt, InfrastructureBugsInnovation & creativity

As well, planningFeature workflow & valueD d i & i k

Copyright © 2013 RGCG, LLC 29

Dependencies & riskUltimately deployment

Never ‘done’ grooming; iterative

Organization

Copyright © 2013 RGCG, LLC 30

Page 18: Essential Patterns of Mature Agile Teams

#16) Righteous Retrospectives

For the team!Remember Norm Kerth’s“Prime Directive”:

Everyone tried their bestEveryone tried their bestSafe environment

Drives “Continuous Improvement”

Challenge one other!

Get the “Elephants” out in the

Copyright © 2013 RGCG, LLC 31

Get the Elephants out in the open

Be creative – try new things; take some risks

#17) The Power of Complete Transparency

Opening up your stand-ups & Sprint Planning to everyone

Even sales folks and customers

Rampant Information Radiators

Tell it like it isCongruent truth-tellingCourageSuccess or Failure

Copyright © 2013 RGCG, LLC 32

Expect organizational engagement – questions, suggestions, trade-offs towards core goals

It is what it is…now how do we ADJUST towards our GOALS

Page 19: Essential Patterns of Mature Agile Teams

#18) Doing More than Thought Possible

Stretch goals within Sprints

CreativeCreative solutions – not simply following the Story or Task listsexploring alternatives with Product OwnerThe Wisdom of Crowds

Iterations that lead towards…

Copyright © 2013 RGCG, LLC 33

Iterations that lead towards… “Good Enough”

Fighting Parkinson’s Law and Student Syndrome

Supporting – Slack TimeInnovation TimeCreativity thinkingExperimentation

#19) Strength-Based Teams

Individuals focus on what they’re good at; enjoy

While still ‘stretching’ themselves

Notion of Appreciative Inquiry leveraged in retrospectives

And continuous improvement

Team-building - interview for complimentary strengths

Copyright © 2013 RGCG, LLC 34

At scale, consider strengthsWhen Release Planning – loading workLoad-balancing teams by skill-set

Page 20: Essential Patterns of Mature Agile Teams

#20) Congruent Agile Measurement

Don’t focus too heavily on metrics; instead on results

Look for measures surrounding–

Value Delivered & Customer DelightedQuality being Built-InTeam Health & MoraleProductivity & Predictability Traditional measures can lead

Copyright © 2013 RGCG, LLC 35

y y

1-2 measures per areaFocus on trendingBehaviors

Traditional measures can lead to Metrics Dysfunction

Measure bugs for reward…get more meaningless bugsMeasure LOC for reward…get more meaningless LOC

WorkshopWrap-up

What were the most compelling patterns?patterns?

What essential patterns did I miss?

Final questions or discussion?

Copyright © 2013 RGCG, LLC 36

Thank you!

Page 21: Essential Patterns of Mature Agile Teams

Contact Info

Bob GalenPrincipal Consultant,

RGalen Consulting Group, L.L.C.

Experience-driven agile focused training, coaching & consulting

Contact: (919) [email protected]

BlogsProject Times - http://www.projecttimes.com/robert-galen/BA Times - http://www.batimes.com/robert-galen/

Podcast on all things ‘agile’ - http://www.meta-cast.com/

37Copyright © 2013 RGCG, LLC 37