a software manager’s guide to defining testing in an agile age

26
© 2011 Seapine Software, Inc. All rights reserved. A Software Manager’s Guide to Defining Testing in an Agile Age A Seapine Software Webinar Peter Varhol Solutions Evangelist, Seapine Software

Upload: seapine-software

Post on 14-May-2015

2.487 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

A Software Manager’s Guide to Defining Testing in an Agile Age

A Seapine Software Webinar

Peter VarholSolutions Evangelist, Seapine Software

Page 2: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

Agenda

• What Does it Mean to Be Agile?

• Principles of Agile Development

• Integrating Testing into Agile Development

• Testing and Automation

• Making Testing Count with Agile

• Summary and Questions

Page 3: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

What Does It Mean to Be Agile?

• Satisfy the customer through early and continuous delivery of valuable software

• Working software is the primary measure of progress

• Deliver working software frequently

• Build projects around motivated individuals

• At regular intervals, the team reflects on how to become more effective

Page 4: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

What Does It Mean to Be Agile?

• Early and continuous delivery of software

• Requirements less formal – user stories

• Iterative development cycle

• One week to one month

• Working software at the end of each

Page 5: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

What Does It Mean to Be Agile?

• Working software is the primary measure of progress

• User stories translated to features

• Features delivered after each iteration

Page 6: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

What Does It Mean to Be Agile?

• Deliver working software frequently

• One week to one month

• Timeframe continues to shorten

Page 7: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

What Does It Mean to Be Agile?

• Build projects around motivated individuals

• Developers, testers, users

Page 8: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

What Does It Mean to Be Agile?

• Reflect on how to become more effective

• Don’t keep making the same mistakes

Page 9: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

Integrating Testing into Agile Development

• There’s not one single prescription

• Agile methodologies promote short release cycles

• Every project is unique

Page 10: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

Assignment: Reinvention

• Quality is a high priority

• But testing can’t plan like it used to

• Needed: a new approach to testing

• Testers have to reinvent themselves and their craft

• A path to value

Page 11: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

Integrating Testing into Agile Development

• Reinventing testing for Agile

• Testers remain essential to quality

• A long lead time before active testing is infeasible

• How to reconcile test planning with up-front execution

• Can planning be saved?

Page 12: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

Integrating Testing into Agile Development

• Iterate on planning

• Keep pace with development

• Iterate on testing

• Manage risk so that the most important features and actions are well-tested

• Iterate on quality

• Measure your quality

• Improve it in the next iteration

Page 13: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

Integrating Testing into Agile Development

• Early involvement by testers

• Testers need to work directly with product owners

• Must understand the user needs

• Get underneath the user story

Page 14: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

Integrating Testing into Agile Development

• Focus testing on features that make a difference to users

• No requirements to analyze

• No time for comprehensive test plans

• Learn what the users need

• Make sure those features work

• Users sign off, testers validate

Page 15: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

Integrating Testing into Agile Development

• Ensure that testers take the lead

• Take responsibility for application quality

• Become an interface to the user community

• Work with developers as equal partners

Page 16: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

Integrating Testing into Agile Development

• Enable testers to work side-by-side with developers

• Testers need to know about tactical development decisions

• This is especially important in Agile projects without formal requirements

Page 17: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

Integrating Testing into Agile Development

• Make automation an integral part of testing

• Agility and automation work hand in hand

• Accelerate testing to show agility

• Data collection and analysis essential

Page 18: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

Testing and Automation

• Automate both process and testing

• Agile methodologies are lightweight

• But tools are essential for speed and flexibility

• Tools accelerate repetitive manual processes

• But tool overhead can’t outweigh benefits

• Easy to learn and use

• Provide easily digestibleinformation

Page 19: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

Testing and Automation

• Process Automation

• User story tracking - Hint: 3 x 5 cards don’t cut it

• Feature backlog

• Defect tracking

Page 20: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

Testing and Automation

• Testing automation

• Test management

• Automated functional and regression tests

• Automated load testing – valuable for assessing design and coding practices

Page 21: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

Making Testing Count With Agile

• Ensure that testers take the lead on the building and execution of functional, regression, and acceptance test cases

• Independence from development helps ensure objective evaluation

Page 22: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

Making Testing Count With Agile

• Enable testers and developers to make coding decisions together

• Helps prioritize testing

• Guide development in decision-making

Page 23: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

Making Testing Count with Agile

• Automate to achieve speed and efficiency

• Use tools when there is a clear advantage

• Don’t get bogged down with configuring and maintenance

• Focus on the goal

Page 24: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

Summary

• Agile methodologies and testing work well together

• Quality is the common factor

• Testers need earlier involvement, more interaction with users and developers

• An independent voice of quality

• Automation makes testing feasible

• Repetitive activities are accelerated

Page 25: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

For More Information

• Seapine Software – www.seapine.com

• “Testing in an Agile Age” Whitepaper http://bit.ly/hiGtkk

• Agile Expedition – www.seapine.com/exploreagile

• The Seapine View - http://blogs.seapine.com/

Page 26: A Software Manager’s Guide to Defining Testing in an Agile Age

© 2011 Seapine Software, Inc. All rights reserved.

Thank you