getting started with scrum

39
Getting started with Scrum Agile Methodologies September 2014 Juan José Vázquez CTO

Upload: tecsisa

Post on 29-Oct-2014

114 views

Category:

Leadership & Management


1 download

DESCRIPTION

Scrum is an agile approach for developing innovative products and services

TRANSCRIPT

Page 1: Getting started with Scrum

Getting started with ScrumAgile Methodologies

September 2014

Juan José Vázquez

CTO

Page 2: Getting started with Scrum

Getting started with Scrum|September 2014

Page 3: Getting started with Scrum

Getting started with Scrum| 3

What is Scrum?Getting started with Scrum

September 2014

• Scrum is an agile approach for developing innovative products and services

Page 4: Getting started with Scrum

Getting started with Scrum| 4

What is Scrum?Getting started with Scrum

September 2014

• Scrum is not a standardized process but a people-centric framework for organizing and managing work.

• Based on a set of values, principles and practices that provide the foundation to which the organization will add its unique implementation (engineering practices and specific aproaches).

• Provides the foundation and walls of the building but not the details and features.

Page 5: Getting started with Scrum

Getting started with Scrum| 5

Why Scrum?Getting started with Scrum

September 2014

• Mainly because waterfall doesn’t work (poor technical solutions, delays, overwork, unsatisfied customers, developers, managers and stakeholders, etc)

• This is true especially in cutting-edge scenarios with a high degree of uncertainty• A lot of waste in many steps of the process: requirements definition, analysis,

architecture design, application design, implementation, etc.• Fast feedback needed. Mistakes are found out too late!. Just-in-time decisions

needed.• More cross-functional teams wanted.• The question now is not, can we build it?, but… should we build it?.

Page 6: Getting started with Scrum

Getting started with Scrum| 6

Scrum benefitsGetting started with Scrum

September 2014

• Delighted customers• Improved return of investment• Reduced costs• Fast results• Confidence to succeed in a complex world• More joy

But caution, Scrum is not a silver bullet!

Page 7: Getting started with Scrum

Getting started with Scrum| 7

Can Scrum help you? (Cynefin framework)Getting started with Scrum

September 2014

+ Interrupted-Driven(Kanban)

Scrum

Page 8: Getting started with Scrum

Getting started with Scrum| 8

Scrum rolesGetting started with Scrum

September 2014

Page 9: Getting started with Scrum

Getting started with Scrum| 9

Scrum roles: Product OwnerGetting started with Scrum

September 2014

• Empowered central point of product leadership (similar to a product manager but with more capabilities and responsibilities).

• Is the single authority responsible for deciding which features and functionality to build and the order in which to build them.

• Mantains and communicates to all other participants a clear vision of what the Scrum team is trying to achieve.

• Is responsible for the overall success (or failure) of the solution being developed or mantained.

• Has the obligation to make sure the most valuable work possible is always performed.

• Collaborates with the ScrumMaster and development team and must be available to answer soon.

Page 10: Getting started with Scrum

Getting started with Scrum| 10

Scrum roles: ScrumMasterGetting started with Scrum

September 2014

• Helps everyone involved understand and embrace Scrum values, principles and practices.

• Acts as a coach, providing process leadership and helping the Scrum team and the rest of the organization develop their own high-performance, organization-specific Scrum approach.

• Helps the team resolves issues and make improvements.• Protects the team from outside interference.• Takes a leadership role in removing impediments that inhibit team productivity.• Has no authority to exert control over the team (no project manager or

development manager). Functions as a leader, not a manager.

Page 11: Getting started with Scrum

Getting started with Scrum| 11

Scrum roles: Development TeamGetting started with Scrum

September 2014

• Diverse and cross-functional collection of people who are responsible for designing, building and testing the product.

• Self-organizes to determine the best way to accomplish the goal set out by the product owner.

• 5 – 9 people in size.• Collectively have all skills needed to produce good quality, working software.

Page 12: Getting started with Scrum

Getting started with Scrum| 12

Scrum activities and practicesGetting started with Scrum

September 2014

Page 13: Getting started with Scrum

Getting started with Scrum| 13

Product BacklogGetting started with Scrum

September 2014

• Prioritized list of work to do: features, changes, defects, improvements, design, learning, technical debt (more later),…, everything has to be in the backlog!.

• Managed by the product owner but everyone involved can collaborate: internal and external stakeholders, customers, the scrum team, etc.

• PBIs (product backlog items) are ordered using factors such as value, cost, knowledge and risk.

• PBI size: relative size measure, ideal days or story points (recommended).• Variety of grain. As much detail, much readiness to start working in it. But… not

too much detail (it could be waste).• Control WIP (work in process). Not too many PBIs (again, it could be waste).

Page 14: Getting started with Scrum

