[hcm scrum breakfast] how to improve product quality in scrum team

Post on 07-Jan-2017

522 Views

Category:

Software

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

www.axon.vnfb.com/AxonActiveVietNam

1. Why do we need to improve quality ?

2. What makes a good product quality ?

3. How to improve quality ?

4. How to start improve quality ?

5. Q & A

AGENDA

www.axon.vnfb.com/AxonActiveVietNam

1- WHY DO WE NEED TO IMPROVE ?

www.axon.vnfb.com/AxonActiveVietNam

2 - WHAT MAKES A GOOD PRODUCT QUALITY ?

www.axon.vnfb.com/AxonActiveVietNam

Reduce defects

2-WHAT MAKES A GOOD PRODUCT QUALITY ?

A low defect count is often synonymous with high quality software.

Defects are also the most visible sign of quality problems.

www.axon.vnfb.com/AxonActiveVietNam

Improve Design

High quality design makes for an application that is easy to understand and change as new requirements are discovered

2-WHAT MAKES A GOOD PRODUCT QUALITY ?

www.axon.vnfb.com/AxonActiveVietNam

Theory Building

One way to look at software development is theory building

2-WHAT MAKES A GOOD PRODUCT QUALITY ?

www.axon.vnfb.com/AxonActiveVietNam

Build less

It has been shown that we build many more features than are actually used

2-WHAT MAKES A GOOD PRODUCT QUALITY ?

www.axon.vnfb.com/AxonActiveVietNam

3- HOW TO IMPROVE PRODUCT QUALITY ?

www.axon.vnfb.com/AxonActiveVietNam

3-HOW TO IMPROVE PRODUCT QUALITY ?

PRODUCTQUALITY

Test Driven Development

Test Driven Requirements

Definition Of Done

Automation Test

Refactoring

Pair Programming

Simple Design

Release Often

Stand Up Meeting

Testing party

Review Code

Testing by real user

Collective Code Ownership

www.axon.vnfb.com/AxonActiveVietNam

PRODUCTQUALITY

Test Driven Development

Test Driven Requirements

Definition Of Done

Automation Test

Refactoring

Pair Programming

Simple Design

Release Often

Stand Up Meeting

Testing party

Review Code

Testing by real user

Collective Code Ownership

3-HOW TO IMPROVE PRODUCT QUALITY ?

www.axon.vnfb.com/AxonActiveVietNam

REVIEW CODE

www.axon.vnfb.com/AxonActiveVietNam

WHY?

REVIEW CODE

www.axon.vnfb.com/AxonActiveVietNam

WHY?

REVIEW CODE

47% of time spent digging through the

code28% of time

spent in testing

19% development

time

6% of time spent documenting

Source: B. Manachem, 1999

POOR CODE QUALITY

www.axon.vnfb.com/AxonActiveVietNam

WHY?

REVIEW CODE

www.axon.vnfb.com/AxonActiveVietNam

BENEFITS

REVIEW CODE

www.axon.vnfb.com/AxonActiveVietNam

BENEFITS

REVIEW CODE

Finding bugs on the cheap

www.axon.vnfb.com/AxonActiveVietNam

BENEFITS

REVIEW CODE

Ensuring maintainability

www.axon.vnfb.com/AxonActiveVietNam

BENEFITS

REVIEW CODE

Learning and Sharing

www.axon.vnfb.com/AxonActiveVietNam

TYPES OF CODE REVIEW

REVIEW CODE

www.axon.vnfb.com/AxonActiveVietNam

TYPES OF CODE REVIEW

REVIEW CODE

SELF CODE REVIEWTo review one’s own code

Review it carefully and in detail

Preferably not using the same IDE you used to write the code

• Code format and comments

• Logic algorithm correctness

• Unit test coverage

www.axon.vnfb.com/AxonActiveVietNam

TYPES OF CODE REVIEW

REVIEW CODE

PEER CODE REVIEW

In Pair In TeamTo have code examined by one or more colleagues

Cross checkSeries of meetings

www.axon.vnfb.com/AxonActiveVietNam

TYPES OF CODE REVIEW

REVIEW CODE

PEER CODE REVIEW

To have code examined by one or more colleagues

Extremely thorough and effective

Time-consuming

www.axon.vnfb.com/AxonActiveVietNam

ACTIVITY

REVIEW CODE

www.axon.vnfb.com/AxonActiveVietNam

ACTIVITY

www.axon.vnfb.com/AxonActiveVietNam

ACTIVITY

www.axon.vnfb.com/AxonActiveVietNam

ACTIVITY

www.axon.vnfb.com/AxonActiveVietNam

Pair Programming

www.axon.vnfb.com/AxonActiveVietNam

Pair Programming

Chords

Crucial bass

Accompaniment

Melody

www.axon.vnfb.com/AxonActiveVietNam

Pair Programming

Write Code

Review, potential defect, another

better design

www.axon.vnfb.com/AxonActiveVietNam

Intro

www.axon.vnfb.com/AxonActiveVietNam

Public opinions

• Waste double number of people

• My code is personal

• The partner will slow me down

• Trouble about collaborate

This is my perfered programming style

More than twice as fast

Better design, shorter code, easy to extend

Even junior can contribute

Do you have any idea or experience about pair programming?

In your opinion, Is it more effective than solo programming?

www.axon.vnfb.com/AxonActiveVietNam

Project experience

www.axon.vnfb.com/AxonActiveVietNam

