Agile Software Development

Similar documents
Agile Software Development

Agile Software Development

Essential Scrum. A Practical Guide to the Most Popular Agile Process. AAddison-Wesley. Upper Saddle River, NJ Boston Indianapolis

SCRUM 1. Upon what type of process control is Scrum based? a. Empirical b. Hybrid c. Defined d. Complex

Software Development Methodologies

Agile Development Overview

SCRUM BODY OF KNOWLEDGE (SBOK Guide)

SESSION 303 Wednesday, March 25, 3:00 PM - 4:00 PM Track: Support Center Optimization

Mastering the Iteration: An Agile White Paper

The Agile Manifesto is based on 12 principles:

Lean Software Development and Kanban

Agile Projects 7. Agile Project Management 21

MTAT Software Engineering

Scrum. in five minutes

The Scrum Guide. The Definitive Guide to Scrum: The Rules of the Game. July Developed and sustained by Ken Schwaber and Jeff Sutherland

FREE ONLINE EDITION. (non-printable free online version) Brought to you courtesy of Sprint-IT &

Agile Software Development with Scrum. Jeff Sutherland Gabrielle Benefield

Agile & PMI Project Management Mapping MAVERIC S POINT OF VIEW Vol. 7

Leveraging Lean/Agile Elements in SAFe to Solve Immediate Business Challenges Nuance Communications, Inc. All rights reserved.

EXIN Agile Scrum Foundation. Sample Exam

What is Scrum? Scrum Roles. A lean approach to software development. A simple framework. A time-tested process

3 Steps to an Effective Retrospective December 2012

Agile Notetaker & Scrum Reference. Designed by Axosoft, the creators of OnTime the #1 selling scrum software.

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

Agile So)ware Development

The Penn Medicine Academic Computing Services (PMACS) Website Development Process

LEAN AGILE POCKET GUIDE

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

Agile for Project and Programme Managers

METRICS DRIVEN CONTINUAL SERVICE IMPROVEMENT USING AGILE CONCEPTS

How To Plan An Agile Project

CSPO Learning Objectives Preamble. Scrum Basics

Scrum methodology report

The Basics of Scrum An introduction to the framework

An Example Checklist for ScrumMasters

Iteration Planning. also called Iteration Kickoff

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

Scrum includes a social agreement to be empirical as a Team. What do you think an empirical agreement is?

Agile Information Management Development

Applying Lean on Agile Scrum Development Methodology

Agile Project Management By Mark C. Layton

When is Agile the Best Project Management Method? Lana Tylka

D25-2. Agile and Scrum Introduction

1. Sprint Planning. Agile Ceremonies Demystified. A four part series written by Angela Boardman, CSM, CSP ATG (4284)

A Glossary of Scrum / Agile Terms

Whitepaper. Agile Methodology: An Airline Business Case YOUR SUCCESS IS OUR FOCUS. Published on: Jun-09 Author: Ramesh & Lakshmi Narasimhan

Course Title: Managing the Agile Product Development Life Cycle

Scrum and Kanban 101

Waterfall to Agile. DFI Case Study By Nick Van, PMP

Changing Roles and Responsibilities from Traditional project management to Agile project management

Agile Scrum Foundation Training

Secrets of a Scrum Master: Agile Practices for the Service Desk

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

AGILE - QUICK GUIDE AGILE - PRIMER

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

SCRUM. A Tool from the Software World Can Improve Analytical Project Outcomes. By KyMBER WALTMUNSON

Introduction to Scrum for Managers and Executives

Introduction to Agile and Scrum

A Viable Systems Engineering Approach. Presented by: Dick Carlson

Agile and lean methods for managing application development process

Scrum In 10 Slides. Inspect & Adapt

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

Agile Software Development

26 May 2010 CQAA Lunch & Learn Paul I. Pazderski (CSM/CSP, OD-CM, CSQA) spcinc13@yahoo.com Cell: AGILE THROUGH SCRUM

Issues in Internet Design and Development

ACP Exam Prep Plus Desk Reference including the Project Management Agile Body of Knowledge TM (PMABOK TM )

Agile Project Management at Penn. Delphine Khanna University of Pennsylvania DLF Forum -- Nov 1, 2010

Agile Software Development

Scrum vs. Kanban vs. Scrumban

TSG Quick Reference Guide to Agile Development & Testing Enabling Successful Business Outcomes

Frank Cervone Vice Chancellor for Information Services and Chief Information Officer Purdue University Calumet January 17, 2012 CARLI Anatomy of a

Scrum Is Not Just for Software

Driving Quality Improvement and Reducing Technical Debt with the Definition of Done

Scrum. SE Presentation. Anurag Dodeja Spring 2010

CSSE 372 Software Project Management: More Agile Project Management

Scrum Guide. By Ken Schwaber, May, 2009

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

