Introduction to Agile Scrum

Similar documents
Getting Agile with Scrum. Mike Cohn - background

Scrum. SE Presentation. Anurag Dodeja Spring 2010

An Introduction to Scrum

An Introduction to Scrum. The Agile Manifesto a statement of values

Course Title: Planning and Managing Agile Projects

Issues in Internet Design and Development

Agile Software Development. Stefan Balbo / Patrick Dolemieux

Getting Agile with Scrum. We re losing the relay race

Agile Scrum Workshop

AGILE & SCRUM. Revised 9/29/2015

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

What does it mean to be Agile. Marek Majchrzak, Andrzej Bednarz Wrocław,

Agile Projects 7. Agile Project Management 21

CSSE 372 Software Project Management: More Agile Project Management

LEAN AGILE POCKET GUIDE

Course Title: Managing the Agile Product Development Life Cycle

Introduction to Agile Software Development Process. Software Development Life Cycles

Agile Development Overview

Agile Project Management By Mark C. Layton

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

The Agile Manifesto is based on 12 principles:

Agile Software Development with Scrum. Jeff Sutherland Gabrielle Benefield

CompSci Fall 2014 Professors: Robert Duvall, Ajay Patel, Salman Azhar (rcd@cs, ajay.patel, azhar@cs)

D25-2. Agile and Scrum Introduction

Agile Project Management and the Real World. Emily Lynema DLF Fall 2010 November 1, 2010

The traditional project management uses conventional methods in software project management process.

How to manage agile development? Rose Pruyne Jack Reed

ScrumMaster Certification Workshop: Preparatory Reading

Agile Project Management

Water-Scrum-Fall Agile Reality for Large Organisations. By Manav Mehan Principal Agile consultant

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

Mike Cohn - background

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

Agile Scrum and PMBOK Compatible or Contrary?

Introduction to Agile and Scrum

Agile Project Management

Applying Lean on Agile Scrum Development Methodology

PMP vs. Scrum Master

1. CMMI and Scrum TWO BRANCHES OF SOFTWARE DEVELOPMENT

Traditional SDLC Vs Scrum Methodology A Comparative Study

RISK MANAGMENT ON AN AGILE PROJECT

The Agile Project Manager

Agile Project Management: Adapting project behaviors to the software development environment

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

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

Requirement Gathering for small Projects using Agile Methods

USCIS/SPAS: Product Backlog Items and User Stories 4/16/2015. Dr. Patrick McConnell

Software processes that are:

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

Agile Scrum Training. Nice to meet you. Erik Philippus. Erik Philippus (1951)

Atern The latest version of the DSDM approach which makes DSDM appropriate to all types of project.

Integrating PRINCE2 and Scrum for successful new product development

Product Development with Scrum

EXIN Agile Scrum Foundation

Capstone Agile Model (CAM)

Agile Software Engineering Practice to Improve Project Success

A Glossary of Scrum / Agile Terms

Scrum Guide. By Ken Schwaber, May, 2009

Mastering the Iteration: An Agile White Paper

CSPO Learning Objectives Preamble. Scrum Basics

Agile Software Development

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

History of Agile Methods

Managing a Project Using an Agile Approach and the PMBOK Guide

Agile and the Seven Deadly Sins of Project Management

The Basics of Scrum An introduction to the framework

When is Agile the Best Project Management Method? Lana Tylka

Certified ScrumMaster Workshop

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

"Bezpieczny Projekt"

Agile Information Management Development

Quality Assurance in an Agile Environment

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

Agile Practitioner: PMI-ACP and ScrumMaster Aligned

SECC Agile Foundation Certificate Examination Handbook

Software Requirements and Specification

Introduction to Agile and Scrum

Agile with XP and Scrum

Lean Agile Scrum Business Value Development and Delivery using Agility. Brenden McGlinchey Software Done Right, Inc.

Roles: Scrum Master & Project Manager

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

Build Your Project Using Scrum Methodology #3 of a Series, by Pavan Kumar Gorakavi, M.S., M.B.A, G.M.C.P, C.A.P.M.

Adapting Agile Software Development to Regulated Industry. Paul Buckley Section 706 Section Event June 16, 2015

Agile Project Management with Scrum

PMI Agile Certified Practitioner (PMI ACP) Boot Camp Course AG05; 4 Days, Instructor-led

Agile Software and Systems Engineering Tutorial

