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

Post on 14-May-2015

2.484 views 0 download

Tags:

Transcript of 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

© 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

© 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

© 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

© 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

© 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

© 2011 Seapine Software, Inc. All rights reserved.

What Does It Mean to Be Agile?

• Build projects around motivated individuals

• Developers, testers, users

© 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

© 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

© 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

© 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?

© 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

© 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

© 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

© 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

© 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

© 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

© 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

© 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

© 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

© 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

© 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

© 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

© 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

© 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/

© 2011 Seapine Software, Inc. All rights reserved.

Thank you