+ All Categories
Home > Documents > TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team...

TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team...

Date post: 30-Sep-2020
Category:
Upload: others
View: 0 times
Download: 0 times
Share this document with a friend
37
1 @GARYPEDRETTI | [email protected] TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY GARY PEDRETTI @GARYPEDRETTI | [email protected] EVERYONE OWNS QUALITY
Transcript
Page 1: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

1

@GARYPEDRETTI | [email protected]

TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITYGARY PEDRETTI

@GARYPEDRETTI | [email protected]

EVERYONE OWNS QUALITY

Page 2: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

2

@GARYPEDRETTI | [email protected]

”QUALITY IS JOB 1” ?????

@GARYPEDRETTI | [email protected]

BEFORE THE JAPANESE, US AUTOMAKERS HAD THE GERMANS

Page 3: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

3

@GARYPEDRETTI | [email protected]

@GARYPEDRETTI | [email protected]

Before Robert Cox’s campaign, “Job 1” meant the first of a new or redesigned model that rolled off the assembly line.

“Don’t worry about the quality of the car, just get it out on time!”

Page 4: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

4

@GARYPEDRETTI | [email protected]

PLATITUDES, CLICHÉS…

• “Quality is Job #1 !!!”• “We build quality in from the start !!!”• “Everyone is responsible for quality !!!”

Let’s make these REAL, let’s make these true, let’s go beyond catchphrases and clichés…

@GARYPEDRETTI | [email protected]

Page 5: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

5

@GARYPEDRETTI | [email protected]

QUALITY != TESTINGQUALITY != LACK OF BUGS

Think about all the activities, actions, events, techniques that enhance quality. Testing is only ONE of these.

Bugs are only ONE indication there are or might be quality problems.

@GARYPEDRETTI | [email protected]

QUALITY IS…

But what is quality?American Society for Quality:

• "A combination of quantitative and qualitative perspectives…

• …for which each person has his or her own definition…”

Page 6: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

6

@GARYPEDRETTI | [email protected]

QUALITY IS…VERIFICATION, BUILDING IT RIGHT

• “Number of defects per million opportunities” (Six Sigma)

• But…bugs are but ONE indication of a possible lack of quality

@GARYPEDRETTI | [email protected]

QUALITY IS…VERIFICATION, BUILDING IT RIGHT

• “Degree to which a set of inherent characteristics fulfills requirements.” (ISO 9000)

• But…how we do this – what we traditionally think of as testing in software development – is but ONE way.

• Testing is a check of quality

• Or more precisely, traditional software testing is the reduction of risk that we have low quality on the verification dimension

Page 7: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

7

@GARYPEDRETTI | [email protected]

QUALITY IS…VALIDATION, BUILDING THE RIGHT THING

• Provides Value / is Fit for Purpose

• But also…what the customer would love but has not yet thought about

@GARYPEDRETTI | [email protected]

QUALITY IS…VALIDATION, VALUE-BASED

Could everyone, including non-testers, contribute to customer value?

Page 8: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

8

@GARYPEDRETTI | [email protected]

QUALITY IS…CARING?

• The result of care

@GARYPEDRETTI | [email protected]

REVIEW: WHAT IS QUALITY?Think about all the activities, actions, events, techniques that enhance quality.

Testing is only ONE of these.

Bugs are only ONE indication there are or might be quality problems.

Quality is:• Verification• Validation• (Customer) Value-based• The result of care

Page 9: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

9

@GARYPEDRETTI | [email protected]

AGENDA

1. What is Quality?

2. Quality in Scrum

3. Quality in Other Complimentary Agile Techniques

4. Quality and Modern Motivation

@GARYPEDRETTI | [email protected]

QUALITY ENHANCING TECHNIQUES IN SCRUM

ENSURING QUALITY CAN’T FALL OUT OF SCOPE, OR WE RUN OUT OF TIME…

Page 10: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

10

@GARYPEDRETTI | [email protected]

• Professional Scrum Trainer, Scrum.org• Over twenty years in the software

industry as a generalizing specialist: DBA, coder, BA, architect, tester, manager

