Definitions of agile and agility

24
Definitions of Agile Software Development and Agility Maarit Laanti 26 June 2013

Transcript of Definitions of agile and agility

Page 1: Definitions of agile and agility

Definitions of Agile Software Development and Agility!Maarit Laanti 26 June 2013!

Page 2: Definitions of agile and agility

Outline of this Presentation!

1.  Does it matter how we define things?!2.  How Agile Principles define Agile software development!3.  How agile gurus define agile software development and

agility?!

!

Page 3: Definitions of agile and agility

DOES IT MATTER HOW WE DEFINE THINGS?!

Page 4: Definitions of agile and agility

The beginning!

<  Da  Big  Cheese>  Agile,  huh.  So  tell  me  what  are  the  main  benefits  of  this  method.  

Image  ©  Graphics  Factory.com  

Page 5: Definitions of agile and agility

A response!

<  Par/cipant  Observer  >  1.  Accelerated  @me-­‐to-­‐

market  2.  Increased  produc@vity  3.  Reduced  number  of  

soGware  defects  4.  Reduced  cost  5.  Increased  morale  *)  

*)  Version  One  State  of  Agile  Survey    hNp://www.versionone.com/pdf/StateofAgileDevelopmentSurvey.pdf  Image  ©  Graphics  Factory.com  

Page 6: Definitions of agile and agility

An action!

<  Da  Big  Cheese>  

Sounds  good.  Tim  -­‐    your  call.  Let’s  be  agile  

now.  

Image  ©  Graphics  Factory.com  

Page 7: Definitions of agile and agility

A conclusion!

<  Tim>  Agile?    

Time-­‐to-­‐market?  

Produc@vity?  Yep,  how?  

Image  ©  Graphics  Factory.com  

Page 8: Definitions of agile and agility

An explanation!    <  Par/cipant  Observer  >  ….Agile  Manifesto…  …Agile  Principles….  …Agile  Prac4ces…  ….  Extreme  Programming…  …Scrum….  …Con4nuous  Integra4on…  …Test  Automa4on….  ….Lean  thinking….  …Scaled  agile….  …Tools….  …Kanban…  …Improvement….  …  Training….  ….People…  

Image  ©  Graphics  Factory.com  

Page 9: Definitions of agile and agility

Confusion!

<  Tim>  Gibberish.  

Team,  tell  me  what  you  think!  

 

Image  ©  Graphics  Factory.com  

Page 10: Definitions of agile and agility

Agile is…?!

Agile  architecture!  

 

People!    

Collabora/on!  

 

Jenkins    

What  do  we  have  for  

lunch?    

Images  ©  Graphics  Factory.com  

Page 11: Definitions of agile and agility

Define it!!<  Tim>  

Sounds  like  a  wish  list  of  all  good  

things.  Agile  can’t  be  all  

that!  Can  we  take  it  into  use  if  we  do  not  understand  fully  

what  it  is?    

Image  ©  Graphics  Factory.com  

Page 12: Definitions of agile and agility

TESTING UNDERSTANDING!

Page 13: Definitions of agile and agility

CAT? - Are the different definitions just different views to same thing?!

Arc@c  CAT  

Pussycat   Siamese  cat   KiNy  cat  

Big  cat  

CAT  

Page 14: Definitions of agile and agility

People may have different perceptions what agile is!

Our highest priority is to satisfy the customer through early and continuous delivery of valuable

software.

Customer  sa@sfac@on  

Early  deliveries   Con@nuous  delivery   Value  

1st  Agile    Principle:    

Page 15: Definitions of agile and agility

Emphasis in Agile Principles!

Page 16: Definitions of agile and agility

Do we fully understand what agile is?!

When a new paradigm emerges, the best !we can do is to understand it in terms of !existing paradigms. When cars were !invented, our great-grandfathers called them ”horseless carriages”, and worried that cars would scare the horses. But after 20 years or so, people realized that cars had properties that transcended carriages. They came to appreciate that it was time to drop that obsolete metaphor and understand cars on their own terms.!…!We should stop designing software systems as if they were cars or TV sets.!!Paul G. Bassett: Framing Software Reuse – Lessons from the real world. Yourdon Press Computing Series 1997.!

Page 17: Definitions of agile and agility

ANALYSIS OF AGILE DEVELOPMENT / AGILITY DEFINITIONS…!

Page 18: Definitions of agile and agility

Custo

mer s

atisfa

ction

/ driv

en

Conti

nuou

s deli