Getting started with Scrum| 14

SprintsGetting started with Scrum

September 2014

• Timeboxed (fixed start and end dates) iterations during which the work is performed.

• 1 month maximum (try to be constant to produce cadence).• Don’t alter goals nor personnel during the sprint (except some rare occasions).

Page 15: Getting started with Scrum

Getting started with Scrum| 15

Sprints: sprint planningGetting started with Scrum

September 2014

• Performed by the product owner, development team and ScrumMaster.• Together define a sprint goal.• The development team reviews the backlog and determines the high-priority

items that the team can realistically accomplish in the sprint working at a sustainable pace.

• PBIs can be broken down into a set of tasks producing the sprint backlog.• Tasks are estimated in hours (just-in-time planning).

Page 16: Getting started with Scrum

Getting started with Scrum| 16

Sprints: sprint executionGetting started with Scrum

September 2014

• It’s when the work is “done” (more later).• Team members define their own task-level work (self-organize).• Guided by the ScrumMaster’s coaching.

Page 17: Getting started with Scrum

Getting started with Scrum| 17

Sprints: daily ScrumGetting started with Scrum

September 2014

• Timeboxed (15 min or less) meeting held on a daily basis.

• Just-in-time inspect and adapt activity.• Three questions:

• What did I accomplish since the last daily scrum?

• What do I plan to work on by the next daily scrum?

• What are the obstacles or impediments that are preventing me from making progress?

• Not a problem-solving activity.• Product owner could not attend or talk

(albeit it’s recommended).

Page 18: Getting started with Scrum

Getting started with Scrum| 18

Sprints: definition of doneGetting started with Scrum

September 2014

• As a sprint results: potentially shippable product increment.

• Specifies the degree of confidence that the work completed is of good quality and is potentially shippable.

• Minimum: a designed, built, integrated, tested and documented slice of functionality.

• Aggressive: enables business to decide if it wants to ship.

• The definition of done could vary along the project depending on the degree of maturity.

Page 19: Getting started with Scrum

Getting started with Scrum| 19

Sprints: sprint reviewGetting started with Scrum

September 2014

• Inspect and adapt activity held at the end of the sprint.• Participants could include: the Scrum team, stakeholders, customers, interested

members of other teams, etc. • Focused on reviewing the just-completed features. Inspect and adapt the

product.

Page 20: Getting started with Scrum

Getting started with Scrum| 20

Sprints: sprint retrospectiveGetting started with Scrum

September 2014

• Inspect and adapt activity held after the sprint review.• The Scrum team is the only participant. • Focused on reviewing the scrum itself. Inspect and adapt the process.

Page 21: Getting started with Scrum

Getting started with Scrum| 21

Principles (categories)Getting started with Scrum

September 2014

• Agile Manifesto (Beck et al. 2001)• Variability and uncertainty• Prediction and adaptation• Validated learning• Work in process (WIP)• Progress• Performance

Page 22: Getting started with Scrum

Getting started with Scrum| 22

Principles: Variability and UncertaintyGetting started with Scrum

September 2014

• Embrace Helpful Variability• Development is not manufacturing (focus on a single instance)• However manage inventory (WIP)

• Employ Iterative and Incremental Development• Acknowledges we will get things wrong before get things right• Avoid big-bang-style events• Focus on learning to improve

• Leverage Variability through Inspection, Adaptation, and Transparency• Some level of variability is required to build something new• Early and frequent feedback• Inspect and adapt not only what we’re building but also how• All the information always available (transparency)

• Reduce All Forms of Uncertainty Simultaneously• End uncertainty (what): features• Means uncertainty (how): process and technologies• Customer uncertainty (who): customers

Page 23: Getting started with Scrum

Getting started with Scrum| 23

Principles: Prediction and AdaptationGetting started with Scrum

September 2014

• Keep Options Open• Last Responsible Moment (LRM): it’s when the cost of not making a

decision becomes greater than the cost of making it• Wait until we have better information before committing to a decision

• Accept That You Can’t Get It Right Up Front• Acknowledge that we can’t get all of the requirements or the plans right up

front• Produce some requirements and plans up front, but just sufficiently

• Favor an Adaptive, Exploratory Approach• Trial-and error approach based on appropriate use of exploration• When faced with uncertainty, we buy information by exploring (prototypes,

proof of concepts, etc)• Embrace Change in an Economically Sensible Way

• Assume that change is the norm (we can’t predict the uncertainty)• Manage the WIP

• Balance Predictive Up-Front Work with Adaptive Just-in-Time Work• Maximize adaptation based on fast feedback and minimize prediction

Page 24: Getting started with Scrum

Getting started with Scrum| 24

Principles: Validated LearningGetting started with Scrum

September 2014

• Validate Important Assumptions Fast• Assumptions represent a significant development risk

