+ All Categories
Home > Business > The Ultimate Agile Planning Handbook

The Ultimate Agile Planning Handbook

Date post: 14-Jul-2015
Category:
Upload: karen-ho
View: 763 times
Download: 1 times
Share this document with a friend
Popular Tags:
19
Transcript

Traditional planningIn traditional planning, significant time and effort are placed into upfront planning and so plan divergence is discouraged.

3

Agile planningInstead of making “big up front plans” agile teams use the time to respond to customer feedback. They recognize that the true value emerges as customers begin to consume the incremental components they receive.

4

Traditional Teams

Traditionally run projects are planned by an “expert.” One person is assessing and then producing a plan to deliver the end project.

Agile Teams

Agile planning is done with the entire team. It promotes the tenet that the people doing the work should be the ones producing the plans as they have the best knowledge about how the work will get done.

Timeboxing in Agile

“Timeboxing refers to the act of putting strict time boundaries around an action or activity.”

5

When we timebox an event the result is a natural tendency to focus on the most important “stuff” first.

It also guards against “feature creep” -adding features without a scrutinizing relevance or need.

FIGURE - ON AN AGILE PROJECT EVERYTHING IS GIVEN A TIME CONSTRAINT

Iterations/Scrums

Agile teams break projects down into smaller timeboxed durations-iterations/scrums. An iteration length is fixed, meaning it will end regardless of whether all assigned work is completed.

6

At the beginning of an iteration, a team works with the customer to select an appropriate amount of requirements. After that the team breaks-down those requirements into tasks and at the end of the iteration makes a release.

FIGURE - PROJECTS ARE COMPRISED OF FIXED DURATION ITERATIONS.

Backlog - Priority and Size

7

For agile planning to work, the backlog must be prioritized and sized (estimated).

• A prioritized backlog is simply a list of work that needs to get done that is ordered by priority- the most important work is done first.

• A sized backlog is another way of saying that the item should have an estimate.

FIGURE - PRIORITIZED BACKLOG

8

Backlog - Uncertainty and Maturity

Sometimes, when commencing the building of the software, not all requirements are ready so we should also consider the uncertainty and maturity levels of our tasks.

FIGURE - ITEMS WITH LOW MATURITY OR LOW CERTAINTY ARE NOT GOOD CANDIDATES FOR ITERATION ASSIGNMENT – TEAM SHOULD SPEND MORE TIME MATURING OR VALIDATING THE REQUIREMENT BEFORE DEVELOPMENT BEGINS

9

Iteration Velocity and Capacity

Understanding how much work the team can deliver in one iteration (capacity) is a good estimate of how long (velocity) the project will take.

Planning an iteration is very much like using a bucket (iteration) to scoop water out of a pool (backlog).

FIGURE - CAPACITY

10

Decomposition into Tasks

The backlog is comprised of requirements (user stories - value required by the customers). Those requirements are assigned to the current or the next iteration filling it to capacity and are then decomposed into smaller tasks.

Agile teams much rather have team members assign work to themselves instead of having a project manager assign work to them.

FIGURE - ITERATION PLANNING ASSIGNS ITEMS FROM THE PRODUCT BACKLOG TO THE ITERATION BACKLOG AND DECOMPOSES INTO TASKS

11

Release Planning

Many (traditional) organizations release a version of their software after a long period of time.

Agile companies use a continual release process where features are rolled out to customers as soon as they are complete.

The Agile teams begin each release with release planning, and ends each release with a production software release.

FIGURE - RELEASES HAVE A SIMILAR STRUCTURE TO AN ITERATION

13

1. Handling incomplete work at the end of an iteration

There are only a few things that teams can do to manage unfinished work:move the work forward into the next iteration (if the task is close to finish) or move it back to the main backlog (if the task was not even started).

FIGURE - WORK NOT COMPLETED IN AN ITERATION CAN EITHER MOVE TO THE BACKLOG OR TO FUTURE ITERATIONS.

14

2. Handling Bugs

Having bugs is inevitable and must be addressed by all Agile teams.Perhaps the most common way to handle bugs on a project is to allocate a particular amount of capacity in the iteration toward fixing bugs.

FIGURE - AGILE TEAMS ALLOCATE A % OF THE CAPACITY OF AN ITERATION FOR BUGS

15

3. Handling uncertainty with spikes

Every project will contain a degree of uncertainty. Uncertainty is usually resolved with experimentation and further research.

Agile teams dedicate a timeboxed amount of time to addressing uncertainty (spikes).

FIGURE - SPIKES ARE SCHEDULED INTO AN ITERATION TO INCREASE CERTAINTY ABOUT TECHNOLOGY OR REQUIREMENTS.

16

4. No time for agile meetings

The following four meetings are critical to this process and should never be skipped because they are a critical best practice in Agile planning:

• Daily standup (Daily Scrum) • Iteration planning (Sprint planning) • Iteration review (Sprint review) • Iteration retrospective (Sprint retrospective)

FIGURE - MINIMUM MEETINGS FOR A HEALTHY AGILE TEAM

17

Conclusion

There are different valid approaches to development, but the Agile approach has legions of fans around the world. It’s an efficient method to organize complex work into executable chunks while empowering all stakeholders to participate in the process.

19

TeamPulse is an all-in-one agile project management software that helps you manage requirements & bugs, plan releases and track

progress while keeping your team constantly connected.

Want to put this theory into practice?

For more information:http://www.telerik.com/teampulse/

E-mail: [email protected]: +1‒888‒365‒2779


Recommended