15
20.10.2011 1 Qualitätsmanagement in der agilen Software-Entwicklung Neue Chancen nutzen Dr. Andreas Birk, Gerald Heller October 20, 2011, 3. Software Testing Day Baden-Württemberg Welcome, Agile! October 20, 2011 Copyright © 2011, Software.Process.Management 2

Qualitätsmanagement in der agilen Software-EntwicklungTitle: Qualitätsmanagement in der agilen Software-Entwicklung Author: Dr. Andreas Birk, Gerald Heller Keywords: QM, Agile Created

  • Upload
    others

  • View
    10

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Qualitätsmanagement in der agilen Software-EntwicklungTitle: Qualitätsmanagement in der agilen Software-Entwicklung Author: Dr. Andreas Birk, Gerald Heller Keywords: QM, Agile Created

20.10.2011

1

Qualitätsmanagement in der

agilen Software-Entwicklung

Neue Chancen nutzen

Dr. Andreas Birk, Gerald Heller

October 20, 2011, 3. Software Testing Day Baden-Württemberg

Welcome, Agile!

October 20, 2011 Copyright © 2011, Software.Process.Management 2

Page 2: Qualitätsmanagement in der agilen Software-EntwicklungTitle: Qualitätsmanagement in der agilen Software-Entwicklung Author: Dr. Andreas Birk, Gerald Heller Keywords: QM, Agile Created

20.10.2011

2

Waterfall Model (1970)

October 20, 2011 Copyright © 2011, Software.Process.Management 3

Royce, W

insto

n (1970),

"M

anagin

g the D

evelo

pm

ent o

f Larg

e S

oft

ware

Syste

ms",

Pro

ceedin

gs o

f IE

EE

WE

SC

ON

26 (

August)

: 1–9.

Waterfall Model (1970)

October 20, 2011 Copyright © 2011, Software.Process.Management 4

Royce, W

insto

n (1970),

"M

anagin

g the D

evelo

pm

ent o

f Larg

e S

oft

ware

Syste

ms",

Pro

ceedin

gs o

f IE

EE

WE

SC

ON

26 (

August)

: 1–9.

Page 3: Qualitätsmanagement in der agilen Software-EntwicklungTitle: Qualitätsmanagement in der agilen Software-Entwicklung Author: Dr. Andreas Birk, Gerald Heller Keywords: QM, Agile Created

20.10.2011

3

Scrum (1995)

October 20, 2011 Copyright © 2011, Software.Process.Management 5

Sprint

Planning

Meeting

Collect Input &

Requirements

Potentially

Shipable Product

Increment

Sprint 1-4 Weeks

Agile Iteration

Cycle (Sprint)

Acceptance &

Delivery

Daily Scrum

Meeting

Sprint

Backlog

Product

Backlog

October 20, 2011 Copyright © 2011, Software.Process.Management 6

Individuals?

Page 4: Qualitätsmanagement in der agilen Software-EntwicklungTitle: Qualitätsmanagement in der agilen Software-Entwicklung Author: Dr. Andreas Birk, Gerald Heller Keywords: QM, Agile Created

20.10.2011

4

October 20, 2011 Copyright © 2011, Software.Process.Management 7

… Or Team Collaboration?!

October 20, 2011 Copyright © 2011, Software.Process.Management 8

Toy Projects?

Page 5: Qualitätsmanagement in der agilen Software-EntwicklungTitle: Qualitätsmanagement in der agilen Software-Entwicklung Author: Dr. Andreas Birk, Gerald Heller Keywords: QM, Agile Created

20.10.2011

5

October 20, 2011 Copyright © 2011, Software.Process.Management 9

… Or Real-Life

Projects?!

Agenda

QM in Agile Development / Scrum

… and not (only) “agile testing”!

… does Agile need QM?

Real Projects Need Real QM

Collaboration is Key

October 20, 2011 Copyright © 2011, Software.Process.Management 10

Page 6: Qualitätsmanagement in der agilen Software-EntwicklungTitle: Qualitätsmanagement in der agilen Software-Entwicklung Author: Dr. Andreas Birk, Gerald Heller Keywords: QM, Agile Created

20.10.2011

6

QM & Testing in Agile Development

October 20, 2011 Copyright © 2011, Software.Process.Management 11

Sprint

Planning

Meeting

Collect Input &

Requirements

Potentially

Shipable Product

Increment

Sprint 1-4 Weeks

Agile Iteration

Cycle (Sprint)

Acceptance &

Delivery

Daily Scrum

Meeting

Sprint

Backlog

Product

