Definitions of agile and agility
Upcoming SlideShare
Loading in...5
×
 

Definitions of agile and agility

on

  • 376 views

 

Statistics

Views

Total Views
376
Views on SlideShare
376
Embed Views
0

Actions

Likes
0
Downloads
8
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Definitions of agile and agility Definitions of agile and agility Presentation Transcript

  • Definitions of Agile Software Development and Agility! Maarit Laanti 26 June 2013!
  • 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?! !
  • DOES IT MATTER HOW WE DEFINE THINGS?! View slide
  • The beginning! <  Da  Big  Cheese>   Agile,  huh.  So  tell   me  what  are  the   main  benefits  of   this  method.   Image  ©  Graphics  Factory.com   View slide
  • 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  
  • An action! <  Da  Big   Cheese>   Sounds  good.   Tim  -­‐    your  call.   Let’s  be  agile   now.   Image  ©  Graphics  Factory.com  
  • A conclusion! <  Tim>   Agile?     Time-­‐to-­‐ market?   Produc@vity?   Yep,  how?   Image  ©  Graphics  Factory.com  
  • An explanation!     <  Par/cipant  Observer  >   ….Agile  Manifesto…   …Agile  Principles….   …Agile  Prac4ces…   ….  Extreme  Programming…   …Scrum….   …Con4nuous  Integra4on…   …Test  Automa4on….   ….Lean  thinking….   …Scaled  agile….   …Tools….   …Kanban…   Image  ©  Graphics  Factory.com  
  • Confusion! <  Tim>   Gibberish.   Team,  tell  me   what  you  think!     Image  ©  Graphics  Factory.com  
  • Agile is…?! Agile   archite cture!     People!     Images  ©  Graphics  Factory.com   Collabo ra/on!     Jenkins     What   do  we   have   for   lunch?    
  • Define it!! Image  ©  Graphics  Factory.com   <  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?    
  • TESTING UNDERSTANDING!
  • CAT? - Are the different definitions just different views to same thing?! Pussycat   Siamese  cat   KiNy  cat   CAT   Arc@c  CAT   Big  cat  
  • People may have different perceptions what agile is! 1st  Agile     Principle:     Customer  sa@sfac@on   Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. Early  deliveries   Con@nuous  delivery   Value  
  • Emphasis in Agile Principles!
  • 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.!
  • ANALYSIS OF AGILE DEVELOPMENT / AGILITY DEFINITIONS…!
  • Agile Principles x Cockburn 2001 Highsmith 2002 Anderson 2003 Larman 2003 Schuh 2004 Lyytinen 2006 Suibramaniam 2005 x IEEE 2007 Wikipedia 2007 DOI 2005 Wikipedia 2010 Leffingwell 2011 Cohn 2009 x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x Poppendieck 2010 Larman 2009 Larman 2010 Appelo 2011 x x x x x Responsiveness Speed Profitability Rule-based Steerable / in-control Self-organization Built-in improvement of efficiency and behavior Optimize work Simplicity Good design as enabler of agility Focus on technical excellence People Sustainability Measure progress via deliverables Communication Efficiency Trust Support Good environment Motivated individuals Collaboration Customer satisfaction /benefit Competitiveness Adaptability / Flexibility Early/ Frequent deliveries Value Continuous delivery Customer satisfaction / driven
  • Agile Principles Cockburn 2001 Highsmith 2002 Anderson 2003 Larman 2003 Schuh 2004 Larman 2009 Leffingwell 2011 x x Lyytinen 2006 Suibramaniam 2005 DOI 2005 Wikipedia 2010 Poppendieck 2010 x x x IEEE 2007 x Wikipedia 2007 x x x x x x x x x x x x x x x x x x Larman 2010 Appelo 2011 x x x x x x x Visibility Productivity Process Meets user needs High-quality Non-traditional Business benefits Context-specific Systems improvement Effectiveness Technical practices Evolutionary Cross-functional Situationality Reliability Anticipation Proactivity Delivery accuracy / predictability Maximize ROI Cost-conscious / low-cost Conceptual framework / system development frame Less process-driven Incremental Iterative / non-sequential Innovations / innovatitiveness Feedback Change Empowerment
  • 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.!
  • Our understanding of “agile” is evolving over time! Reflec/ve  prac//oner  
  • Learning  Ladders   IN (ANY) ORGANIZATION, THERE ARE PEOPLE IN DIFFERENT LEVELS OF UNDERSTANDING!!
  • The industry response is certifications!
  • 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?     Image  ©  Graphics  Factory.com   Par/cipant  Observer