1.2.5 Release and Iteration Planning Flashcards

1
Q

For Agile lifecycles, what two kinds of planning occur?

A

For Agile lifecycles, two kinds of planning occur, release planning and iteration planning.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is release planning?

A

Release planning looks ahead to the release of a product, often a few months ahead of the start of a project. Release planning defines and re-defines the product backlog, and may involve refining larger user stories into a collection of smaller stories. Release planning provides the basis for a test approach and test plan spanning all iterations. Release plans are high-level.

In release planning, business representatives establish and prioritize the user stories for the release, in collaboration with the team (see Section 1.2.2). Based on these user stories, project and quality risks are identified and a high-level effort estimation is performed (see Section 3.2).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is iteration planning?

A

In iteration planning, the team selects user stories from the prioritized release backlog, elaborates the user stories, performs a risk analysis for the user stories, and estimates the work needed for each user story. If a user story is too vague and attempts to clarify it have failed, the team can refuse to accept it and use the next user story based on priority.

The business representatives must answer the team’s questions about each story so the team can understand what they should implement and how to test each story.

The number of stories selected is based on established team velocity and the estimated size of the selected user stories. After the contents of the iteration are finalized, the user stories are broken into tasks, which will be carried out by the appropriate team members.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What should release and iteration planning address?

A

Release and iteration planning should address test planning as well as planning for development activities. Particular test-related issues to address include:
 The scope of testing, the extent of testing for those areas in scope, the test goals, and the reasons for these decisions.
 The team members who will carry out the test activities.
 The test environment and test data needed, when they are needed, and whether any additions
or changes to the test environment and/or data will occur prior to or during the project.
 The timing, sequencing, dependencies, and prerequisites for the functional and non-functional test activities (e.g., how frequently to run regression tests, which features depend on other features or test data, etc.), including how the test activities relate to and depend on
development activities.
 The project and quality risks to be addressed (see Section 3.2.1).

In addition, the larger team estimation effort should include consideration of the time and effort needed to complete the required testing activities.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Testers are involved in release planning and especially add value in the following activities:

A

Testers are involved in release planning and especially add value in the following activities:
 Participating in the detailed risk analysis of user stories
 Determining the testability of the user stories
 Creating acceptance tests for the user stories
 Breaking down user stories into tasks (particularly testing tasks)
 Estimating testing effort for all testing tasks
 Identifying functional and non-functional aspects of the system to be tested
 Supporting and participating in test automation at multiple levels of testing

Release plans may change as the project proceeds, including changes to individual user stories in the product backlog. These changes may be triggered by internal or external factors. Internal factors include delivery capabilities, velocity, and technical issues.

External factors include the discovery of new markets and opportunities, new competitors, or business threats that may change release objectives and/or target dates. In addition, iteration plans may change during an iteration. For example, a particular user story that was considered relatively simple during estimation might prove more complex than expected.

These changes can be challenging for testers. Testers must understand the big picture of the release for test planning purposes, and they must have an adequate test basis and test oracle in each iteration for test development purposes as discussed in the Foundation Level syllabus [ISTQB_FL_SYL], Section 1.4. The required information must be available to the tester early, and yet change must be embraced according to Agile principles. This dilemma requires careful decisions about test strategies and test documentation. For more on Agile testing challenges, see [Black09], Chapter 12.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Testers are involved in release planning and especially add value in the following activities:

A

Testers are involved in release planning and especially add value in the following activities:
 Defining testable user stories, including acceptance criteria
 Participating in project and quality risk analyses
 Estimating testing effort associated with the user stories
 Defining the necessary test levels
 Planning the testing for the release

After release planning is done, iteration planning for the first iteration starts. Iteration planning looks ahead to the end of a single iteration and is concerned with the iteration backlog.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Testers are involved in iteration planning and especially add value in the following activities:

A

Testers are involved in iteration planning and especially add value in the following activities:
 Participating in the detailed risk analysis of user stories
 Determining the testability of the user stories
 Creating acceptance tests for the user stories
 Breaking down user stories into tasks (particularly testing tasks)
 Estimating testing effort for all testing tasks
 Identifying functional and non-functional aspects of the system to be tested
 Supporting and participating in test automation at multiple levels of testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly