Your SlideShare is downloading. ×
0
War Stories
Experiences applying Agile in many types of business


             gerard.hartnett@coclarity.com

           ...
Overview
              • Introduction
              • Patterns, PLOPS and OOPSLA
              • Scrum
              • eXt...
Introduction
              • 20-years SW experience
              • Currently: coClarity, Limerick
              • Intel, ...
Conclusion
              • Great ideas cross boundaries between
                    disciplines
              • Software h...
Patterns, PLOPS and
     OOPSLA
Patterns
              • Reusable solution to a
                    common problem
              • Borrowed from
         ...
PLOPs

              • Pattern Languages of
                    Programs
              • Conferences Started
             ...
OOPSLA 98
              • Birds-of-a-feather
                    session
              • 100s arrived
              • One ...
eXtreme Programming
Overview

              • A light-weight methodology
              • For small-to-medium-sized teams
              • Vague...
Practices
              • Quick Plan            • Pair Programming
              • Small Releases        • Collective Owne...
A-La-Carte
              • The books warn against taking an a-la carte
                    approach
              • We tai...
Pair Programming




         Photo credit flickr.com/people/lucadex
Pair Programming our
                     Experience
              • The most controversial practice
              • Some ...
Pair Lessons Learned
              • No Keyboard Wrestling, Large Fonts
              • Think about neighbours
           ...
Scrum
New New Product
                    Development Game
         • Article in Harvard
               Business Review 1986
   ...
Six Characteristics
              • Built in instability - broad challenging goal
              • Self-organising teams
  ...
Scrum

•   Computer guys
    borrowed from
    “New New...”

•   Called it Scrum

•   I suspect they were
    never in a r...
Scrum Overview
              • You can manage any kind of project with
                    Scrum
              • I’ve used...
“Opportunities”
     • All projects have chickens
           and pigs
     • Pigs are happy: no status
           reports ...
The Theory
              • Software engineering is complex adaptive
                    system
              • Traditional...