Project experience

www.axon.vnfb.com/AxonActiveVietNam

Project experience

Let’s pair programming!

• Reduce risk of errors

• Broader code review

• Opportunity to communicate

knowledge between coders

www.axon.vnfb.com/AxonActiveVietNam

Project experience

www.axon.vnfb.com/AxonActiveVietNam

Project experience

www.axon.vnfb.com/AxonActiveVietNam

Project experience

Catching Errors early

www.axon.vnfb.com/AxonActiveVietNam

Project experience

Get closer

Both

understand

the change

Faster

Confident

about the

correctness

of the result

www.axon.vnfb.com/AxonActiveVietNam

Project experience

QA

www.axon.vnfb.com/AxonActiveVietNam

Project experience

QA

Dramatically

reduce the defect

rate / bugs

www.axon.vnfb.com/AxonActiveVietNam

Investigation

www.axon.vnfb.com/AxonActiveVietNam

Investigation

www.axon.vnfb.com/AxonActiveVietNam

Investigation

www.axon.vnfb.com/AxonActiveVietNam

Investigation

www.axon.vnfb.com/AxonActiveVietNam

Summary

Many mistakes get caught immidately when they are being typed in rather than in QA test

The design is better, the code length is shorter

The team solve problems faster

The project ends up with multiple people understand each piece of system

The team learn to work together and increase communication skill

People enjoy their work more

www.axon.vnfb.com/AxonActiveVietNam

Pair programming

Are there any factors that affect to this technic?

www.axon.vnfb.com/AxonActiveVietNam

• EXPRESS YOUR SUPERIORITY

• NEVER BACK DOWN

• GLOAT

• WATCH SILENTLY

• CODE SILENTLY

• BETRAY TRUST

• DOMINATE THE KEYBOARD

7 ways kill pair programming

www.axon.vnfb.com/AxonActiveVietNam

DEFINITION OF DONE

www.axon.vnfb.com/AxonActiveVietNam

• When can we say “My task (or user story) is done or finished?

DEFINITION OF DONE

www.axon.vnfb.com/AxonActiveVietNam

• A list of criteria which must be met.

1. Definition of “done” for user story

DEFINITION OF DONE

www.axon.vnfb.com/AxonActiveVietNam

Improving team quality and agility

DEFINITION OF DONE

2. Benefit

www.axon.vnfb.com/AxonActiveVietNam

Better release planning

DEFINITION OF DONE

2. Benefit

www.axon.vnfb.com/AxonActiveVietNam

Minimizing the delay of risk

DEFINITION OF DONE

2. Benefit

www.axon.vnfb.com/AxonActiveVietNam

Creating transparency for stakeholders

DEFINITION OF DONE

2. Benefit

www.axon.vnfb.com/AxonActiveVietNam

DEFINITION OF DONE

3. Dicussion

www.axon.vnfb.com/AxonActiveVietNam

DEFINITION OF DONE

4. Activity

Each group: 4 ~ 10 persons.

Tools: stickers and pen.

Activity: disscuss in group the list requirements which a task need to be met when we say it done .

Note: Each sticker just write one requirement, please.

www.axon.vnfb.com/AxonActiveVietNam

DONE STATE

www.axon.vnfb.com/AxonActiveVietNam

AUTOMATION TEST

www.axon.vnfb.com/AxonActiveVietNam

AUTOMATION TEST

1. What is automation test?

www.axon.vnfb.com/AxonActiveVietNam

Saves Time and Money

AUTOMATION TEST

2. Benefit

www.axon.vnfb.com/AxonActiveVietNam

Testing Improves Accuracy

AUTOMATION TEST

2. Benefit

www.axon.vnfb.com/AxonActiveVietNam

Increase Test Coverage

AUTOMATION TEST

2. Benefit

www.axon.vnfb.com/AxonActiveVietNam

Automation Does What Manual Testing Cannot

AUTOMATION TEST

2. Benefit

www.axon.vnfb.com/AxonActiveVietNam

AUTOMATION TEST

3. Discussion

www.axon.vnfb.com/AxonActiveVietNam

4- HOW TO START IMPROVE QUALITY ?

www.axon.vnfb.com/AxonActiveVietNam

1. Define quality clearly

HOW TO START IMPROVEMENT ?

www.axon.vnfb.com/AxonActiveVietNam

1. Define quality clearly

HOW TO START IMPROVEMENT ?

www.axon.vnfb.com/AxonActiveVietNam

2. Choose the way to improve

HOW TO START IMPROVEMENT ?

www.axon.vnfb.com/AxonActiveVietNam

3. Make quality easy to improve

HOW TO START IMPROVEMENT ?

www.axon.vnfb.com/AxonActiveVietNam

www.axon.vnfb.com/AxonActiveVietNam

www.axon.vnfb.com/AxonActiveVietNam

• http://ronjeffries.com/articles/2015-04-24-done/

• https://www.scrumalliance.org/community/articles/2008/september/what-is-definition-of-done-%28dod%29

• http://www.ranorex.com/why-test-automation.html

• http://searchsoftwarequality.techtarget.com/tip/Use-Agile-software-testing-principles-to-plan-your-

tests

• http://searchsoftwarequality.techtarget.com/tip/Seven-ways-to-know-when-to-automate-testing

• http://support.smartbear.com/articles/testcomplete/manager-overview/

• https://dzone.com/refcardz/agile-adoption-improving

Reference source

top related