• Leverage Multiple Concurrent Learning Loops• As in daily scrum or in sprint reviews

• Organize Workflow for Fast Feedback• Critical for helping truncate wrong paths sooner and vital for quickly

uncovering and exploiting time-sensitive, emergent opportunities

Page 25: Getting started with Scrum

Getting started with Scrum| 25

Principles: Work in Process (WIP)Getting started with Scrum

September 2014

• Use Economically Sensible Batch Sizes• Economies-of-scale thinking doesn’t apply dogmatically to product

development (not manufacturing)• Single-piece flow

• Recognize Inventory and Manage It for Good Flow• Find the proper balance between just enough inventory and too much

inventory• Focus on Idle Work, Not Idle Workers

• Watch the baton, not the runners• Consider Cost of Delay

• Financial cost associated with delaying work or delaying achievement of a milestone

Page 26: Getting started with Scrum

Getting started with Scrum| 26

Principles: ProgressGetting started with Scrum

September 2014

• Adapt to Real-Time Information and Replan• Rapidly replan and adapt to the stream of economically important

information that is continuously arriving• Measure Progress by Validating Working Assets

• Measure progress by building working, validated assets that deliver value and that can be used to validate important assumptions

• Focus on Value-Centric Delivery• Value is generated by delivering working assets to customers, by validating

important assumptions, or by acquiring valuable knowledge

Page 27: Getting started with Scrum

Getting started with Scrum| 27

Principles: PerformanceGetting started with Scrum

September 2014

• Go Fast but Never Hurry• Sustainable pace: people should be able to work at a pace that they can

continue for an extended period of time• Build In Quality

• Each increment of value that is created is completed to a high level of confidence and has the potential to be put into production or shipped to customers

• Employ Minimally Sufficient Ceremony• Eliminate unnecessary formality• Write a document if:

• It is a deliverable as part of the product (installation, user’s guide, etc)• To capture an important discussion, decision, or agreement• It is the high-value way of helping new team members come up to

speed quickly• There is a regulatory requirement (a cost of doing business in a

regulated industry)

Page 28: Getting started with Scrum

Getting started with Scrum| 28

Requirements: Refining PBIsGetting started with Scrum

September 2014

Page 29: Getting started with Scrum

Getting started with Scrum| 29

User StoriesGetting started with Scrum

September 2014

• A convenient format for expressing the desired business value for many types of product backlog items, especially features.

• Contain conditions of satisfaction (specification by example or acceptance-test-driven development).

• If there’re very large are called themes or epics.

Page 30: Getting started with Scrum

Getting started with Scrum| 30

User Stories: INVEST in Good StoriesGetting started with Scrum

September 2014

• Independent• Negotiable• Valuable• Estimatable• Sized Appropriately (Small)• Testable

Page 31: Getting started with Scrum

Getting started with Scrum| 31

Other kinds of PBIsGetting started with Scrum

September 2014

• Nonfunctional requirements• Knowledge-Acquisition Stories

Page 32: Getting started with Scrum

Getting started with Scrum| 32

Estimating: who?Getting started with Scrum

September 2014

Page 33: Getting started with Scrum

Getting started with Scrum| 33

Estimating: what and when?Getting started with Scrum

September 2014

Page 34: Getting started with Scrum

Getting started with Scrum| 34

Estimating: how? (planning poker)Getting started with Scrum

September 2014

Page 35: Getting started with Scrum

Getting started with Scrum| 35

VelocityGetting started with Scrum

September 2014

Page 36: Getting started with Scrum

Getting started with Scrum| 36

Technical DebtGetting started with Scrum

September 2014

• Unfit (bad) design• Defects• Insufficient test coverage• Excessive manual testing• Poor integration and release management• Lack of platform experience• And many more…• Technical Debt Must Be Managed! (technical debt backlog)• Not All Technical Debt Should Be Repaid

• Product Nearing End of Life• Throwaway Prototype• Product Built for a Short Life

Page 37: Getting started with Scrum

Getting started with Scrum| 37

ResourcesGetting started with Scrum

September 2014

• http://www.innolution.com/• Essential Scrum: A Practical Guide to the Most Popular Agile Process (Addison-

Wesley Signature Series (Cohn))

Page 38: Getting started with Scrum

Getting started with Scrum| 38

Q&AGetting started with Scrum

September 2014

?

Page 39: Getting started with Scrum

Getting started with Scrum| 39

Información de contactoTecsisa

Parque Empresarial Metrovacesa Vía Norte

C/ Quintanavides, 19

Planta Baja, Oficina A

28050 Madrid

Tel: 91 445 21 15

Fax: 91 447 05 [email protected] www.tecsisa.com

TECSISA(Tecnología, Sistemas y Aplicaciones S.L.)

September 2014