AGILE - QUICK GUIDE AGILE - PRIMER

Certified Scrum Master Workshop

Scrum for Managers, Zurich March 2010

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

Certified ScrumMaster (CSM) Content Outline and Learning Objectives January 2012

Applying Agile Project Management to a Customized Moodle Implementation

Introduction to Agile

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

Certified ScrumMaster (CSM) Content Outline and Learning Objectives January 2012

Kanban vs Scrum Making the most of both

Transcription:

Introduction to Agile Scrum by Julia M. Lobur Penn State Harrisburg CMPSC 487W Fall 2015 Introduction to Scrum Learning Goals Relationship of Scrum to other Agile methods Scrum Framework Scrum Roles Scrum Planning Sprint Execution Sprint Retrospective and Closure Scrum Anti-Patterns 1

Agile Manifesto Statement of Values Waterfall versus Iterative 2

Scrum as an Agile Process Agile is a framework to structure, plan, and control iterative and incremental development, where requirements and solutions evolve through collaboration between autonomous, crossfunctional teams. Scrum is the most popular Agile methodology. Others include: Crystal Methods (Crystal Clear) Dynamic Systems Development Method (DSDM) Feature Driven Development (FDD) Lean software development Kanban (development) Key Scrum Concepts The focus is on delivering the highest business value in the shortest time. Working software delivered in increments (called sprints) every two weeks to one month. The business sets priorities. Teams self-organize to determine the best way to deliver the highest priority features. 3

Scrum vs. Waterfall Traditional project management emphasizes: Milestones Artifact ("deliverables") management Formal reporting Change control Scrum emphasizes: Iteration Incremental product delivery Transparency--project progress is reported and visible to all. User participation. 4

High-Level Scrum Framework Scrum Roles Scrum Roles Product Owner Prioritize the Product backlog Ensure project success Scrum Master Coach/Lead the Scrum team Ensure team effectiveness Scrum Team Small (5-9), self-directed team Cross-functional (BA, Dev, QA, DBA, UI, etc.) Multiple Scrum Teams (Scrum of Scrums) 5

Product Owner Responsible for product success Creates product vision Decides features in/out of scope Prioritizes in-scope features Approves feature changes Accepts/rejects work products Prioritize the Product backlog Ensure project success Represents concerns of product users Scrum Master Accountable to project manager Coaches team in Agile values and practices Removes impediments Ensures that the team is fully functional and productive Facilitates cross-functional cooperation Shields the team from external interferences 6

Scrum Team Typically 5-9 people Cross-functional: Programmers, testers, UX designers, etc. Membership varies as needed (e.g., DBA, training specialists, etc.) Membership should change only between sprints Teams are self-organizing Team determines content of each sprint No titles/rank (rarely possible in practice) High-Level Scrum Framework Scrum Ceremonies & Artifacts 7

Planning Large-Scale Agile Project Onion Diagram Scrum Planning 8

Product Planning Scrum Planning Scrum Planning 9

Scrum Planning 10

Release Planning : User Stories A user story is a high-level requirement statement It explains what the user expects from the system in order to achieve the user's business goal The idea is to provide just enough information so that effort estimation can be completed Each release consists of at least one user story usually many stories Release Planning : User Stories User story format: As a [role], I need to [execute feature] so that [business goal happens] The story must be testable and traceable! A story is a "lightweight" requirement The business goals of the system must be covered by all of the user stories. Watch for other functional requirements that do not come from the users! 11

INVEST Criteria for Good User Story I Independent: Self-contained - no dependencies on other stories N Negotiable: Until sprint begins stories can be changed V Valuable: Delivers value to the client E Estimable: You must be able to estimate effort required to realize a user story S Scalable (small sized): Small enough to plan and prioritize with some certainty T Testable: Sufficiently detailed to enable test development User Stories : Index Card Method 12

Release Planning : User Stories All user stories are collected and distributed to the team, or discussed in a team meeting. The team provides effort estimates using "story points." Story points are rough guesses of complexity produced using a Fibonacci sequence. Story Point Estimation 13

Release Planning Product owner collaborates with team Usually done within only a day or two Feature list (with corresponding user stories) is input for the effort, release plan is its output Using story point estimates, release is planned with customer focus and business goals in mind. Which features have immediate business value? What are the dependencies: business and technical? Timeframes are set User acceptance criteria are defined MoSCoW Prioritization M S C W Must have: Requirement that must be satisfied product to be considered a success. Should have: High-priority feature to be included if possible. Could have: Desirable but not necessary feature. Won't/Would have: Not be implemented in current release, consider for future release. "Feature Buffer" A Guide to the Business Analysis Body of Knowledge, v 2.0, sect 6.1.5.2 14