• Scrum: Team member, Scrum Master, PO, Enterprise-Level Coach

• GaryPedretti.com• @GaryPedretti• http://www.linkedin.com/in/GaryPedretti

• Founder and Owner, Sodoto Solutions (SODOTO = See One, Do One, Teach One)

ABOUT ME

5

@GARYPEDRETTI | [email protected]

ABOUT ME - TESTIMONIALSGary is a hard, pointed, deep, knowledgeable trainer ... one who knows Scrum, agile and software development with deep knowledge of how to create value and good outcomes.. If you want a health check, training, consulting - talk to Gary. I recommend him highly.

If you need help, want to talk with someone, and want facts rather than spin, talk to Gary.

- Ken Schwaber,

co-creator of Scrum, founder of Scrum Alliance, head of Scrum.org

Page 11: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

11

@GARYPEDRETTI | [email protected]

AGILE VS. SCRUM VS. [[WHATEVER]]

Image source: http://blogs.seapine.com

Something we can

“BE”, live by, or

aspire to – a set of

values and

principles

Things we

can “DO” –

frameworks,

processes

@GARYPEDRETTI | [email protected]

AGILE MANIFESTOWe are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:

Individuals and interactions over processes and toolsWorking software over comprehensive documentationCustomer collaboration over contract negotiationResponding to change over following a plan

That is, while there is value in the items on the right, we value the items on the left more.

Page 12: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

12

@GARYPEDRETTI | [email protected]

12 PRINCIPLES BEHIND THE MANIFESTO1. Our highest priority is to satisfy the customer through early and

continuous delivery of valuable software.

2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.

3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.

4. Business people and developers must work together daily throughout the project.

5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.

6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

@GARYPEDRETTI | [email protected]

12 PRINCIPLES BEHIND THE MANIFESTO7. Working software is the primary measure of progress.

8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.

9. Continuous attention to technical excellence and good design enhances agility.

10. Simplicity--the art of maximizing the amount of work not done--is essential.

11. The best architectures, requirements, and designs emerge from self-organizing teams.

12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

Page 13: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

13

@GARYPEDRETTI | [email protected]

SCRUM

@GARYPEDRETTI | [email protected]

QUALITY TECHNIQUES IN SCRUM• The Cross-Functional Team• The Definition of “Done”

• Incremental Delivery• Building Thin Slices Through the Application Architecture • Delivering (Truly) Shippable Features• Immediate Elimination of Bugs

Page 14: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

14

@GARYPEDRETTI | [email protected]

THE CROSS-FUNCTIONAL TEAM

@GARYPEDRETTI | [email protected]

Page 15: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

15

@GARYPEDRETTI | [email protected]

@GARYPEDRETTI | [email protected]

Page 16: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

16

@GARYPEDRETTI | [email protected]

@GARYPEDRETTI | [email protected]

Page 17: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

17

@GARYPEDRETTI | [email protected]

THE CROSS-FUNCTIONAL TEAM

In Scrum, the team, as a unit, is held accountable for delivering quality, potentially-shippable software.

Things that are no longer valid in anyone’s vocabulary:• “Not my problem”

• “I did my part, I’m just waiting for…”• “Works on my machine”

• “They”

@GARYPEDRETTI | [email protected]

THE CROSS-FUNCTIONAL TEAM

Do NOT confuse this with “everyone has to do everything now,” disparaging specialties, or a conflict of interest

• We want skilled specialists, but they must also be team players

• Everyone is trying to achieve the same thing – quality product that makes customers happy

• It’s still a good idea to NOT have the person who wrote the code do all of the testing of that code

Page 18: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

18

@GARYPEDRETTI | [email protected]

THE DEFINITION OF “DONE”

@GARYPEDRETTI | [email protected]

THE DEFINITION OF “DONE”

Page 19: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

19

@GARYPEDRETTI | [email protected]

THE DEFINITION OF “DONE”

The Definition of “Done” is:

• A baseline, non-negotiable level of quality checks• A “code of honor”• A way to align with a non-technical understanding of “done”

• A trust building device

@GARYPEDRETTI | [email protected]

