Learning Agile - User Stories and Iteration



Similar documents
Rational Team Concert. Scrum Project Management Tutorial

ScrumDesk Quick Start

Managing Agile Projects in TestTrack GUIDE

LEAN AGILE POCKET GUIDE

ibank Quick Start Guide

SECC Agile Foundation Certificate Examination Handbook

MS Excel Template Building and Mapping for Neat 5

HP Agile Manager What we do

Quick Start Guide for OnTime Now

Sometimes: 16 % Often: 13 % Always: 7 %

PLM - Agile. Design Code Test. Sprints 1, 2, 3, 4.. Define requirements, perform system design, develop and test the system. Updated Project Plan

DropSend Getting Started Guide

The Agile Manifesto is based on 12 principles:

Agile and the Seven Deadly Sins of Project Management

Scaling Agile Implementing SAFe. April 7, 2015 Tuesday 3:00-4:00 p.m. 50 Church St., 3rd Floor

Microsoft PowerPoint 2008

AGILE - QUICK GUIDE AGILE - PRIMER

Agile extreme Development & Project Management Strategy Mentored/Component-based Workshop Series

Rational Team Concert. Quick Start Tutorial

Creating an with Constant Contact. A step-by-step guide

Administrator s Guide ALMComplete Support Ticket Manager

Agile Project Management By Mark C. Layton

Mastering the Iteration: An Agile White Paper

Learn how to create web enabled (browser) forms in InfoPath 2013 and publish them in SharePoint InfoPath 2013 Web Enabled (Browser) forms

Agile and lean methods for managing application development process

Lean QA: The Agile Way. Chris Lawson, Quality Manager

Would you like to have a process that unlocks ability to learn and produce faster?

Scrum vs. Kanban vs. Scrumban

Remedy ITSM Service Request Management Quick Start Guide

Agile and lean methods for managing application development process

MINI-GUIDE: Work with Packages in Kitomba

Course Title: Planning and Managing Agile Projects

Introduction to Agile Scrum

ScrumMaster Certification Workshop: Preparatory Reading

Rational Quality Manager. Quick Start Tutorial

Teacher References archived classes and resources

T14 "TIMELINES, ARTIFACTS AND OWNERS IN AGILE PROJECTS" Hubert Smits Rally Software Development BIO PRESENTATION 6/21/2007 1:30:00 PM

Agile Project Forecasting Techniques. "Who Says You Can't Plan Agile Projects?" Matt Davis, PMP, MCITP October 21, 2013

Microsoft Access Rollup Procedure for Microsoft Office Click on Blank Database and name it something appropriate.

Using FileMaker Pro with Microsoft Office

How to use Wireframe in Visio

Scrum. Speaker: Dan Mezick URL: NewTechUSA.com. Copyright 2002: All rights reserved

Lab: Data Backup and Recovery in Windows XP

Microsoft Project 2007 Level 2: Working with Resources and Managing a Project

Intellect Platform - Tables and Templates Basic Document Management System - A101

Search help. More on Office.com: images templates

Answered: PMs Most Common Agile Questions

Creating an with Constant Contact. A step-by-step guide

TAMUS Terminal Server Setup BPP SQL/Alva

Synchronization with Microsoft Team Foundation Server 2010

Getting Started guide

When User Experience Met Agile: A Case Study

Search help. More on Office.com: images templates

Bonita Open Solution. Introduction Tutorial. Version 5.7. Application Development User Guidance Profile: Application Developer

Getting Started with Access 2007

Capstone Agile Model (CAM)

Outlook Tips & Tricks. Training For Current & New Employees

Agile Requirements Definition and Management (RDM) How Agile requirements help drive better results

Scrum Portlet. Expertise. Software. Solutions. User manual. Date: Version: 1.0

Working with SQL Server Integration Services

Lab - Data Backup and Recovery in Windows XP

How to Mail Merge PDF Documents

Step One. Step Two. Step Three USING EXPORTED DATA IN MICROSOFT ACCESS (LAST REVISED: 12/10/2013)

SENDING S & MESSAGES TO GROUPS

top five cognos reports

Module A2 Item Activities, Gantt Chart and Utilization Sheet. A2.1 Project item activities A2.2 Gantt chart A2.3 Utilization sheet

Managing a Project Using an Agile Approach and the PMBOK Guide

Chapter 6. Iteration 0: Preparing for the First Iteration

Virtual Office Remote Installation Guide

