Scrum Test Planning. What goes into a scrum test plan?

Similar documents
Agile Test Plan How to Construct an Agile Test Plan

The XBOSoft 2012 Scrum Testing Survey

AGILE TEST MANAGEMENT WITH VISUAL STUDIO

Businesses now operate in rapidly changing environment.

Sign up to mailing list Join Slack, teaching team is available. All links are on the course website Slides are uploaded there too

Scrum Testing: A Beginner s Guide

Rule = A definition of what a Product Backlog is. Good Practice = A practice which is commonly done and is good to do. Avoid = A practice which, in

HOW WE WORK: OUR SYSTEM: OUR METHODOLOGY:

Top 5 Reasons Why Agile Fails (and how to avoid them!) March 2017

Test Management Forum

Lecture 8 Agile Software Development

Improving Agile Execution in the Federal Government

D25-4. How Intertech Uses Agile

Organizational Matters

1. The Case for Agile 2. The Scrum Process 3. Scaling Scrum

improving It s what we do. TM

How to Choose an Enterprise Agile Platform

Chapter 3 Agile Software Development. Part 1b

SDEFT: Scrum Driven Engagement Framework for Testing

Agile Planning. Petri Heiramo. Agile Coach, CST

The Faster Road to Innovation Why Workopolis Went Agile

8 th of April 2015 Bucharest, Romania Vlad Gabriel Sorin Agile PM/Scrum Master

Joe s Unofficial Scrum Checklist

13. Team evolutionary developement

Agile Delivery Framework (ADF)

Why SCRUM I O A N N I S K O S T A R A S A G I L E C R E T E

Lecture 1. Topics covered. Rapid p development and delivery is now often the most important requirement for software systems.

Sample Exam ISTQB Agile Foundation Questions. Exam Prepared By

Session 11E Adopting Agile Ground Software Development. Supannika Mobasser The Aerospace Corporation

Where do you want to get to?

approach to successful project

AHGILE A N D B O O K

getting started with Scrum

Introduction to Agile/Extreme Programming

Leadership Release Management Continuous Integration. october 9, 2013

A Journey & How it Works for Clients

Assessor-3 Release-1 Retrospective-ESI

ag ile / ajel/ CONTENTS Introduction What is Agile? Agile Testing Survey Survey Summary The Future of Agile and Agile Testing

Agile Scrum Process Checklist

Scrum Team Roles and Functions

Getting the Most Value from Agile Feedback Systems:

TESTING IN A CONTINUOUS DELIVERY WORLD Improve speed without rushing software out the door.

Vendor: GAQM. Exam Code: CSM-001. Exam Name: Certified Scrum Master (CSM) Version: Demo

What s next for Traditional Functional QA Managers?

Achieving Balance: The New Pivotal Points of Software Development

Agile XXL. March 29, Scaling Agile for Project Teams. Alan Bustamante, PMP, PMI - ACP

Agile Beyond Software

This is my blog btw. I post in both Swedish and English.

Course Title: Agile for Business Analysts

Events. Artifacts. Roles. Product Owner Scrum Master Development Team. Sprint Sprint Planning Daily Scrum Sprint Review Sprint Retrospective

AGILE AND SCRUM IN A SMALL SOFTWARE DEVELOPMENT PROJECT- A CASE STUDY

The Science of Running Effective User Acceptance Testing Cycles

Agile Projects 7. Agile Project Management 21

Software Engineering & Project Management Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000)

Software Design COSC 4353/6353 D R. R A J S I N G H

Course Title: Agile for Business Analysts

Introduction. Failure. Why Projects Fail. Agile in an Hour

BUSINESS INSIGHTS. Making the Transformational Shift to Scrum

BUSINESS INSIGHTS > Making the Transformational Shift to Scrum

Agile and Secure Can We Be Both? San Antonio AITP. August 15 th, 2007

Case Study: How to Eliminate Flaws of Waterfall and Agile Development Processes Using a Hybrid Model

Software Engineering Lecture 5 Agile Software Development

Chapter 3 Agile Software Development

Responsibilities of an Agile Project Manager

Accelerating Time to Market with Agile Testing

I hate Maintenance! Maintenance SUCKS!

DevOps at its Core. Ann Marie Fred IBM July 15, 2015

When Will it Be Done? Predicting the Future With Agile Estimating and Planning

Agile Essentials Track: Business Services

4. Agile Methods. Prof. Dr. Dirk Riehle, M.B.A. Friedrich Alexander-University Erlangen-Nürnberg. Version of

Abstract Now that the Agile campaign has entered cross organizations and industries, lot of variations are emerging. Hybrid Agile is a new

Introduction. Failure. Why Projects Fail. Agile in an Hour