THE DEFINITION OF “DONE”

What’s on your current Definition of ”Done”?

What would you like to add to your DoD?

Have you advocated for that? When and where could you?

Are your DoD items qualified? Quantified?

Page 20: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

20

@GARYPEDRETTI | [email protected]

Traditional Development

Scrum

INCREMENTAL DELIVERY

Plan

Rev

iew

/Ref

lectAnalyze

DesignCodeTest

Release

Plan

Rev

iew

/Ref

lectAnalyze

DesignCodeTest

Release

Plan

Rev

iew

/Ref

lectAnalyze

DesignCodeTest

Release

Plan

Rev

iew

/Ref

lectAnalyze

DesignCodeTest

Release

Plan

Rev

iew

/Ref

lectAnalyze

DesignCodeTest

Release

Working software is available.

Analyz

eDesign

CodeTestReleas

e

Analyz

eDesignCode

TestRelease

Analyz

eDesign

CodeTestReleas

e

Analyz

eDesign

CodeTestReleas

e

Analyz

eDesign

CodeTestReleas

e

Plan Design Code Test Release ReviewAnalyze

@GARYPEDRETTI | [email protected]

BUILDING THIN SLICES THROUGH THE ARCHITECTURE

Page 21: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

21

@GARYPEDRETTI | [email protected]

BUILDING THIN SLICES THROUGH THE ARCHITECTURE

UI Layer

Business Logic

Application

Database

@GARYPEDRETTI | [email protected]

Sprint“Sprint”Sprint“Sprint”

Code

Test

Code

Test

Code

Sprint“Sprint”

These ARE NOT Sprints!

DELIVERING (TRULY) SHIPPABLE FEATURES

Page 22: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

22

@GARYPEDRETTI | [email protected]

SprintSprintSprint

CodeTest

CodeTest

CodeTest

@GARYPEDRETTI | [email protected]

SprintSprintSprint

CodeTest

CodeTest

CodeTest

Page 23: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

23

@GARYPEDRETTI | [email protected]

Sprint

Test Code

…Sprint Sprint

@GARYPEDRETTI | [email protected]

IMMEDIATE ELIMINATION OF BUGS

We could also just replace all these labels with “time,” the phases don’t actually matter

Page 24: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

24

@GARYPEDRETTI | [email protected]

IMMEDIATE ELIMINATION OF BUGS

Bugs found on features you’re currently working on: fix them now

Attitude: Fix, Don’t Manage

Yes, bugs found in production might still go onto the Product Backlog

@GARYPEDRETTI | [email protected]

REVIEW: QUALITY ENHANCING TECHNIQUES IN SCRUM• The Cross-Functional Team• The Definition of “Done”

• Incremental Delivery• Building Thin Slices Through the Application Architecture• Delivering (Truly) Shippable Features• Immediate Elimination of Bugs

Page 25: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

25

@GARYPEDRETTI | [email protected]

QUALITY ENHANCING TECHNIQUES COMPLIMENTARY TO SCRUM

OTHER IDEAS CHAMPIONED BY THE AGILE COMMUNITY

@GARYPEDRETTI | [email protected]

AGILE TECHNIQUES COMPLIMENTARY TO SCRUM

• Test-Driven Development• Continuous Integration and Continuous Delivery

• Refactoring• Sustainable Pace

Page 26: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

26

@GARYPEDRETTI | [email protected]

TEST-DRIVEN DEVELOPMENT

• Think of this as something beyond just writing unit tests!

• A comprehensive mindset and approach to building software• “Test First” might be a better description here• I also like to think of the second “D” in “TDD” as “Design”:

Test-Driven Design

• You can be test-driven with unit tests, acceptance tests, functional tests, non-functional / performance / load tests, etc.

@GARYPEDRETTI | [email protected]

SprintSprintSprint

CodeTest

CodeTest

CodeTest

REMEMBER THIS?

Page 27: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

27

@GARYPEDRETTI | [email protected]

Sprint

Test Code

…Sprint Sprint

REMEMBER THIS?

@GARYPEDRETTI | [email protected]

