Agile 101 - Sharing PDF
Agile 101 - Sharing PDF
Agenda
What and Why? How?
1. What is Agile? 1. Common language
2. Why Agile 2. Sprint Execution
3. Agile Principles
4. Adopting Agile
5. Scrum Introduction
6. Product Backlog
4 444 :
Documents Documents Unverified Code Software
Agile is…about delivering value
1. Agile is a group of methods in which requirements and solutions evolve through collaboration with self organizing,
cross-functional teams
2. There are dozens of methods.
3. There is one Agile spirit – It is fundamentally empirical & iterative
4. Feb. 2001 Agile Manifesto was created by 17 software development thought leaders in Snowbird Utah
5. In most Agile methods, like Agile Scrum the product progresses in highly iterative, predictable cadence - a series of
time-boxed “sprints,” which are part of a release plan
6. Requirements are captured as items in a list of “product backlog” and scheduled for work in priority order based on
greatest value
7. Embrace change/emergence as it is impossible to know all requirements in advance
Agile is…about delivering value
• Agile methods:
• Scrum
• Extreme Programming
• Adaptive Software Development (ASD)
• Dynamic System Development
Method (DSDM)
• …
• Agile Alliance
(www.agilealliance.org)
• A non-profit organization promotes
agile development
Constraints Features Cost Schedule
+ Transform
Systems
of Innovation -
Exploratory
Governance
More
application of More application of Systems of
Grow
Change
Traditional
- +
Systems of
Run
Record
Waterfall Agile
The plan creates cost/schedule The vision creates feature
estimates estimates
Value/
Vision
Driven
Plan Driven
MVP
Value
MVP
Combined
Engineering
LiveSite
Data Analytics
End-to-end experience
Fast feedback loops
Agile Benefits Apply to All that Adopt
www.agilemanifesto.org
Agile Principles….
1. The most efficient and effective method of 7. At regular intervals, the team reflects on how to
conveying information to and within a development become more effective, then tunes and adjusts its
team is face-to-face conversation. behavior accordingly.
2. Working software is the primary measure of 8. Our highest priority is to satisfy the customer
progress. through early and continuous delivery of valuable
software.
3. Agile processes promote sustainable development.
9. Welcome changing requirements, even late in
The sponsors, developers, and users should be able development. Agile processes harness change for the
to maintain a constant pace indefinitely. customer's competitive advantage.
4. Continuous attention to technical excellence and 10. Deliver working software frequently, from a couple of
good design enhances agility. weeks to a couple of months, with a preference to the
shorter timescale.
5. Simplicity--the art of maximizing the amount of work
not done--is essential. 11. Business people and developers must work together
daily throughout the project.
6. The best architectures, requirements, and designs
emerge from self-organizing teams. 12. Build projects around motivated individuals. Give
them the environment and support they need, and
trust them to get the job done.
Agile : Get to Market & Make Money Sooner
Value
Value delivered
delivered
Value
delivered
Value
delivered
risk
Value
delivered
Time
Agile Methods
• "Agile Development" is an umbrella term for
several iterative and incremental software
development methodologies
More concepts…
• Commitment focus
• Self managed teams
• Scrum doesn’t prescribe
• It depends on Common Sense!
Video
Chet Rong – Team Structure
Agile Scrum Roles
Scrum Team
• 5 to 9 people
• Consists of a Product Owner, the Development Chickens and Pigs
Team, and a Scrum Master.
• Select Sprint backlog & Complete
• Self-organizing & managing
Agile Scrum Meetings
Sprint Planning
• At the beginning of each Sprint, the Product Owner and
team hold a Sprint Planning Meeting • Daily, same time and place, the Scrum Development
• Outcome is committed Product Backlog Items (PBIs) Team members spend a total of 15 minutes reporting
Sprint Planning Meeting and subordinate Sprint Tasks to each other. Each team member summarizes what he
• The team “pulls” work from the Product Backlog to the did the previous day, what he will do today, and what
Sprint Backlog. impediments he faces.
• Time-For 30-day Sprint is eight hours, reduced • Current Sprint Task List, a Sprint Burndown Chart, and
proportionally for a shorter Sprint. an Impediments List
Sprint Review
• After Sprint execution, the team holds a Sprint Review
• Each sprint ends with a retrospective. At this meeting,
Meeting to demonstrate a working product increment
the team reflects on its own process. They inspect
to the Product Owner and everyone else who is
their behaviour and take action to adapt it for future
interested. This is a four-hour time-boxed meeting for
Sprints. three-hour time-boxed meeting
one-month Sprints.The meeting should feature a live • Set the stage, gather data, generate insights, decide
demonstration, not a report. what to do, close the retrospective. The Art of Focused
• Product Owner reviews the commitments made at the Conversations, breaks the process into similar steps:
Sprint Planning Meeting and declares which items he Objective, reflective, interpretive, and decisional
now considers done. (ORID).
Agile Scrum Artifacts
Backlogs
Product Backlog
• All work that remains to be done
• Prioritized and Initially sized
• Includes both well-defined work and work requiring more definition
• Includes both feature and non-feature work
Sprint Backlog
• Detail work items estimated by team
• Remember to include “inspection” tasks to ensure quality
Agile Scrum Artifacts
Product Backlog
• An ordered list of everything that might be needed in • The Sprint Backlog is the set of Product Backlog items
the product and is the single source of requirements for selected for the Sprint, plus a plan for delivering the
any changes to be made to the product product Increment and realizing the Sprint Goal
• Lists all features, functions, requirements, enhancements,
and fixes that constitute the changes to be made to the
product in future releases. Product Backlog items have
the attributes of a description, order, estimate and value.
Sprint Task
• At any point in time, the total work remaining to reach
a goal can be summed. The Product Owner tracks this
total work remaining at least every Sprint Review.
Agile Scrum Artifacts
Scrum Artifacts include the –
1.Product Backlog, 2. Sprint Backlog 3. the Release Burndown, and 4. the Sprint Burndown.
Agile Team Spirit
Backlog
•Bold, broad goals whose efforts are
Epics > 6 months
Sprint
Plan(s)
•Effort completed
Tasks less than a day
Video
Chet Rong – Specifications
User Story Format
Acceptance Criteria
• Student grades are available online
• Online grades are posted within 12 hours
• Student can find only their grades
What Makes a Good User Story?
I 1. Independent
N 2. Negotiable
V 3. Valuable
E 4. Estimable
S 5. Sized appropriately
T 6. Testable
User Story Types
An example
• Sprints align with calendar months – with the following rules:
• Sprints end with a demonstration on the last Thursday of the month
• Sprint planning also happens on the last Thursday of the month
• The next sprint starts immediately after the planning session
• All teams are on the same sprint schedule
VIDEO
Sprint Planning
Sprint Planning Meeting
Example
• Scrum Team maintains detailed sprint burn down using Post-
It notes or TFS
• Scrum Team is responsible for keeping it up to date – daily!
• Overall Sprint Burn down reported on a daily basis
Product Burn down
Video
Chet Rong - Retrospectives
Sprint Review & Retrospective
Ranked Priorities
• Sprint plans clearly designate ranked priorities
• Items of greatest priority are of greatest value to the business and/or users
Predictable Cadence
• Set a standard schedule and stick to it
• Establish teams and give them time to figure things out and get a rhythm
Collaborative Planning
• The ENTIRE Scrum Team plans together
• The team takes the time needed to plan the full sprint commitment
• Team is planned to or UNDER capacity
Definition of Done
Release
•All agreed Sprints done
• All Compliance items are complete &
Sprint signed off
• All agreed upon stories • Release notes documented
are done • Deployment scripts documented &
• Risks & Dependencies tested
reviewed & updated • Deployed in productions
Story • Review & Retrospective • Product Owner Sign-off
• Performance Testing complete held & documented
• Integration Testing complete
• All tasks are done
• No pri 1 or 2 defects
• Automated Acceptance tests
Task • If SOX Story, the sign-off is
complete
• Implemented
• Unit tested
• Automated tests
• Wiki notes updated
• CI server runs all tests
Credits & Sources
1. Guiding Principles of the Agile Manifesto
www.agilemanifesto.org
2. Guiding Principle of Lean Manufacturing
3. The Toyota Way (book)
4. IP and advice from the Scaled Agile Institute
www.scaledagileframework.org
5. IP and consultation from Net Objectives
www.netobjectives.com
ERP/SAP & Agile
Agile for SAP
&
Bimodal Engineering
Common talks/perception about Agile in SAP
• Does Agile really work on SAP ? We can't expose our core processes to this kind of risk
How to balance system stability, Integrity with the need for agility and innovation.
• Stability and resilience are key Agile adds risk. SAP systems have been built on stability and resilience. How to
manage Pace Layering – System of records, System of differentiation, system on Innovation
• Compliance and Governance Documentation and approvals to support the SOX need for System of record platform
• Process Integration and dependencies SAP can’t be broken down into smaller chunks
• SAP projects are large projects /Greenfield Implementation Smaller chunks reduce the risk. Can
Integrated Business process be effectively managed in smaller chunks?
• Outsourced and off-shore teams Agile work better for co-located team
✓ Bi-Modal Approach Define criteria .Select the right project for Agile and demonstrate success
• Product backlog- Process Level vs Feature Level, Process level decomposition , Story Mapping and
Stories. Business vs SAP User Stories ? Who is the Product Owner?
✓ Test automation including automation of Compliance activities .
✓ Environment challenges . Continue integration and deployment ,testing in production like systems
✓ Elevated Governance and release management process to manage dependency and risk
✓ Release and production support – Agile enabled by “DevOps” best practices: Implementation
and Operations fully integrated for frequent release into production
✓ Non- Functional requirement – finds a way to include and manage technical debt. Include FMEA
in designing - User stories : Feature , Non-functional , Spikes
✓ Measure and Manage IT Debt- including security debt,
✓ Strictly enforced coding guidelines
Adopting Agile in SAP -Addressing the challenges
Project Characteristic - Bimodal Criteria ( Example)
+ Transform
Systems
of Innovation -
Exploratory
Governance
More
application of More application of Systems of
Grow
Change
Traditional
- +
Systems of
Run
Record
• Mode 2 is exploratory.
• In this case, the requirements are not well-
understood in advance.
• Mode 2 is best-suited for areas where an
organization cannot make an accurate, detailed,
predefined plan because not enough is known about
the area. Mode 2 efforts don't presume to predict the
future, but allow the future to reveal itself in small
pieces.
• This work often begins with a hypothesis that is
proven, disproven or evolves during a process
typically involving short iterations/projects.
Why SAP environment is Bimodal
• Complexity • Governance
• 3rd party, integrated platform • SOX system of record
(NOT a system); customized • Heavy controls particularly in
• Release cadence with limited transactional systems
downtime windows • Audit target
• Lack of service isolation • Some heavy controls groups
• Platform maintenance & (Treasury, Payroll) want
health efforts Waterfall
An IT View of Environment Shifts
LOB & IT 50%
New projects controlled by LOB
Digital Business and increasing
System of innovation
System of differentiation
System of record
IT-led 50%
projects Controlled by IT
“Keep the lights on” and decreasing
From Gartner
Additional Slides
SAP Activate/Accelerators
SCRUM Master
▪ Ensures that the team is fully functional, productive and has focus.
▪ Enables close cooperation across all roles and functions and removes barriers.
▪ Shields the team from external interferences.
▪ Ensures that the process is followed. Invites to daily standup meeting, iteration review and planning
meetings.
▪ Ensures a successful Scrum process in a project.
▪ He is a pure process facilitator, motor and motivator of the team
▪ Plus generic project management tasks as to PMM
Scrum Master
• Each team has its own Scrum Master who ensures that the team adheres to Scrum
process, values and rules
• Prepares together with Product Owner and team the sprint & release planning
• Protects the team by external interference & removes obstacles that prevent the team to
proceed at max pace
• Provides the team with watever the team needs to be more productive
• It is the SCRUM master that works for the team, not the other way round
• SCRUM master is the “interface“ to project stakeholders not direclty working with the team
Work Stream/
Scrum Team 2 Agile Coach
Sales and Distribution Guides through the
execution of the
overall Agile
program
Work Stream/
Scrum Team 3 Scrum of
Manufacturing Scrums 1-n
Scrum of Core Team,
Scrums 2 Project Manager,
Chief Product Owner,
Chief Architect,
Agile Coach Core Team
PM Review
responsibility to debrief their (Daily)
Scrum Master
respective teams on the results Scrum Master
Project
Manager
Manufacturing
Technical
Scrum of
Scrums
(Weekly or
Product biweekly) Solution
Owner Procurement Architect
Product
Owner
74
Agile Coach
SAP Functional
Tester Expert
7 +/- 2 People
Authorization Scrum of
Technical
Expert Scrums
Expert
Training
Expert
Technical
Expert Project Manager
Priorities
•
Priorities
Product Owners Feature F Feature I
Priorities
Feature C
Product Backlogs • Feature D • Feature G • Feature J
• Feature E
• Feature A • Feature G
• Feature B • Feature I
• •
Priorities
Program Feature C Feature H
Product Backlog • Feature D • Feature J
• Feature E
Chief Product
Owner
PUBLIC
Partner logo
Objective of this Guideline
▪ Scrum of Scrum meetings allow teams to discuss their work, focusing especially on areas of overlap and
integration
▪ Examples of possible subjects for SAP projects:
– Master Data, Interfaces, Security, Conversion, Reporting.
▪ Scrum of Scrum Meetings differ from daily Scrums:
– They do not need to be held daily (e.g. 2-3 times a week).
– They are problem-solving meetings.
– They do not need to be timeboxed to 15 minutes. Recommended length is between 30 and 60 minutes.
– The team will choose the best representative to participate in the Scrum of Scrums. (Can vary from
meeting to meeting)
Duration Agenda Item
Timeboxed to 15 minutes Each participant answers 3 questions:
• What has my team done since we last met that could affect other teams?
• What will my team do before we meet again that could effect other teams?
• What problems in my team having with whch it could use help from other teams
INTERNAL
Partner logo
Purpose
Objectives:
What and how can we do better next sprint?
While the scrum review meeting focuses on the results or deliverables, the sprint retrospective
concentrates on the sprint process itself
We have to identify means which enable us to be more efficient, better, or just have more fun in the
next sprint (or in the future in general)
What are the current top priority problems and how can we solve them during the next
sprint?
When:
After each sprint (preferably after sprint demo)
As and when required
Time: half an hour to full day, depending on project and team size and sprint duration
If we could redo the same If we could redo the same If we could redo the same
sprint again, we would do sprint again, we would do sprint again, we would not
these things the same these things differently do this at all
way
Post-
Post-
it
Post- it Post-
Post- Post- it
it
it it
Post- Post-
it Post- Post- it
it it
Post-
it
• When deciding what to do, ask people what they feel most passionate about.
• Bring burndown charts, picture of whiteboard or other artifacts which help the team remember what happened.
• Do not “overdo” but focus on the most relevant aspects, focus on top impediments.
• A sprint retrospective could involve, if felt appropriate by the team, other relevant stakeholders (QA, RUN organization,
Architects, etc..)
• Put list of retrospective action items on the team board (to escape the “out of sight, out of mind” syndrome)
• Vary the activities you use in a retrospective (e.g. try emotional seismograph to find out stress patterns during a sprint;
use activities so that everybody – even the introverts – gets heard during the course of the retrospective).
• Consider inviting stakeholders every now and then to bring in new perspectives.
• Consider inviting an external facilitator (i.e. not from within the team).
• Don‘t always use the „generic“ approach (what went well, what can be improved), but instead tackle specific problems in
a retrospective.
• Change the moderator (does not have to be the Scrum Master all the time; but don‘t force anybody to be a
retrospectives facilitator).
• Check whether decisions from former retrospectives have been put to action; if not, consider skipping a retrospective
and make sure old decisions are implemented first.
▪ Estimates are done by the experts in the team who are implementing the functionality and have experience
from similar projects
▪ More expert opinions lead to better the estimation results
▪ Everybody on the team participates in the estimation process
▪ Verbal communication is preferred over detailed written specs
▪ It is possible to use Planning Poker especially for estimates where experts disagree widely (see next slide)
▪ Clear the assumptions of estimates prior to estimating
▪ Avoid anchoring, it invalidates estimates – e.g. “I would say this is easy so it should be X ideal person days”
▪ Estimate in Ideal Person Days
▪ If consensus can not be reached defer the estimate of requirement to later time
▪ Define when you consider backlog item done. Definition must be clearly understood by all involved in the
project. See examples below for recommended definitions.
▪ Ensure that the estimates in the backlog include all activities required for completion of sprint and for
completion of release.
Functionality/Scope Driven
Timeline/Budget Driven
Velocity definition:
▪ Velocity represents the way Agile teams use to measure team’s capacity to process
backlog items.
▪ Velocity is defined as sum of effort estimates of completed (and accepted) backlog
functionality that the team delivered in a given period of time (usually sprint).
Velocity is sum of estimates for backlog items completed during the last sprint
Example: Team estimated 90 ideal person days worth of backlog items, but completed only 85. 85 is their
current velocity.
For 2nd sprint increase the actual velocity of 1st sprint by 20 % (e.g. 32 if all
See Tab Release Planning & functionality has been completed) and for 3rd sprint use average velocity of previous
Burndown in Backlog template sprints.
© 2017 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 98
6. Finalize the Schedule for a Release and Sprints
Example
▪ The sum of ideal person days for release #1 is 180 (result from project backlog).
▪ Taking changed estimates and new requirements into consideration it will take 6 sprints to complete the
project back log for release #1.
▪ Full release schedule the plan needs to also include Integration Test, User Acceptance Testing, End user
documentation and execution of the Final Preparation phase steps. This is the basis for estimation of the
cutover date for the release.
PUBLIC
Partner logo
Objective of this Accelerator
© 2017 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 101
Example Task Board
Day 0
78 1 Task 1 Task 2
2 6
Extra status in
sales transaction Task 3 Task 4
To be completed by
3 1 Task 4 the QA resource in
The estimated ideal
hours per task side the Scrum
team
102 8 Task 1 Task 2
2 5
CRM Interface
Task 3 Task 4
3 3 Task 4
© 2017 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 102
Example Sprint Burndown Ideal Hours
Day 1
Different task
categories (Build,
Documentation,
Testing, Master Data,
Security/Authorization)
78 1
Task 1 Task 2
2 6
Extra status in
sales transaction
Task 3 Task 4
3 1 Task 4
© 2017 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 104
Example Sprint Burndown Ideal Hours
Day 4
Product
Backlog Sprint 2
Backlog User Story
Grooming Grooming Design DEV SIT UAT
Product • It’s a User Story with priority – it should be tagged to feature(s). User story will have a FD • PO
• It should not span across sprints, it should be covered in single sprint • PO
Backlog • Define acceptance criteria. Ex. Working demo, all required documents – TD, all Code performance and static checks • PO
• Prioritize and pick backlogs for the sprint
Sprint • PO, ST
• Handshake between PO and Scrum Team - Understand User story and estimate story points based on complexity and effort – Use Fibonacci series
• PO, ST
Planning/Design • OneITVSO should have been updated with relevant backlogs
• PO
• Design (HDD) to be made ready by the sprint start time
• SM
Scrum Team • It should happen on the first day of the sprint.
• Backlog HDD should be ready by the first day of sprint– prepared by Scrum Architect(SA) and Scrum Master (SM) • ST
Planning • Split user story into tasks and task estimation. Ex. TD creation, code for the object, Quality checks(VF, CI checks etc), Peer review and test
• Meeting should happen on the first day 4th week of the sprint
Sprint Review • Scrum Team demo the backlog deliverable to PO. • PO,ST
• Product Owner(PO) to provide his acceptance based on the acceptance criteria. If accepted backlog set to closed.
• Check daily progress: What we did yesterday and what’s today task – Update the Task status
Daily Scrum • Discuss dependencies, issue and risks • ST
• Change in Sprint (product) backlog(User Story) is evaluated by scrum team. If the change is additional scope, It will be put into new backlog or if the change in current backlog
then it will be terminated
• Partially met backlogs would be kept open and will be worked in the next sprint
PO – Product Owner; SM – Scrum Master; SA – Scrum Architect; ST – Scrum Team