Scrum, User Stories, and More! CSCI 5828: Foundations of Software Engineering Lecture 22 11/06/2014

USER GUIDE. Unit 2: Synergy. Chapter 2: Using Schoolwires Synergy

Affiliated Provider Billing/Coding

Your First App Store Submission

Setting Up Your Android Development Environment. For Mac OS X (10.6.8) v1.0. By GoNorthWest. 3 April 2012

GETTING STARTED WITH SQL SERVER

Scrum methodology report

Quick Guide: Payroll tips

Content Editor for Personal Web Pages

Scrum Guidelines. v W W W. S C R U M D E S K. C O M

Creating a New Project

Viewing and Troubleshooting Perfmon Logs

Lookout Software, LLC. All rights reserved.

If you re reading this appendix, you ve probably decided to use Intuit s Basic or

ONLINE MARKETING CENTER. User Guide

Basic Pivot Tables. To begin your pivot table, choose Data, Pivot Table and Pivot Chart Report. 1 of 18

Bank Reconciliation WalkThrough

Agile Systems Engineering: What is it and What Have We Learned?

MTAT Software Engineering

Promap V4 ActiveX MSI File

Transitioning from TurningPoint 5 to TurningPoint Cloud - NO LMS 1

Transitioning from TurningPoint 5 to TurningPoint Cloud - LMS 1

Learn About Analysis, Interactive Reports, and Dashboards

Preparation Guide. EXIN Agile Scrum Foundation

Recreate your Newsletter Content and Layout within Informz (Workshop) Monica Capogna and Dan Reade. Exercise: Creating two types of Story Layouts

Agile Project Management Mapping the PMBOK Guide to Agile Practices. Michele Sliger

Mortgage Trading Exchange (MTE)

Uploading and Editing Your Course Web Page

Analyzing Excel Data Using Pivot Tables

DEPLOYING A VISUAL BASIC.NET APPLICATION

Quick Start Guide. Highly customizable automated trading Automate your trades according to rules and models you create.

Transcription:

How to Plan an Agile Project in 15 Minutes Introduction This tutorial will guide you through planning an agile project in fifteen minutes. You will learn how to: Create a User Story Plan a Release Kick off an Iteration Track progress during an Iteration View Iteration status with a Burndown Chart Wrap up an Iteration Let s get started! Simba s Safaris Roars Simba s Safaris is a thriving adventure travel group, but their current reservation system is manual and out of date. Simba wants to modernize with an online booking system before the next rainy season hits. Agile software development refers to a set of principles and practices centered on small, self-organized and cross-functional teams who work with the business daily to evolve requirements and to iteratively and incrementally deliver solutions. Scrum, XP, and Lean Software Development are all well-known agile frameworks. In Scrum, an iteration is called a sprint. We ve already planned part of the project to help you get started. Now It s up to you and your team to finish the planning and deliver on time. Create Your First User Story Simba wants the new reservation system to accept credit cards. Let s create a user story that captures this requirement: 1. When you log into Rally, the Backlog page appears by default. Click the Actions drop-down button on the right hand side of the screen and select New User Story. A Create User Story dialog box will appear on top of the Backlog page. A User Story describes what the system should do, in a way that emphasizes value to a user or customer. It is usually written in one or two sentences of everyday language. The product backlog is the list of all the work the team will do for the product. It includes stories and defects. 2. Type in the Name box. 1

3. Type the User Story in the Description box: A best practice for user stories is to write them from the point of view of the user. This template is often used: As a [type of user or customer], I want to [achieve some goal] so that [some benefit]. 4. Drop down the State list to see the choices, but leave the Defined option selected: Defined - The user story is described. In-Progress - We ve started work. Completed - Tasks are finished. Accepted - We ve demonstrated working, fully tested software and it s been accepted by the product owner. A product owner is the person on the team who defines the value, holds the vision, and identifies the acceptance criteria for the product. The product owner owns and manages the product backlog and seeks guidance from architects, testers and developers to appropriately size backlog items, and to rank these items on behalf of the customer. 5. Drop down the Iteration list to see the choices, but leave the Unscheduled option selected (Unscheduled stories remain in the backlog): Iterations are typically named for a theme, for example Browse and Book to develop all the user stories related to browsing and booking a safari. In your own project, you would name iterations based on the stories your team was focusing on for that iteration. 6. Enter story points in the Plan Estimate box. An iteration is a short (1 to 4 week) development cycle focused on delivering working, quality software. Each iteration delivers another increment of tested product functionality. Story points are a unit of measure for expressing the overall size of a story. 2