"Session-based Exploratory Testing on Agile Projects"

Agile Software Development Techniques for Small Scale Research Projects. how to not go down the rabbit hole

What is Continuous Integration. And how do I get there

Automated Test Design as an Improvement to TDD and BDD for Agile Testing

Mike Cottmeyer blog.versionone.net

Scrum and Agile Processes. Dr.-Ing. Oliver Ciupke Haufe-Lexware GmbH & Co. KG 2011

Accelerating Collaboration, Integrity and Innovation Polarion ALM - Enterprise Agile Jiri Walek Clara Cismaru VP Product Management Product Manager

Agile Development Processes. CSCE Lecture 3-08/31/2017

Leassons Learned EisMan project

Watson Internet of Things. Agile Development Why requirements matter

Agile Product Planning and Estimation with Steve Ropa

Software Development Life Cycle

Is Agile Project Management fit for small tech start-ups?

Scale agile with the industry s most comprehensive set of agile project and portfolio management capabilities.

CSC301. Scrum, detailed view of an agile process. CSC301, Winter 2016

How to Scale Agile Across Departments with WHITEPAPER

Agile Tutorial for the Senior Project Class School of Computing and Information Sciences Florida International University

An Introduction to Scrum

ARCHITECTING PROJECT MANAGEMENT for Enterprise Agility. Enable Organization with Agile using Tooling/Technology

International Scrum Master Foundation. Study Guide Take the Certification online

A Guide to Critical Success Factors in Agile Delivery

MCGILL UNIVERSITY Montreal, Quebec September 20 21, A DMAIC Framework for Improving Software Quality in Organizations: Case Study at RK Company

The Changing Roles of BAs and QAs in a SCRUM world

Agile Software Development

By: Ronny Trefftzs CSCI 5828: Foundations of Software Engineering Spring 2012 Professor: Kenneth Anderson

What is Software Engineering?

Agile Software Development:

Scrum & Business Intelligence

Transcription:

Scrum Test Planning What goes into a scrum test plan?

2 Do you really need a test plan when using agile? How about scrum test planning? With scrum, one of the popular flavors of agile, the entire team works together with one goal, working software, at the end of each sprint. Scrum teams are ideally collocated, so the flow of information is uninterrupted, but does this mean there is no need for a test plan? In traditional software development project life cycles, test plans play a very important role. In the initial phase of the project, the testing team sits together and discusses the testing scope based on the requirements specification to ensure that all critical features mentioned in the specification will be tested. The testing team also discusses who tests what and the timing of each test phase in coordination with development. The output of this process is the test plan. This whitepaper discusses test planning as part of scrum, a popular agile methodology. As part of the paper, we discuss test planning and scrum in general, and then testing methodologies and test planning particular to scrum. Test Plan What is a test plan? A test plan is a document that systematically describes the testing approach. The team needs the test plan because they want to make the following testing components clear: Test Coverage: What do we test and what is the extent of our testing? Typically included are functionalities of the SUT (System under Test) and any other regulatory standards that the system must comply with (i.e. information privacy, safety standards). In traditional waterfall oriented development projects many parts of the test coverage and methodologies are decided at the beginning, before development work starts.

In Agile development, Software is developed in incremental, rapid cycles. This results in small incremental releases with each release building on previous functionality. So rather than huge test plan documents, we have incremental test plans as well. 3 Test Method: What methodologies shall be used during the testing period and what process is applied? How will the test cases be generated? Do we need a smoke test before every regression test? Do we automate our regression tests? How to decide when the testing phase is finished? By the number of remaining defects or by timeline? What are our acceptance criteria or how do we make the go/no go decision? Test Responsibility: Who tests what? How are results reported? This is not only about the role in the testing organization and the task assignment, but may also include other responsibilities such as collecting and maintaining test data. This is a simple way to categorize information in a test plan document. However, in agile, and in particular scrum (Agile also includes other methodologies such as Kanban and various hybrids), a formal test plan document is not always necessary. Scrum handles elements in testing plan in a different way. With so many organizations moving toward agile, many are changing their processes and are wondering how QA fits into the agile development process. Scrum Basics What is scrum? Scrum is one of many agile methodologies that values customer involvement and fast response as a key element and success factor. Scrum allows a team to quickly adapt to changing requirements from customers and involves the client as early as possible in the development process by delivering finished pieces of software every 2-4 weeks thereby facilitating user feedback early on, rather than at the end of the development cycle. Some common concepts in Scrum include the product owner, scrum team, user stories, and sprint.