Backlog

Unit Testing

Acceptance

Testing

Test-Driven

Development

Test

Automation

Acceptance

Criteria

Exploratory

Testing

Early & Iterative Testing

Ensures Quality &

Clarifies Requirements

Iteration

Retrospectives

Pair

Programming

Sprint

Review

Challenges of Agile QM

October 20, 2011 Copyright © 2011, Software.Process.Management 12

Sprint

Planning

Meeting

Collect Input &

Requirements

Potentially

Shipable Product

Increment

Sprint 1-4 Weeks

Agile Iteration

Cycle (Sprint)

Acceptance &

Delivery

Daily Scrum

Meeting

Sprint

Backlog

Product

Backlog

System Testing

„End Game“ /

Nonfunctional Testing

Test Preparation &

Test Infrastructure

Role & Position of

Testers

Sprints with

Testing Focus

Joint

Estimation

Page 7: Qualitätsmanagement in der agilen Software-EntwicklungTitle: Qualitätsmanagement in der agilen Software-Entwicklung Author: Dr. Andreas Birk, Gerald Heller Keywords: QM, Agile Created

20.10.2011

7

Agile QM Building Blocks

October 20, 2011 Copyright © 2011, Software.Process.Management 13

Business

QM &

Testing Agile

Infrastructure

Empowerment

Skills

Agile QM Building Blocks

October 20, 2011 Copyright © 2011, Software.Process.Management 14

Business

Goals

QA Goals

Guidelines &

Constraints

Test

Management

Organization

Testing

Techniques

Agile

Principles

Agile Practices

Agile Testing

Techniques

Tools for Test Automation, Build Automation, Tracking & Reporting

How shall agile QM be

implemented?

Context matters

For instance:

One agile team

Large development

organization

Complex product with

system-level testing

Page 8: Qualitätsmanagement in der agilen Software-EntwicklungTitle: Qualitätsmanagement in der agilen Software-Entwicklung Author: Dr. Andreas Birk, Gerald Heller Keywords: QM, Agile Created

20.10.2011

8

Separate Reporting Spoils Collaboration

October 20, 2011 Copyright © 2011, Software.Process.Management 15

Features

Developed

Time

Tests

Running

Time

Transparency for „One Team“!

October 20, 2011 Copyright © 2011, Software.Process.Management 16

To Do In Work Done

US1

US8

US2

US5

US9

US7

US3

US6

Page 9: Qualitätsmanagement in der agilen Software-EntwicklungTitle: Qualitätsmanagement in der agilen Software-Entwicklung Author: Dr. Andreas Birk, Gerald Heller Keywords: QM, Agile Created

20.10.2011

9

Transparency for „One Team“!

October 20, 2011 Copyright © 2011, Software.Process.Management 17

To Do In Work Developed Tested

US1

US8

US2

US5

US9

US4

US7

US3

US6

Facets of Agile Testing

October 20, 2011 Copyright © 2011, Software.Process.Management 18

Business Facing

Technology Facing

Su

pp

ort

ing th

e T

ea

m

Critiqu

ing t

he

Pro

du

ct

Unit Tests

Components Tests

Automation

Functional Tests

Examples

Story Tests

Prototypes

Simulations

Automation

+ Manual

Exploratory

Scenarios

Usability Testing

User Acceptance Testing

Alpha/Beta

Manual

Performance Testing

Load Testing

Security Testing

“-ility” Testing

Tools

Q1

Q2 Q3

Q4

Bri

an

Ma

rick, 2

00

3.

Page 10: Qualitätsmanagement in der agilen Software-EntwicklungTitle: Qualitätsmanagement in der agilen Software-Entwicklung Author: Dr. Andreas Birk, Gerald Heller Keywords: QM, Agile Created

20.10.2011

10

One Agile Team per Product

October 20, 2011 Copyright © 2011, Software.Process.Management 19

Testers participate in agile cycles (i.e., as members of agile team)

Developer

Scrum Master

Developer

Developer Tester

Tester Product Owner

Central test manager (part-time) coordinates

and advances testing practices across agile

teams

Test Manager

Tester Network

Central test manager (part-time) coordinates

and advances testing practices across agile

teams

Test Manager

Large Development Organization per Product

October 20, 2011 Copyright © 2011, Software.Process.Management 20

Testers participate in agile cycles (i.e., as members of agile team)

Developer

Scrum Master

Developer

Developer Tester

Tester Product Owner

Specialized testing cycle in parallel with development cycle

Tester Test Lead Tester Tester

Joint Meetings

Tester Network