very

Value

Early

/ Fre

quen

t deli

verie

s

Adap

tabilit

y / F

lexibi

lity

Comp

etitiv

enes

s

Custo

mer s

atisfa

ction

/ben

efit

Colla

bora

tion

Motiv

ated i

ndivi

duals

Good

envir

onme

nt

Supp

ort

Trus

t

Effic

iency

Comm

unica

tion

Meas

ure p

rogr

ess v

ia de

liver

ables

Susta

inabil

ity

Peop

le

Focu

s on t

echn

ical e

xcell

ence

Good

desig

n as e

nable

r of a

gility

Simp

licity

Optim

ize w

ork

Self-o

rgan

izatio

n Bu

ilt-in

impr

ovem

ent o

f effic

iency

and

beha

vior

Stee

rable

/ in-

contr

ol

Rule-

base

d

Profi

tabilit

y

Spee

d

Resp

onsiv

enes

s

Agile Principles x x x x x x x x x x x x x x x x x x x x x x x Cockburn 2001 x x x x x

Highsmith 2002 x x x Anderson 2003 x Larman 2003 x x x Schuh 2004 x x x Lyytinen 2006 x x Suibramaniam 2005 x x x x IEEE 2007 x Wikipedia 2007 DOI 2005 x x x x x Wikipedia 2010 x Poppendieck 2010 Larman 2009 Larman 2010 Appelo 2011

Leffingwell 2011 Cohn 2009 x x

Page 19: Definitions of agile and agility

Empo

werm

ent

Chan

ge

Feed

back

Innov

ation

s / in

nova

titive

ness

Itera

tive /

non-

sequ

entia

l

Incre

menta

l

Less

proc

ess-d

riven

Cost-

cons

cious

/ low

-cost

Conc

eptua

l fram

ewor

k / sy

stem

deve

lopme

nt fra

me

Maxim

ize R

OI

Deliv

ery a

ccur

acy /

pred

ictab

ility

Proa

ctivit

y

Antic

ipatio

n

Relia

bility

Situa

tiona

lity

Cros

s-fun

ction

al

Evolu

tiona

ry

Tech

nical

prac

tices

Effec

tiven

ess

Syste

ms im

prov

emen

t

Conte

xt-sp

ecific

Busin

ess b

enefi

ts

Non-

tradit

ional

High

-qua

lity

Meets

user

need

s

Proc

ess

Prod

uctiv

ity

Visib

ility

Agile Principles Cockburn 2001 Highsmith 2002 Anderson 2003 Larman 2003 Schuh 2004 x x x Lyytinen 2006 x Suibramaniam 2005 x x x x IEEE 2007 x Wikipedia 2007 x x DOI 2005 x x x x x x x Wikipedia 2010 x x x x Poppendieck 2010 x x x Larman 2009 x Larman 2010 x Appelo 2011 x Leffingwell 2011 x x x Cohn 2009 x x x x x x x x x

Page 20: Definitions of agile and agility

Categorizing agile definitions!

1.  A null definition (agile is agile; differing from all the previous and succeeding definitions) !–  Larman’s 2009 recursive definition that agile is agile and a list of

negative statements about what it is not, which contradicts almost all of the succeeding definitions of Agile Software Development and agility. !

2.  Traditional!–  Cohn’s 2009 definition as a negative statement of what it is not also

aligned himself with the previously discussed (positive) aspects. !3.  Set of practices!

–  Agile as a set of practices that should be used together with Systems Thinking. !

4.  Context-specific !–  Agile as a context-specific set of processes and practices which

may vary as the problem that we are solving varies, rooted in complexity theories.!

Page 21: Definitions of agile and agility

Reflec/ve  prac//oner  

Our understanding of “agile” is evolving over time!

Page 22: Definitions of agile and agility

IN (ANY) ORGANIZATION, THERE ARE PEOPLE IN DIFFERENT LEVELS OF UNDERSTANDING!!

Learning  Ladders  

Page 23: Definitions of agile and agility

The industry response is certifications!

Page 24: Definitions of agile and agility

Thanks!!

 My  ques/ons  to  you:  1.  How  much  do  the  missing  

common  understanding  &  lack  of  sharing  same  concepts  hamper  the  aNempts  to  use  the  agile  methods?  

2.    Is  there  anything  to  speed  up  the  learning  of  new  concepts?  As  community  of  researchers,  how  can  we  help?  

 Par/cipant  Observer    

Image  ©  Graphics  Factory.com