The style is: a statement or question followed by four options. In each case only one option is correct.

SmartBear Software Pragmatic Agile Development (PAD) Conceptual Framework

Lean vs. Agile similarities and differences Created by Stephen Barkar -

Is PRINCE 2 Still Valuable in an Agile Environment?

Digital Transformation of the Enterprise for SMAC: Can Scrum help?

Agile software development

Topics covered. Agile methods Plan-driven and agile development Extreme programming Agile project management Scaling agile methods

Agile Project. Management FOR DUMME&* by Mark C. Layton WILEY. John Wiley & Sons, Inc.

Basic Trends of Modern Software Development

Scrum and Testing The end of the test role Bryan Bakker 20 maart 2012

Sprint with Scrum and get the work done. Kiran Honavalli, Manager Deloitte Consulting LLP March 2011

Governments information technology

Kanban For Software Engineering

MM Agile: SCRUM + Automotive SPICE. Electronics Infotainment & Telematics

Agile Development in Today s Industry. Duke CS408 Session 2014

Course Title: Planning and Managing Agile Projects

How to optimize offshore software development with Agile methodologies

SCRUM BODY OF KNOWLEDGE (SBOK Guide)

Vision created by the team. Initial Business Case created. Cross functional resource meeting held. Agile alignment meeting

Agile Software Project Management with Scrum

Agile First Steps: Building Effective Backlogs

No one has to change. Survival is optional. - W. Edwards Deming - Continue your Beyond Budgeting Journey with help from Agile, Lean and Scrum

Overview of Scrum. Scrum Flow for one Sprint SCRUMstudy.com. All Rights Reserved. Daily Standup. Release Planning Schedule. Create.

Transcription:

Agile Software Development Lecturer: Raman Ramsin Lecture 5 Scrum: Sprint Rules 1

Sprints: General Rules 1. A sprint spans: Sprint Planning, Sprint Execution, Sprint Review, and Sprint Retrospective. 2. The following rules apply: 1. Sprints are timeboxed: They have fixed start and end dates. 2. Sprints are short in duration: Between one week and a calendar month. 3. Sprints are consistent in length; exceptions are only permitted under certain circumstances. 4. No goal-altering changes in scope or personnel are permitted during a sprint. 5. During each sprint, a potentially shippable product increment is completed in conformance with the Scrum team s agreed-upon definition of done. 2

Sprints: General Rules 3 [Rubin 2012]

Sprint Rule #1: Timeboxing Timeboxing: A time-management technique that helps organize the performance of work and manage scope. Each sprint takes place in a time frame with specific start and end dates, called a timebox. Inside this timebox, the team is expected to work at a sustainable pace to complete a chosen set of work that aligns with a sprint goal. 4

Timeboxing: Benefits 5 [Rubin 2012]

Timeboxing: Benefits Timeboxing is important since it: Establishes a WIP (Work In Process) Limit Because the team will plan to work on only those items that it believes it can start and finish within the sprint, timeboxing establishes a WIP limit. Forces Prioritization We are forced to focus on the small amount of work that matters most. Demonstrates Progress Timeboxing helps us demonstrate relevant progress by completing and validating important pieces of work by a known date (the end of the sprint). Avoids Unnecessary Perfectionism Timeboxing forces an end to potentially unbounded work by establishing a fixed end date for the sprint by which a good solution must be done. Motivates Closure The fact that the end of the sprint brings with it a hard deadline encourages team members to diligently apply themselves to complete the work on time. Improves Predictability We can predict the work we can complete in the next short sprint. 6

Sprint Rule #2: Short Duration 7 [Rubin 2012]

Short Duration: Benefits Short duration has the following benefits: Ease of Planning It is easier to plan a few weeks worth of work; also, planning requires far less effort and is far more accurate than longer-horizon planning. Fast Feedback During each short sprint we create working software and then have the opportunity to inspect and adapt what we built and how we built it. Improved Return on Investment Short-duration sprints allow for early and more frequent deliverables. Bounded Error Even if we fumble the whole thing, we have lost only two weeks. Rejuvenated Excitement The longer we have to wait for gratification, the faster our interest will decline; short-duration sprints keep participant excitement high. Frequent Checkpoints At the end of each short sprint there is a checkpoint (the sprint review) that allows everyone to base decisions on demonstrable, working features. 8

Sprint Rule #3: Consistent Duration On a development effort, a team should pick a consistent duration for its sprints and not change it unless there is a compelling reason. Compelling reasons might include the following: You want to try a couple of trial sprints before making a final decision on the sprint duration. Public holidays make it more practical to change the duration. Product release occurs in two weeks, so a longer sprint would be wasteful. Bad reason: The team cannot get all the work done within the current sprint length. A week usually means five calendar weekdays. If there is a one-day holiday or training event during the sprint, it reduces the team s capacity for that sprint but does not necessitate a length change. 9