7. Choose the Save & Close button to save your work. Congrats! You ve just created your first user story. We ve already provided the other user stories for the safari booking system, so let s move on to Release and Iteration planning. Create Your First Release 5 Levels of Agile Planning product vision yearly by the product owner product roadmap bi-yearly by the product owner release plan quarterly by the product owner and teams bi-weekly by the teams iteration plan A release is a set of product capabilities that are delivered to the customer for use. Releases are implemented through a series of iterations. Whether teams release every iteration or only once per year, they can benefit from midrange planning: looking ahead 3-6 iterations daily plan daily by the individuals Planning in Agile takes place at 5 Levels; we re going to focus on release and iteration planning in this tutorial. We ve already done the first part of release planning for you: We created the list of desired features that need to be built this is represented by user stories in the backlog. You added to the backlog when you wrote your Pay with credit card user story. We prioritized the stories in the backlog and did a rough estimate of effort for each. Did you know that 64% of the features included in products are rarely or never used [Johnson 2002]? Rally helps eliminate this waste by allowing product owners to continually prioritize only the most important features. 3

We defined three, two-week iterations for the release, each with a unifying theme: o Browse and Book: all of the user stories needed to browse online for a safari and book the reservation. o Streamline Operations: user stories to help simplify the logistics of registering a user for a safari and other back-office operations. o After Your Safari: capabilities that support our customers after they ve completed their safari (e.g., ordering pictures). We specified resources available, in story points, for each iteration. The resources available and our user story effort estimates are combined to determine how many user stories we can fit in an iteration. The next step is to schedule our prioritized backlog of user stories into our three iterations: Story points are a unit of measure for expressing the overall size of a user story. Story points are relative. A story that is assigned a four should be twice as much effort as a story that is assigned a two. Resources represent the number of story points your team can complete within an iteration. 1. Make sure that you are on the Plan tab. If you are not, click the tab now. 2. Select the Plan link from the sub-navigation. 3. Note how the user stories in the backlog are shown on the left of the page (labeled as Backlog), while the release and iterations (labeled as Plan) are shown on the right side of the page. 4. Drag the user story Browse safaris from the backlog to the Browse and Book iteration. Click on the + icon to expand the iteration and see the Browse safaris story. A good plan violently executed now is better than a perfect plan executed next week. - General George S. Patton The making and meeting of commitments is a critical success factor in agile development. Agile teams do not commit to more work than they can get accepted within an iteration. 4

5. Notice how the Resource Commitment box changes to show that a third of the resources available for the iteration have been committed. Rest your mouse over the Resource Commitment box to see more details. The Agile Impact Report from QSMA reports that Rally customers are 50% fasterto-market and 25% more productive than their peers. Note that there are 12 points of resources available for the iteration. The Browse safaris user story was estimated at 4 points, therefore, we now have 8 points still available. 6. Drag the following stories to the Browse and Book iteration: Show availability of safaris Pay with credit card Register for frequent adventurer card Notice how the Resource Commitment box changes to red to show that this iteration is overcommitted. To get us back in line, we ll remove one of the user stories. 7. Drag the Register for Frequent Adventurer card user story from the iteration and drop it to the left of the screen into the backlog. 8. Schedule the next two iterations on your own, taking into account user story priority and the capacity of our iteration. Hint: You won t be able to fit the last user story in; leave it in the backlog. Congrats! You ve just planned your first release. 5

Kicking off an Iteration Iterative development is the essence of Agile. We produce working, fully tested software every iteration and demonstrate and confirm value with the product owner or customer. This check-in ensures that we build the right features while speeding and better predicting our release date. Each iteration is QUALITY software Think of iteration as little cycles, where you re gathering requirements, designing. writing code, and testing. Each cycle produces working, quality software: The general steps for iteration planning are: 1. Identify a goal or theme for the iteration. 2. Select User Stories to be developed. 3. Split the user stories into tasks. Complete running software at the end of each iteration means we can ask the customer Are we doing OK? often Ideas In R D C T R D C T R D Requirements Design Code Test (what s done) An iteration contains all the stages of a complete process Software gets bigger and more complete with each iteration and also factors in what the customer didn t like in the previous iteration Final Software Out C T R D C T R D C T Image from Head First Software Development, Dan Pilone and Russ Miles [2008] You ve checked this software at the end of every iteration so there s a much better chance this is what the customer wants Typically, all tasks necessary to go from a user story to working, fully tested software are identified. This includes test tasks and helps engage testers at the start of the iteration. In release planning we determined the order that features would be delivered. We took priorities and capacity into account, but our effort estimates were rough. As we start planning our iteration, we increase the accuracy of our estimates by decomposing user stories into tasks. Let s task out our Pay with credit card user story to see how Rally tracks our estimates relative to capacity. 6

