Deep Agile Blending Scrum and Extreme Programming Jeff Sutherland - - PowerPoint PPT Presentation

deep agile blending scrum and extreme programming
SMART_READER_LITE
LIVE PREVIEW

Deep Agile Blending Scrum and Extreme Programming Jeff Sutherland - - PowerPoint PPT Presentation

Deep Agile Blending Scrum and Extreme Programming Jeff Sutherland Ron Jeffries Separation of XP and Scrum Methods * Largely Historical * XP chose to write more down * XP programmer focus * Successful Scrum Teams use XP-like Practices


slide-1
SLIDE 1

Deep Agile Blending Scrum and Extreme Programming

Jeff Sutherland Ron Jeffries

slide-2
SLIDE 2

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 2

Separation of XP and Scrum Methods

* Largely Historical * XP chose to write more down * XP “programmer” focus * Successful Scrum Teams use XP-like Practices

slide-3
SLIDE 3

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 3

Need for “Technical” Practices

* Interative Planning and Delivery * Feature Focus

*

* Incremental Design * Frequent Testing

slide-4
SLIDE 4

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 4

XP Practices not Purely Technical

* User Stories * Cards * Informative Workspace

* Big Visible Charts * Tracking Boards

* Planning Game * Small Releases * … etc

slide-5
SLIDE 5

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 5

Developer Focus

* Low in Scrum

* (discovery)

* Higher in XP

* (starting point)

slide-6
SLIDE 6

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 6

XP’s Project Management Practices

* Compatible with / Analogous to Scrum * Small Releases * Whole Team * Planning Game

* Iteration Planning * Release Planning

* …

slide-7
SLIDE 7

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 7

XP Practices

* What are they? * Their role in Scrum … or any project.

slide-8
SLIDE 8

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 8

XP Practice

* Simple Design * Must proceed incrementally * Must deliver features right away

*

* Begin with a simple design

slide-9
SLIDE 9

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 9

XP Practice

* Pair Programming * Design is changing … * How do we know what it is?

slide-10
SLIDE 10

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 10

XP Practice

* Test-Driven Development * System must work all the time;

* Must ship every week or two;

* How do we know it isn’t broken? * Test it!

slide-11
SLIDE 11

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 11

XP Practice

* Refactoring * Simple Design cannot last!

* Are we doomed???

* Design must improve …

* Refactoring is the technique

* (Refactoring: Martin Fowler)

slide-12
SLIDE 12

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 12

XP Practice

* Continuous Integration * We’ll be integrating at least every two weeks; * Integration is always hell; * Get good at it!

slide-13
SLIDE 13

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 13

XP Practice

* Shared Code * “Any pair can improve any code at any time”

* -- Kent Beck

* Faster progress * More eyes * Higher Quality

slide-14
SLIDE 14

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 14

XP Practice

* Coding Standard * All eyes on all code * Make it look alike * Don’t go crazy – just make it look alike

slide-15
SLIDE 15

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 15

XP Practice

* Whole Team * All the people you need * When you need them * Technical Resources * Business Resources

slide-16
SLIDE 16

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 16

XP Practice

* User Stories * Card * Conversation * Confirmation

slide-17
SLIDE 17

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 17

XP Practice

* Automated Customer Tests * How often do you need to test this? * How often do you want to test it by hand anyway???

slide-18
SLIDE 18

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 18

XP Practice

* Informative Workspace * Tracking Boards * Big Visible Charts

slide-19
SLIDE 19

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 19

XP Practice

* Energized Work * Work vigorously * Rest effectively * Be done at the end of every day!

slide-20
SLIDE 20

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 20

XP Practice

* Sustainable Pace * If you go too fast, you’ll go off the road! * Do not push for more stories!!

slide-21
SLIDE 21

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 21

XP Practice

* Slack * Have items on the list that can be dropped * You can always ask for more * Something will come up

slide-22
SLIDE 22

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 22

XP Practice

* Weekly Cycle

slide-23
SLIDE 23

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 23

XP Practice

* Quarterly Cycle

slide-24
SLIDE 24

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 24

XP Practice

* Code and Tests * These are the only documents that count * Generate the rest!

slide-25
SLIDE 25

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 25

XP Practice

* Team Continuity * Software is a work of the mind * Why throw that away?

slide-26
SLIDE 26

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 26

XP Practice

* Single Code Base * Anything else is waste! * Learn to do it right * Generate old versions if you must – Don’t save them

slide-27
SLIDE 27

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 27

XP Practice

* Daily Deployment * Go home clean! * Deliver value instantly!

slide-28
SLIDE 28

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 28

XP Practice

* Incremental Design * (Discussed – Refactoring)

slide-29
SLIDE 29

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 29

XP Practice

* Sit Together * And talk with each other! * Would you rather have a hug from your Mom, or a nice note?

slide-30
SLIDE 30

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 30

XP Practice

* Ten Minute Build * Yes, we really mean it

slide-31
SLIDE 31

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 31

XP Practice

* Real Customer Involvement * Don’t guess – find out. * Set their expectations * Help them learn too

slide-32
SLIDE 32

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 32

XP Practice

* Incremental Deployment

slide-33
SLIDE 33

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 33

XP Practice

* Shrinking Teams * As need declines … * People move on

slide-34
SLIDE 34

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 34

XP Practice

* Root Cause Analysis * “Ask Why Five Times”

slide-35
SLIDE 35

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 35

XP Practice

* … and many many more … * The richness of software development … * And of how to do it … * Cannot be plumbed by any list!

slide-36
SLIDE 36

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 36

Forces and Responses

* These practices are not random, * Nor are they mandatory * But they are needed * And there are reasons why

slide-37
SLIDE 37

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 37

Forces and Responses

* Teamwork

* Team Room

* 2X Productivity!!

* Don’t Specialize * Don’t Hand Off * Pair Programming * Shared Code

slide-38
SLIDE 38

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 38

Forces and Responses

* Business Value

* Small Stories * Avoid Tasks * Automated Customer Acceptance Tests

slide-39
SLIDE 39

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 39

Automated Customer Acceptance Tests

* Communcation * Learning * Confidence * Repetition!

slide-40
SLIDE 40

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 40

Forces and Responses

* Continuous Delivery

* Grow the Design

* Refactoring

* Continuous Integration * Ten Minute Build * Shared Code * Energized Work

* Sustainable Pace

slide-41
SLIDE 41

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 41

Forces and Responses

* Predictability

* Get Done = Done

* Tests

* Test-Driven Development

* Stories vs Tasks

slide-42
SLIDE 42

April 28-29, 2007 Deep Agile -- XP and Scrum Ron - 42

XP and Scrum and XP and …

* Fundamental Message * Focus on what your team needs * Focus on Running Tested Features

* Done =Done

* Not “Is it Scrum?” * Not “Is it XP?” * “Is it working for us?”