25
Knowledge sharing: Scrum and other methodologies Son Nguyen, [email protected] YM & Skype: ng_thanhson

From traditional software development process to scrum

Embed Size (px)

DESCRIPTION

Short overview from traditional software development to Scrum. What is the difference? Starting point for discussion at agile forum Vietnam.

Citation preview

Page 1: From traditional software development process to scrum

Knowledge sharing: Scrum and other methodologies

Son Nguyen, [email protected] & Skype: ng_thanhson

Page 2: From traditional software development process to scrum

Agenda Introduction Traditional methodologies My Scrum stories

Page 3: From traditional software development process to scrum

Introduction About me Just a brainstorming and discussion session Please be active

Page 4: From traditional software development process to scrum

Traditional methodologies

Page 5: From traditional software development process to scrum

Methodologies I used before

Waterfall

2003

UML

CMMi

Unified Process

XP

Scrum

TL9000

Continuous Integration

TDD

2008

2007

2006

2004

2005

Page 6: From traditional software development process to scrum

Lean history

Page 7: From traditional software development process to scrum

WaterfallRequirements

RequirementsAnalysis

ArchitectureDesign

DetailDesign

Implementation

Testing

Maintenance

Page 8: From traditional software development process to scrum

Waterfall Waterfall (plan driven) is a well known

methodology / process It has dependencies on phases (gated stages) In theory it works great but in practice it may not

work It is fundamentally based on an assembly-line

mentality for developing software -> no point to go back

No mechanism to deal with delays -> buffer -> over estimation

Page 9: From traditional software development process to scrum

The software factory

Page 10: From traditional software development process to scrum

Waterfall with feedback

Requirements

RequirementsAnalysis

ArchitectureDesign

DetailDesign

Implementation

Testing

Maintenance

Page 11: From traditional software development process to scrum

Waterfall with feedback

Can start working with incomplete requirements, architecture, design, …

Can go back to the previous step and update It is still messy for long time project Sometimes it is unpredictable for the project

delivery

Page 12: From traditional software development process to scrum

Iterative & IncrementalRequirement

s

Quick Design

Implementation

Evaluation & Update

Refine & Rework

Final Testing Release

Page 13: From traditional software development process to scrum

Iterative & Incremental Good for an environment of changing

requirements No methodology for each step Hard in the planning point of view Hard to maintain May cause a lot of reworks and increase cost

Page 14: From traditional software development process to scrum

My Scrum stories

Page 15: From traditional software development process to scrum

Agile - Scrum

Let’s Turn Our Thinking Upside Down

Page 16: From traditional software development process to scrum

Quick overview about Scrum

Page 17: From traditional software development process to scrum

People’s motivation Self-organization, disciplined, motivation,

ownership, and pride You may have to accept:

o Some first failed sprintso Give some not qualified members time and training to

adjust

Page 18: From traditional software development process to scrum

People’s motivation Adaptive process Higher commitment and discipline Flexibility and adaptiveness with work

requirements change Collaboration, freely to contribute … But be careful! There is nothing good at the first

time, you need to build it with right people

Page 19: From traditional software development process to scrum

Risk reduction No need to spend too much time in planning No code written in early phases for requirement

validation Communication issue Tester-developer schedule alignment No risk deferral Adaptive with requirement change … But be careful, don’t just do “Iterative”

Page 20: From traditional software development process to scrum

Risk reduction (lean)

Page 21: From traditional software development process to scrum

Value driven

Fixed Scope

VariableTime

VariableResources

Plan Driven

VariableScope

FixedTime

FixedResource

s

Value Driven

Page 22: From traditional software development process to scrum

Value driven Increasing Innovation Increase the quality of the deliverables Deliver the highest business value features first Onsite customer … It is not easy to do “Variable Scope”

Page 23: From traditional software development process to scrum

Focus on implementation

Remove organizational overhead Remove management pressure from teams Remove process / planning overhead … It is really hard and need support from your

management level

Page 24: From traditional software development process to scrum

Discussion

Page 25: From traditional software development process to scrum