Adding Tasks to the Pay with credit card User Story 1. Click on the Track tab. The Iteration Task Status page displays by default. 2. Check that the iteration list is at the left of the page display 1 Browse and Book. If not, drop down the Iteration list, and select this option. A task is a single small item of work that helps the team move a particular user story completion. Tasks should be 1 to 16 hours long. 3. Find the Pay with credit card user story and select the first icon from the set on the right to add an inline task. 4. Enter the following information for the task: a. In the Name box, enter. b. In the Estimate box, enter. c. Drop down the Owner list and select your user name. As you add additional users to your project, they will become available in this drop-down list. Agile teams strive to fix all bugs in the iteration in which they are discovered. Task estimates include time for fixing any bugs or a separate Fix Bugs task is identified and estimated. 5. Select the middle icon from the set on the right to save your Task entry. Congrats! You ve just entered your first task. 7

Notice how your task estimates are reflected at the top of the column and how the burndown thumbnail changes to reflect that you have two hours of work to do in the iteration. A burndown chart visually indicates on a daily basis the amount of work left to do for the iteration. 6. Finish tasking out the Pay with credit card user story by entering the following additional tasks: Name Estimate Owner Interface with payment gateway 2 You Display Wait page 1 You Display confirmation page 1 You Tracking Progress During the Iteration During the iteration, your development team will provide status on task progress as they begin work and complete activities. This is often done in a daily standup meeting. Let s record progress for the Create the credit card entry form task that is part of the Pay with credit card user story: A standup meeting, also called a Daily Scrum, is a 15- minute daily status meeting in which team members prioritize their work. Members actually stand up as each person answers three questions: 1. What did I do yesterday? 2. What do I plan to do today? 3. What is getting in my way? 1. You should still be on the Iteration Task Status page. Find the Pay with credit card user story row and click on the + sign if tasks are not already shown. 2. Double-click on the Create the credit card entry form task near the status icons (the D/P/C icons) to activate inline editing. 3. Click on the icon to show that this task has been completed. (The icon is used to indicate work that is in-progress. This is now updated in the user story). 4. Click on the green checkmark icon in the icon set to the far right to save your task status update. Developers can update their tasks from within Eclipse or Visual Studio IDE s using free Rally Connectors. 8

5. Notice how the burndown thumbnail changes to reflect the completed task. Click on the thumbnail to display the full-sized iteration burndown chart. You can create bug reports within Rally, bundle them into suites of related bugs, attach them to stories and add them to the backlog so they can be scheduled into an iteration. Rally also integrates with popular defect management systems. Congrats! You now know how to track progress during an iteration. Now mark the remaining tasks as completed. 9

Wrapping up an Iteration At the end of your iteration, your team will get together to demonstrate your completed user stories to the product owner. A user story is not done until it has been tested by a member of the team and accepted by the product owner or customer. Let s mark the Pay by credit card user story as Accepted. Agile teams use acceptance tests as part of the definition of done for a User Story. Acceptance tests are also referred to as story-tests or customer-facing tests and are used to demonstrate the story to the product owner. 1. Double-click the Pay by credit card user story near the status icons to activate in-line edit. 2. Click the [A] icon to mark the story as accepted. 3. Click on the checkmark icon in the icon set to the far right to save your status update. You will notice that the burndown thumbnail and the full chart both adjust to show story acceptance. Rally provides test management capabilities for storing acceptance tests and more granular codefacing or unit tests. Tests can be attached to stories or grouped into folders and test suites. Congrats! You ve just accepted your first user story. Rally integrates with HP Quality Center as well as popular open source testing tools. Review Our introductory tour of Rally is complete. You now know how to: Create a user story Plan a release Kick off an iteration Track progress during an iteration View iteration status with a burndown chart Wrap up an iteration If you re evaluating Rally for a multi-team/multi-project development, request a free Enterprise Edition trial from your sales representative. You may also want to join the Agile Community at http://www.agilecommons.org to learn more about how Agile teams use Rally. 10