Release Planning Update the project timeline to reflect estimates based on user stories. Use the project start date, end date, sprint duration, and number of sprints. Sprint Planning For each sprint, a prioritized feature list (with user stories) is provided to team The team creates task lists from the user stories Team determines which tasks are to be included in the sprint The task must be small enough so that it can be completed with a 4 8 week sprint Tasks not selected for the sprint go on the backlog 15

Initially all items are in the backlog. This tool (Axosoft) distinguishes between "requested" and "approved" backlog items. Sprint Execution The scrum master leads daily standup team meetings Anyone can attend, including the project manager and project sponsor. Goal: Within 10 minutes (total!) every "committed" team member answers the following questions: What did you accomplish yesterday? What do you hope to accomplish today? What are the impediments preventing you form accomplishing today's task? 16

Sprint Execution Individuals sign up for work of their own choosing (work is never assigned) Estimated work remaining is updated daily Any team member can add, delete or change the sprint backlog Work for the sprint emerges If work is unclear, define a sprint backlog item with a larger amount of time and break it down later Update work remaining as more becomes known Items are moved from the backlog to "development" to "complete." 17

The Scrum Development Cycle Sprint Execution Acceptance criteria for the sprint work items is established at the beginning of the sprint. "Definition of Done" (DoD) Should include user acceptance criteria and all appropriate documentation! At the end of each sprint, a sprint review or sprint retrospective takes place. [Formal] Review For only the stakeholders Retrospective For the team. 18

Sprint Retrospective Purpose is to improve team's effectiveness Entire team participates, perhaps even the stakeholders 30-90 minutes What worked well during the sprint? What changes can be tried to make things better? Look for "quick wins" Attempt three or fewer changes Sprint Retrospective 1. If we were to do the sprint over, we would do these things the same. 2. If we were to do the sprint over, we would do these things differently. 3. What should we try next time? 19

Sprint Closure Update backlog Mark off completed items Add new items Reprioritize to include new items May need to rework project schedule!!! Update burndown chart indicates velocity Velocity: Amount of work removed from the backlog during each sprint. Plan next sprint Burndown Chart Total story points remaining in backlog Ideal or Estimated Velocity = Story Points per Iteration 20

Scrum Antipatterns Weak team or poor management Good team chemistry crucial to success Problems with team or its management will doom the project. If problem just in team, ask Scrum master to intervene. If problem with Scrum master, talk to project sponsor. Scrum Antipatterns Reverting to waterfall Usually caused by poorly executed scrum process. Sponsors or PM don't see results Project goes over time and budget Push heavyweight controls onto group Possible solution Look for outside expert to bring back on track Don't wait for sponsor or PM to raise the flags! The burndown chart is your friend! 21

Requirements creep Scrum Antipatterns As users use delivered software, requirements emerge: This is good. If sprints don't consistently result in a reduction of backlog items, you'll never get done. Possible solutions Reduce sprint duration Make sure backlog is reprioritized and costs assigned! Change freeze (as a last resort) Scrum Antipatterns Lack of documentation, or poor product performance Solution requires correct "definition of done." Suitable documentation must be part of acceptance criteria Build refactoring into schedule Make sure to require technical experts (e.g., QA staff and lead architect) to signoff on deliverables 22

Conclusion Scrum is a powerful Agile technique It is a disciplined process Must be well-managed Not suitable for all types of development effort Selected Scrum Books Agile and Iterative Development: A Manager s Guide by Craig Larman Agile Estimating and Planning by Mike Cohn Agile Project Management with Scrum by Ken Schwaber Agile Retrospectives by Esther Derby and Diana Larsen Agile Software Development Ecosystems by Jim Highsmith Agile Software Development with Scrum by Ken Schwaber and Mike Beedle Scrum and The Enterprise by Ken Schwaber User Stories Applied for Agile Software Development by Mike Cohn 23

Selected Scrum Sites www.scrumalliance.org www.scrum.org www.mountaingoatsoftware.com www.agilesoftwaredevelopment.com www.noop.nl www.controlchaos.com scrumdevelopment@yahocgroups.com Questions? 48 24