Consistent Duration: Benefits Consistent duration has the following benefits: Cadence (a regular, predictable rhythm or heartbeat) It allows us to acquire a rhythmic familiarity with when things need to happen to achieve the fast, flexible flow of business value. It enables people to get comfortable with the project. It tends to level out the intensity of work: We do not see a steep increase in intensity in the latter phases, so teams can work at a sustainable pace. It significantly reduces coordination overhead: We can predictably schedule sprint activities for many sprints at the same time. If we have multiple teams on the same project, cadence allows for synchronization of the work across all of the teams. Simplified Planning Velocity is typically normalized to a sprint; if the length of the sprint can vary, we will not have a normalized sprint unit. If the length of the sprint can vary, calculating the number of sprints in the release could be challenging and involve unnecessary overhead. 10

Sprint Rule #4: No Goal-Altering Changes Once the sprint goal has been established and sprint execution has begun, no change is permitted that can alter the sprint goal. A sprint goal describes the business purpose and value of the sprint. It typically has a clear, single focus; some examples are given below: Support initial report generation. Load and curate North America map data. Demonstrate the ability to send a text message through an integrated software, firmware, and hardware stack. Get basic printing working and support search by date. The sprint goal is the foundation of a mutual commitment made by the team and the product owner. The team commits to meeting the goal by the end of the sprint, and the product owner commits to not altering the goal during the sprint. 11

No Goal-Altering Changes: Change vs. Clarification Although the sprint goal should not be materially changed, it is permissible to clarify the goal. What constitutes a change? A change is any alteration in work or resources that has the potential to generate economically meaningful waste, or harmfully disrupt the flow of work, or substantially increase the scope of work within a sprint. Examples of goal change: Adding or removing a product backlog item from a sprint. Altering the scope of a product backlog item that is already in the sprint. What constitutes a clarification? Clarifications are additional details provided during the sprint that assist the team in achieving the sprint goal. 12

No Goal-Altering Changes: Consequences of Change Change has consequences: We have to embrace change in a balanced, economically sensible way. Once a sprint starts, our investment in its PBIs increases. If we make a change after sprint planning, we not only jeopardize the planning investment, but we also incur additional costs for having to replan. Investment in work increases as PBIs transition through the states of to do (work not yet started), doing (work in process), and done (work completed). The economics can be indirectly affected by the potential deterioration of team motivation and trust that can accompany a change. The no-goal-altering-change rule is not a law. The Scrum team has to be pragmatic: If the economic consequences of the change are far less than the economic consequences of deferring the change, apply the change. If the sprint goal becomes invalid, the Scrum team may decide that continuing the sprint makes no sense and advise the product owner to terminate it. 13

Sprint Rule #5: Conformance to the Definition of Done Definition of Done: A checklist of the types of work that the team is expected to complete before it can declare its work as potentially shippable. The items on the checklist will depend on a number of variables: The nature of the product being built The technologies being used to build it The organization that is building it The current impediments that affect what is possible 14 [Rubin 2012]

Definition of Done: Evolvability The Definition of Done can evolve over time: Many teams, start out with a definition of done that does not end in a state where all features are potentially shippable. Example: Real organizational impediments might prevent them from reaching this state at the start of development, even though it is the ultimate goal. As a result, they might (necessarily) start with a lesser end state and let their definition of done evolve over time as impediments are removed. Products that include both hardware and software, where hardware is late. The software team will not have the hardware on which to test the software, so it cannot really claim that the results produced are potentially shippable. At first it might claim emulator done, as testing during the early sprints is typically performed against a software emulator of the actual hardware. 15

Definition of Done: Difference with Acceptance Criteria The definition of done applies to the product increment being developed during the sprint. The product increment consists of a set of product backlog items, so each backlog item must be completed in conformance with the definition-of-done checklist. Each product backlog item should also have a set of conditions of satisfaction (item-specific acceptance criteria), specified by the product owner. These acceptance criteria eventually will be verified in acceptance tests that the product owner will confirm to determine if the backlog item functions as desired. E.g., if the product backlog item is Allow a customer to use a credit card, the conditions of satisfaction might be Works with AmEx, Visa, and MasterCard. These item-specific criteria are in addition to, not instead of, the criteria specified by the definition-of-done checklist. A product backlog item can be considered done only when both the item-specific acceptance criteria and the sprint-level definition-of-done criteria have been met. 16

References Rubin, K.S., Essential Scrum: A Practical Guide to the Most Popular Agile Process, Addison-Wesley, 2012. Schwaber, K., Sutherland, J., The Scrum Guide, Published online at: http://www.scrumguides.org/, July 2013 (last visited on: 7 November 2014). 17