The Team


              • Should be small (6 max) - if bigger, split
              • Ideally co-located (can work distrib...
The Project




                            Diagram by Lakeworks http://commons.wikimedia.org/wiki/Image:Scrum_process.svg...
The Sprint

              • Easier for team to focus on something a
                    month away
              • Daily s...
The Daily Meeting
              • KISS - 15 minutes max, same time & place
              • 3 questions
               • wh...
?#!$'(% 8% quot;*+&'0% !/% ,')6quot;-@*'1% /0!+% IJ?-1!('1K%                        S'0$%S-1-&#'%-quot;%,6'%!0A8quot;-V8,-...
Consequence of “Loads
                 of post-its”
              • Low effort - visualisation of progress
              •...
Planning
              • More KISS
              • No complex Gannt chart
              • Plan is a series of sprints
    ...
!quot;quot;#$%!&#'( )*( +$,)-$&.)'+( +'/'#*quot;0'1)( )2!1( 2!,( &''1(                 D#!11$13( $,( E'quot;)( ,$0quot;#'=...
Planning - Sprint
              • At the start check project plan & look at
                    new backlog items
        ...
The Big Chickens
              • Start to trust it - less reporting needed
              • Can show up at daily meetings -...
Scrum Conclusion

                • Simple, low-overhead, adaptable any kind/
                      size project
         ...
GTD and 4HWW
GTD

          • Getting Things Done
          • A new cult for the info age
               - Wired
          • Levels: Ac...
Actions and Projects
              • Action: always something that needs to be
                    done first
             ...
4HWW

              • The 4 Hour Workweek
              • 80/20 Rule
              • Decide two meaningful
               ...
Conclusion
Common Patterns
              • Bottom Up Planning (take care of days...)
              • Simple Top Down Plan - it will c...
Conclusion
              • Great ideas cross boundaries between
                    disciplines
              • Software h...
Next Steps
                       Decide what aspects you are interested in
                       Read about them on wiki...
Thank You
             Happy to talk about
                              SCRUM    Startups
                               ...
Upcoming SlideShare
Loading in...5
×

Itag Jan09 Agile Coclarity

605

Published on

A presentation on Patterns, Scrum, eXtreme Programming, GTD and Ferris' Four-Hour-Workweek. This was presented at ITAG (IT @ Galway) on 22-Jan-2009.

While agile techniques owe their inspiration to other disciplines,like design-patterns, they have been improved by the software industry and returned with interest to the general business community. So even if your business has nothing to do with software development or "agile" you should still find something useful in this talk.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
605
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
16
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Itag Jan09 Agile Coclarity"

  1. 1. War Stories Experiences applying Agile in many types of business gerard.hartnett@coclarity.com ITAG Cairnes Business School, NUI Galway, Ireland. 22-Jan-2009
  2. 2. Overview • Introduction • Patterns, PLOPS and OOPSLA • Scrum • eXtreme Programming • GTD and 4HWW • Conclusion Copyright © 2009 coClarity Ltd. 2
  3. 3. Introduction • 20-years SW experience • Currently: coClarity, Limerick • Intel, Basis & Tellabs, Shannon • Digital, Galway • Motorola, Cork, & USA • QC-Data, Cork & Canada Copyright © 2009 coClarity Ltd. 3
  4. 4. Conclusion • Great ideas cross boundaries between disciplines • Software has Borrowed from Everywhere • Agile techniques can be applied in any kind of business • Customer Focus, Deliver Early & Often, Simplicity (Product & Plans), Self-Organising Copyright © 2009 coClarity Ltd. 4
  5. 5. Patterns, PLOPS and OOPSLA
  6. 6. Patterns • Reusable solution to a common problem • Borrowed from Architecture (Alexander) • 1987 OOPSLA, Beck & Cunningham • 1994, Gang of Four Copyright © 2009 coClarity Ltd. 6
  7. 7. PLOPs • Pattern Languages of Programs • Conferences Started 1994 • PLOP-2, paper on Episodes (Cunningham) Copyright © 2009 coClarity Ltd. 7
  8. 8. OOPSLA 98 • Birds-of-a-feather session • 100s arrived • One page handout of the key practices • Diagram of how they related to each other Copyright © 2009 coClarity Ltd. 8
  9. 9. eXtreme Programming
  10. 10. Overview • A light-weight methodology • For small-to-medium-sized teams • Vague or rapidly-changing requirements • Values: communication, feedback, simplicity, courage and respect Copyright © 2009 coClarity Ltd. 10
  11. 11. Practices • Quick Plan • Pair Programming • Small Releases • Collective Ownership • Metaphor • Continuous Integration • Simple Design • 40-Hour Week • Testing • On-Site Customers • Refactoring • Coding Standards Copyright © 2009 coClarity Ltd. 11
  12. 12. A-La-Carte • The books warn against taking an a-la carte approach • We tailored it out of necessity • Didn’t really use: Metaphor, On-site Customers • Modified: Scrum for planning, Collective Ownership within Team Copyright © 2009 coClarity Ltd. 12
  13. 13. Pair Programming Photo credit flickr.com/people/lucadex
  14. 14. Pair Programming our Experience • The most controversial practice • Some components pair programmed • Lowest defect rates • Smaller code sizes • Small sample set Copyright © 2009 coClarity Ltd. 14
  15. 15. Pair Lessons Learned • No Keyboard Wrestling, Large Fonts • Think about neighbours • No editor wars • Set key objectives • Not as useful during bug-fix phase • Can be done remotely (gotomeeting) Copyright © 2009 coClarity Ltd. 15
  16. 16. Scrum
  17. 17. New New Product Development Game • Article in Harvard Business Review 1986 • Study of companies in Japan & US • Fuji-Xerox, Canon, Honda, NEC, HP, 3M Copyright © 2009 coClarity Ltd. 17
  18. 18. Six Characteristics • Built in instability - broad challenging goal • Self-organising teams • Overlapping Development Phases • Multilearning • Subtle Control • Organisational transfer of learning Copyright © 2009 coClarity Ltd. 18
  19. 19. Scrum • Computer guys borrowed from “New New...” • Called it Scrum • I suspect they were never in a real Scrum Photo credit flickr.com/photos/bohane/
  20. 20. Scrum Overview • You can manage any kind of project with Scrum • I’ve used on tiny and large projects • Not rocket science or expensive (although an “industry” has popped up) • It works & viral Copyright © 2009 coClarity Ltd. 20
  21. 21. “Opportunities” • All projects have chickens and pigs • Pigs are happy: no status reports or boring meetings • Chickens are happy: they know what’s happening without getting in the way Photo credit flickr.com/photos/7326810@N08 Copyright © 2009 coClarity Ltd. 21
  22. 22. The Theory • Software engineering is complex adaptive system • Traditional planning - illusion of control • Empirical process not a “defined process” • Complexity theory - better to do frequent samples and small adjustments • Adaptability is better than predicability Copyright © 2009 coClarity Ltd. 22
  23. 23. The Team • Should be small (6 max) - if bigger, split • Ideally co-located (can work distributed) Copyright © 2009 coClarity Ltd. 23
  24. 24. The Project Diagram by Lakeworks http://commons.wikimedia.org/wiki/Image:Scrum_process.svg • Punctuated Equilibrium - balance team focus, management visibility, and adaptability
  25. 25. The Sprint • Easier for team to focus on something a month away • Daily short meetings • At the end - write-up or demo Copyright © 2009 coClarity Ltd. 25
  26. 26. The Daily Meeting • KISS - 15 minutes max, same time & place • 3 questions • what did you do? (binary - all or nothing) • what roadblocks? • what will you do by tomorrow? • Everyone responsible for their own tasks Copyright © 2009 coClarity Ltd. 26
  27. 27. ?#!$'(% 8% quot;*+&'0% !/% ,')6quot;-@*'1% /0!+% IJ?-1!('1K% S'0$%S-1-&#'%-quot;%,6'%!0A8quot;-V8,-!quot;;%8quot;(%)*0-!1-,$%/0!+%!,6' Loads of Post-its stuck A68+;%NOOPQ%,6'%?0')*01!0%,!%'R,0'+'%?#8quot;quot;-quot;A=% ,'8+1%6'#?'(%,6'%-quot;-,-8#%1?0'8(%!/%,6'%,')6quot;-@*'=%W-A*0'%N +% 781% -quot;-,-8##$% ?-#!,'(% &$% !quot;'% ,'8+% 8quot;(% -,1% *1'% &'#!7% -##*1,08,'1% 8% 18+?#'% +'',-quot;A% 0')!0(% 7-,6% X!1,TH,1 quot;%!0A8quot;-)8##$%,!%,6'%'E,'quot;,%,68,%-,%quot;!7%-1%*1'(%&$% 8,,8)6'(=% '% ,'8+1% -quot;% Hquot;,'#% 568quot;quot;!quot;=% G6'$% &'#-'S'% ,6'% .'$% % to a big sheet of paper % % % % % J(.#8( K.9/% ='?+% D$/8.% % % A%7'&(,=+'/ -.)%+(&(% 4')%+( D('7,E,quot;9'%&(#!% % 5=>,314% >/&(#@'quot;(,-.7(% .@,A4B,*..C% % =H: % F((&$/8% -.)%+(&(% % 6#$&(,)((&$/8% '!!()*+(#,&(!&% % )$/?&(!% !quot;#$%&!% % % % -?##(/&,B'quot;C+.8% B'quot;C+.8 H./(% % 46,414% D(@'quot;&.#, % 414% quot;.)%+(&(% A4B,$)%'quot;&% ! I4,17'%&.# !quot;(/'#$.!% '!!(!)(/&% !quot;#$%&&&' ! H(!$8/% 0#$&&(/% 46,.#8% 46,=>=,.?&,@.#% ! =4FG50!<% 7(quot;$7(7% #(<$(0% 56% ! $/&(#@'quot;(% )$+(!&./(!% 3&9(#/(&,:;% ! 112,314% $/,%+'/% 7(!$8/,!quot;(/'#$.% ! !(quot;&$./% 0#$&&(/% !
  28. 28. Consequence of “Loads of post-its” • Low effort - visualisation of progress • Preparation is fast - post-its on monitors • Occasional trips to the “big sheet” • Not great for distributed teams • 3M make loads of money Copyright © 2009 coClarity Ltd. 28
  29. 29. Planning • More KISS • No complex Gannt chart • Plan is a series of sprints • Dependencies only at a sprint level • Can use sophisticated estimation techniques • Shorter sprints at the start and end Copyright © 2009 coClarity Ltd. 29
  30. 30. !quot;quot;#$%!&#'( )*( +$,)-$&.)'+( +'/'#*quot;0'1)( )2!1( 2!,( &''1( D#!11$13( $,( E'quot;)( ,$0quot;#'=( A2'-'( $,( 1*( %*0quot;#'F( G!1))( ,.33',)'+(.quot;()*(1*4(56%7-''18(9::;<=( %2!-)( 4$)2( %*0quot;#'F( $1)'-H+'quot;'1+'1%$',( &')4''1( )!,E,=( Planning - Full Project ( A2'(*/'-!##(quot;#!1($,(!(,'-$',(*@(,quot;-$1),(5,''(I$3(9<=(>1)'-1!#( *-( 'F)'-1!#( 0$#',)*1',( %!1( &'( #$1'+( .quot;( 4$)2( ?quot;-$1)( !quot;#quot;$quot;%&'()*%+,-../.0% %*0quot;#')$*1,8( &.)( )2'( +'quot;'1+'1%$',( &')4''1( )2'( )!,E,( ( 4$)2$1()2'(,quot;-$1)(!-'(1*)(4*-E'+(*.)($1(!+/!1%'=( >1)'#( ?2!11*1( 2!/'( 0!+'( ,*0'( 0*+$@$%!)$*1,( )*( )2'( ( quot;#!11$13(quot;-*%',,(!#,*=(A2'B(.,'()4*(quot;#!11$13(,)!3',8(*1'( ( !)( )2'( ,)!-)( *@( '!%2( ,quot;-$1)( !1+( *1'( !)( )2'( ,)!-)( *@( )2'( ( quot;-*C'%)=(( ( ( ( ( !quot;quot;!#$%&!'()*+!,'-quot;'!(.%(!!,/ 012 012 013 014 014 014 56/!7%(! 89,%($': 89,%($'0 89,%($'; 89,%($'< 89,%($'= 89,%($'2 >(6//%.(!? !quot;#$%&'()*+* ( @$*?1ABC1D-,E/F-9/ :01G :01G ( @67=H@67GH@6701D-,E/F-9/ 01G 01G ( I96$F 2<1= 2<1= ( JK., <;1= <;1= @$*? :::1= :::1= ( @67=@##1I)(#89!#1C,6quot;$HL!&%!D :G1G :G1G ( @67=@##1C!/%.(89!# 31G 31G ( @67=@##1M-?! 21G 21G @67=M-?!7!$189!# 31= 31= ( @67=M-?!7!$1M-?! 31G 31G ( N-$67 03: G G G G G G 03:1G ( ( ,$-./'01.#2.)/ A-7%?6O/1P)+7%# <1G <1G ( A-7%?6O/1Q6#6$%-( <=1G <=1G % N,6%(%(. <1G <1G %G N-$67 =; G G G G G =;1G %G G G G G G % 1/0%#%&'()*%+,-../.0% % % % J!%2()'!0(#'!+(+*',(!(quot;#!1(*.)#$1$13(!##(*@()2'(,quot;-$1),( )2'( ,)!-)( *@( quot;-*C'%)( ,quot;-$1)( quot;#!1( !1+( #**E( !)( !1B( 1'4( )*( )2'( '1+( *@( )2'( quot;-*C'%)=( >1$)$!#( 0'')$13,( !-'( %*1+.%)'+( &!%E#*3( $)'0,( )2!)( 0!B( 2!/'( %*0'( .quot;( +.-$13( )2'( #!,)(
  31. 31. Planning - Sprint • At the start check project plan & look at new backlog items • Allocate to individuals - could use simple spreadsheet • Efforts based on “ideal days” • Inside/Outside end-date • At the end: write-up, demo, release Copyright © 2009 coClarity Ltd. 31
  32. 32. The Big Chickens • Start to trust it - less reporting needed • Can show up at daily meetings - must remember they are chickens • Can add new items to backlog • Other possibilities - earned value, wide- band-delphi, comparison to estimates Copyright © 2009 coClarity Ltd. 32
  33. 33. Scrum Conclusion • Simple, low-overhead, adaptable any kind/ size project • Everyone gets involved in planning and tracking, team “gells” • The chickens can actually contribute • Scrum was more sticky than eXP Copyright © 2009 coClarity Ltd. 33
  34. 34. GTD and 4HWW
  35. 35. GTD • Getting Things Done • A new cult for the info age - Wired • Levels: Actions, Projects, Areas,Yearly, 5-Year, Life • Collect, Process, Organise, Review, Do Copyright © 2009 coClarity Ltd. 35
  36. 36. Actions and Projects • Action: always something that needs to be done first • Each action has a context • Project: requires more than one action • Don’t need to plan projects in detail but define outcome • Choose actions based on context Copyright © 2009 coClarity Ltd. 36
  37. 37. 4HWW • The 4 Hour Workweek • 80/20 Rule • Decide two meaningful things to accomplish • Email twice a day Copyright © 2009 coClarity Ltd. 37
  38. 38. Conclusion
  39. 39. Common Patterns • Bottom Up Planning (take care of days...) • Simple Top Down Plan - it will change • Adaptable more important than predictable • Don’t Just React - Make Active Choices • Feedback Loops • Encourage self-organisation Copyright © 2009 coClarity Ltd. 39
  40. 40. Conclusion • Great ideas cross boundaries between disciplines • Software has Borrowed from Everywhere • Agile techniques can be applied in any kind of business • Customer Focus, Deliver Early & Often, Simplicity (Product & Plans), Self-Organising Copyright © 2009 coClarity Ltd. 40
  41. 41. Next Steps Decide what aspects you are interested in Read about them on wikipedia Read the paper: Fitzgerald, Hartnett “Agile inside Intel” (short.ie/uehtqv) Try some of the Patterns even on your personal work Consider trying Scrum with your team Copyright © 2009 coClarity Ltd. 41
  42. 42. Thank You Happy to talk about SCRUM Startups coclarity GTD OO Design Web-collaboration Entrepreneurship Ruby on Rails Copyright © 2009 coClarity Ltd. 42
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×