(ACCEPTANCE?) TEST-DRIVEN DEVELOPMENT

Time (within a Sprint)

Tota

l Tes

ts

Identify (acceptance?) tests at Sprint Planning. These will be initially failing tests.

All (acceptance?) tests for all PBIs must pass by the end of the Sprint

Page 28: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

28

@GARYPEDRETTI | [email protected]

THINK: TEST DRIVEN ALL THE TIME

Another thing to build quality in – take a disciplined approach to bug fixes AND new features in the same way:

• Write (currently failing) covering tests first, if they don’t exist• When fixing a bug, you’re reliably reproducing it here

• Only then write modifications to make the test pass

• All tests written in the first step should be kept to insure no regression or reactivations of fixed bugs later

@GARYPEDRETTI | [email protected]

CONTINUOUS INTEGRATION AND CONTINUOUS DELIVERY

Page 29: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

29

@GARYPEDRETTI | [email protected]

CI – WHERE CAN THIS GO? CD

@GARYPEDRETTI | [email protected]

CI TO CD

Page 30: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

30

@GARYPEDRETTI | [email protected]

CI TO CD

@GARYPEDRETTI | [email protected]

REFACTORING

Page 31: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

31

@GARYPEDRETTI | [email protected]

REFACTORING• Define refactoring?

• How many of you currently have refactoring and/or elimination of Technical Debt on your Product Backlogs?

• As a testing specialist, how would you contribute to refactoring efforts?

@GARYPEDRETTI | [email protected]

SUSTAINABLE PACE

Page 32: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

32

@GARYPEDRETTI | [email protected]

SUSTAINABLE PACEFrom the 8th Principle behind the Agile Manifesto:

“Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.”

Are your Sprints mini-Death Marches? L

@GARYPEDRETTI | [email protected]

REVIEW: AGILE TECHNIQUES COMPLIMENTARY TO SCRUM

• Test-Driven Development• Continuous Integration and Continuous Delivery

• Refactoring• Sustainable Pace

Page 33: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

33

@GARYPEDRETTI | [email protected]

MOTIVATION FOR MODERN INFORMATION WORKERS

MOTIVATION + ALIGNMENT = QUALITY

@GARYPEDRETTI | [email protected]

MOTIVATIONFrom the 5th Principle behind the Agile Manifesto:

“Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.”

Page 34: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

34

@GARYPEDRETTI | [email protected]

VIDEOhttps://sodoto.co/DanPink (or lookup “Dan Pink RSA Animate” on YouTube)

@GARYPEDRETTI | [email protected]

SCRUM: AUTONOMY, MASTERY, AND PURPOSE?

Page 35: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

35

@GARYPEDRETTI | [email protected]

HOW DO WE GO BEYOND THE CLICHÉS?

“Building quality in from the start,” “making quality Job 1,” etc. – how does that really happen?

An aligned, motivated team working towards a single goal!

@GARYPEDRETTI | [email protected]

WE’RE NOT JUST ON THE SAME TEAM…

We (all the different specialties on the cross-functional team) are all doing the same exact job!

How?

• Delivering valuable software to users

• Learning• Removing ambiguity from requests and wants, to get to

what the customer really wants…

Page 36: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

36

@GARYPEDRETTI | [email protected]

REVIEW: MOTIVATION FOR MODERN INFORMATION WORKERS

Use Scrum and Agile Principles to enhance:• Autonomy

• Mastery• Purpose

Understand and enhance how we’re all not just on the same team, but doing the same exact job

@GARYPEDRETTI | [email protected]

REMEMBER: QUALITY• Verification – Build it right

• Validation – Build the right thing • (even if the customer doesn’t even know they want it yet)

• Focus on value: what the customer gets out

• Care…emotion…ownership leads to…

• Motivation, higher-quality results!

Page 37: TECHNIQUES AND ATTITUDE FOR TEAM OWNERSHIP OF QUALITY · 2018. 11. 20. · manager •Scrum: Team ... knows Scrum, agile and software development with deep knowledge of how to create

37

@GARYPEDRETTI | [email protected]

THANK YOU!

QUESTIONS?


Recommended