4 When requirements change, the scrum process gives you the ability to adapt to these changes. So you can t have a huge rigid test plan. Scrum testing needs to be as agile as the requirements themselves. Product Owner and Scrum team: In a scrum team, the customer either directly participates as the product owner or has a representative standing in as product owner. In many organizations, the product manager takes on this role. The product owner is responsible for collecting requirements from stakeholders and explaining these requirements to the scrum team. The scrum team is responsible for implementing the requirements as delineated and agreed upon during each sprint planning meeting. The scrum team consists of all team members including requirements analysts, business analysts, developers, testers, etc. User Stories: A user story in scrum is a way to express requirements from the customer point of view. User stories follow the format As a (user) I want to.. There is an entire science behind writing good user stories that are not only quick and easy to write, but also easily understood by development staff. This simple and direct format is also a good basis for testing. Sprint: A sprint is a fixed working period of between 2-4 weeks and is actually a re- packaging of a similar concept called time- boxing. During each sprint, the scrum team focuses on finishing the user stories that were included in the sprint backlog (work items for that 2-4 week time period). At the end of any given sprint, a working product should be delivered by the team to the product owner that encompasses the functionality and features in those user stories. Sprint Planning Meeting: At the beginning of each sprint, all team members together plan the work for the upcoming sprint. During the planning meeting the team: a) Receives guidance and explanation of each user story from the product owner, who also answers questions. After the scope of the stories becomes clear, the team then estimates their effort: i.e. the required time to develop and test this functionality. The testing method and testing effort is also included in the estimation session. This is where agile poker comes in for effort estimation. b) Moves selected user stories from the product backlog to the sprint backlog (work to be completed in that sprint) based on knowledge of past sprint velocity and priority. c) Decomposes the user story into detailed tasks, which includes the tasks for writing test specifications and test execution. Testing in Scrum Test Coverage in Scrum: In scrum, all customers requirements are documented and stored as user stories, and prioritized by the product owners and put onto the product backlog. All user stories should be developed and tested against the requirements of the customer. Only the user stories that must be finished in the next 2-4 weeks are moved from product backlog to the sprint backlog, so the testing team spends most of their effort on those particular user stories. Therefore, there is not only general test coverage for the whole project, but also dedicated test coverage for each particular sprint. Test Method in Scrum: As mentioned earlier, the scrum team analyzes each user story and breaks it down into detailed tasks. For example, a user story which concerns both the UI in the browser as well as the back- end server application may contain three development tasks: develop UI, connect the web service and develop routines to maintain the database. In the meantime, different testing tasks are also created. A manual testing

5 When implementing Agile Testing, keep your feedback loop short. As part of your process, talk about defects immediately with developers. If you need clarification regarding requirements, talk to the Product Owner. Then adapt your test plan and testing accordingly, on the spot. In agile, everyone takes ownership at driving toward a high quality product, but that doesn't mean everyone does everything. People should still do what they are best at doing, but also be willing to jump in and help out where they can, and be cognizant of what need to be done outside their own role. task is created for testing the UI and web service connections between the internal application and an external service while a simple automation test may be applied to the database testing task. Some tasks may aim at refactoring code and reducing technical debt without implementing any new functionality. In this case, sometimes the most effective testing method for these stories are automated regression tests. To summarize: in scrum, testing methods used depend on the nature and elements of the user stories. Test Responsibility in Scrum: Traditional development teams usually include a dedicated team of testers. This is not the case for pure scrum teams. In scrum, all team members are striving for on- time and quality delivery and there is no clear segregation or differentiation between tester and developer roles. Everyone should pick up what he/she can do. That is in theory, but in reality, experienced testers usually bring a lot of additional testing experience that the developers do not have. Additionally, testers bring a different viewpoint than a developer and they are also usually able to act as the bridge between developer and customers (product owners). Members who have testing experience can easily understand the user stories from the customer view while they also understand some development concepts. Therefore, experienced testers can help a scrum team eliminate miscommunication and gaps that often occur between the customers and the developers.

6 Conclusion As we ve discussed, traditional/waterfall projects usually dictate the need for a detailed test plan document because they want to set up a very clear view of the testing scope, testing method and testing responsibility in the beginning of a project. However, scrum, one of the many flavors of agile, involves and applies these concepts in a more incremental way which can be XBOSoft more effective Inc. and natural in that test planning actually occurs with each sprint. 640 Rocca Ave. The sprint planning meeting helps the team decide the testing scope and method for each sprint while adapting to the current situation. Therefore, there is less necessity to create a formal test plan document at the beginning of the project. Rather, each sprint has testing tasks as part of the sprint plan. Additionally, one of the most important scrum credos is that testing is everyone s work and that quality is the responsibility of everyone. South San Francisco, CA 94080 XBOSoft Inc. www.xbosoft.com 3333 Bowers Ave. #130 Santa Clara, CA 95054 www.xbosoft.com Devices will not always be readily available when you need them