Page 11: Qualitätsmanagement in der agilen Software-EntwicklungTitle: Qualitätsmanagement in der agilen Software-Entwicklung Author: Dr. Andreas Birk, Gerald Heller Keywords: QM, Agile Created

20.10.2011

11

Real QM: Size Matters

Example development scenario

200 team members in 30 agile teams

6 iteration cycles

12 user stories per iteration & team (average)

In total: 2.160 user stories = 30 x 6 x 12 user stories

October 20, 2011 Copyright © 2011, Software.Process.Management 21

Real QM: New QM Roles & Structures

Multiple requirements levels for

large systems …

require …

Suitable multi-level testing

functions

System-level testing

Test features instead of user

stories

System-level specialized testing

(i.e., non-functional qualities)

Testing structure & repository

Overall system testing (tool)

infrastructure

October 20, 2011 Copyright © 2011, Software.Process.Management 22

Dean Leffingwell. Agile Software Requirements:

Lean Requirements Practices for Teams, Programs,

and the Enterprise. Addison-Wesley, 2010.

Page 12: Qualitätsmanagement in der agilen Software-EntwicklungTitle: Qualitätsmanagement in der agilen Software-Entwicklung Author: Dr. Andreas Birk, Gerald Heller Keywords: QM, Agile Created

20.10.2011

12

System testing after functionality has been

completed (focus: quality testing)

Tester

Test Manager Tester

Tester

Tester

Complex Product with System-Level Testing

October 20, 2011 Copyright © 2011, Software.Process.Management 23

Testers participate in agile cycles (i.e., as members of agile team)

Developer

Scrum Master

Developer

Developer Tester

Tester Product Owner

Specialized testing cycle in parallel with development cycle

Tester Test Lead Tester Tester

Joint Meetings

Tester Network

Size Matters: HP example

October 20, 2011 Copyright © 2011, Software.Process.Management 24

Tool Example Topological View (Hewlett-Packard)

Theme

Feature

User Story Linked Defects and Tests

Various Filter & Configuration Options

Status Indicators

Efforts and Progress

Statistics

Page 13: Qualitätsmanagement in der agilen Software-EntwicklungTitle: Qualitätsmanagement in der agilen Software-Entwicklung Author: Dr. Andreas Birk, Gerald Heller Keywords: QM, Agile Created

20.10.2011

13

Agile QM Building Blocks

October 20, 2011 Copyright © 2011, Software.Process.Management 25

Business

QM &

Testing Agile

Infrastructure

How Shall QM Move Towards

Supporting Agile Development?

1. Understand agile development & agile QM

2. Build-up agile development competence

3. Participate in agile cycles

4. Establish new agile QM roles & structures

Teams for specialized parallel testing cycles

Separate system testing function

5. Provide leadership for product success

October 20, 2011 Copyright © 2011, Software.Process.Management 26

Page 14: Qualitätsmanagement in der agilen Software-EntwicklungTitle: Qualitätsmanagement in der agilen Software-Entwicklung Author: Dr. Andreas Birk, Gerald Heller Keywords: QM, Agile Created

20.10.2011

14

Embrace Agile!

Agile is here, today

Successful agile development requires QM participation

Optimize agile QM to maximize customer satisfaction

Deliberately & systematically migrate QM towards Agile

October 20, 2011 Copyright © 2011, Software.Process.Management 27

Thank You!

October 20, 2011 Copyright © 2011, Software.Process.Management 28

Contact

Dr. Andreas Birk

Software.Process.Management

[email protected]

http://www.swpm.de

Blog & Resources

http://MakingOfSoftware.com

Gerald Heller

Page 15: Qualitätsmanagement in der agilen Software-EntwicklungTitle: Qualitätsmanagement in der agilen Software-Entwicklung Author: Dr. Andreas Birk, Gerald Heller Keywords: QM, Agile Created

20.10.2011

15

Photo Credits

Slide Origin

2 lfchavier1, http://www.flickr.com/photos/lfchavier/1719252985/

2 wiccked1, http://www.flickr.com/photos/wiccked/4283763845/

2 Microsoft Clip Art MP900423084

6 Microsoft Clip Art MP900443146

7 Microsoft Clip Art MP900443014

8 greenkozi1, http://www.flickr.com/photos/themacinator/3276123216/

9, 21 alex.ch1, http://www.flickr.com/photos/alex-photos/499976855/

28 Andreas Birk

28 Gerald Heller

1: Available under a Creative Commons license, http://creativecommons.org/

October 20, 2011 Copyright © 2011, Software.Process.Management 29