agile or fragile
DESCRIPTION
Musings on agile methods and other fairy tales, as presented in ffffuuuu conf 2010.TRANSCRIPT
![Page 1: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/1.jpg)
Agile or FragileRodrigo Campos
[email protected] - @xinu
ffffuuuu conference 2010 - http://ffffuuuu.me
1Sunday, November 21, 2010
![Page 2: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/2.jpg)
Disclaimer #1
Agile methods can improve a company’s ability to deliver production ready systems in less time than the so called traditional development methods.
Now that said...
2Sunday, November 21, 2010
![Page 3: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/3.jpg)
Disclaimer #2
I’ll talk about nonteorethical, real life stuff that happens in real life companies.Your mileage may vary...
3Sunday, November 21, 2010
![Page 4: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/4.jpg)
The mythical endless week
VPWhatever Inc.
DirectorProduct R&D
ManagerR&D and Ops
Development Engineering
Operations Infrastructure
4Sunday, November 21, 2010
![Page 5: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/5.jpg)
The mythical endless week
5Sunday, November 21, 2010
![Page 6: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/6.jpg)
The mythical endless week
6Sunday, November 21, 2010
![Page 7: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/7.jpg)
The mythical endless week
VPWhatever Inc.
CWTFOProduct R&D
ManagerR&D
ManagerOperations
ManagerR&D
ManagerR&D
R&D R&D R&D
Ops
7Sunday, November 21, 2010
![Page 8: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/8.jpg)
The mythical endless week
VPWhatever Inc.
CWTFOProduct R&D
ManagerR&D
ManagerOperations
ManagerR&D
ManagerR&D
R&D R&D R&D
Ops
R&D
R&D
R&D
R&D
R&D R&D
8Sunday, November 21, 2010
![Page 9: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/9.jpg)
Operations will be overwhelmed and will provide poor service
If you can live with that, that’s OK !Just don’t go bitch and moan at the ops team...
9Sunday, November 21, 2010
![Page 10: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/10.jpg)
Possible solutions
• If you need operational throughput and quality of service you need a vertical organizational structure
• Schedule production deploys every 2 or 3 cycles
• Focus on quality assurance so you’ll have less bugs in production
• Automation is not an option !
• Don’t be an asshole
10Sunday, November 21, 2010
![Page 11: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/11.jpg)
The neverending project
new story: now we need to get back to earth safe and sound.
11Sunday, November 21, 2010
![Page 12: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/12.jpg)
The neverending project
• Continuous development is not an excuse for short sighted definitions
• You can be damn sure that Leonardo da Vinci was not trying to draw a horse when he started painting La Gioconda
• If you need to change your data model and build new architecture components every other cycle, something is wrong !
12Sunday, November 21, 2010
![Page 13: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/13.jpg)
The neverending project
• Goal != Requirements
• Goal: “... achieving the goal, before the decade is out, of landing a man on the moon and returning him safely to the earth.” (JFK, 1961)
• Requirements (Saturn V):
• Payload to LEO: 119.000 Kg
• Main Engines: 5 Rocketdyne F-1
• Thrust: 34.020.000 N
• Burn time: 150 seconds
13Sunday, November 21, 2010
![Page 14: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/14.jpg)
Possible Solutions• The PO has to fully understand and evaluate end
customer needs as well as market dynamics
• She can’t be clueless about the product !
• You may not need a “project statement” but every team needs a goal
• The goal has to be:
• Measurable
• Valuable
• Tangible
14Sunday, November 21, 2010
![Page 15: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/15.jpg)
The bugless fallacy
• There’s no such thing as bugless applications
• Business will take precedence over quality
• By that I mean time to market issues as well as QA budget
• You’ll need to handle emergency rollouts
15Sunday, November 21, 2010
![Page 16: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/16.jpg)
Possible Solutions
• QA needs time to accurately test software
• Every new feature should have a on/off switch (feature flags)
• Plan and do dark deploys
16Sunday, November 21, 2010
![Page 17: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/17.jpg)
Pair Programming
17Sunday, November 21, 2010
![Page 18: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/18.jpg)
Pair Programming
• Besides unemployment rates, what problem are you trying to solve ?
18Sunday, November 21, 2010
![Page 19: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/19.jpg)
Pair Programming
• Two wrongs don’t make a right !
• A seminal book on Agile methods suggests that it is a good idea to have one programmer controlling the keyboard while the other controls the mouse
• No, I’m not kidding
19Sunday, November 21, 2010
![Page 20: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/20.jpg)
The Quality Assurance Panacea
20Sunday, November 21, 2010
![Page 21: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/21.jpg)
The Quality Assurance Panacea
• “But it passed QA”
• This is the new “Met the requirements” !
• QA oriented development is a predictable train crash
• Having a QA process doesn’t mean you can hire subpar programmers
21Sunday, November 21, 2010
![Page 22: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/22.jpg)
Possible Solutions• Avoid QA oriented development, what you
need is user oriented development
• Make it clear that development should care about the end user experience and expectations
• Be sure that the whole team actually knows the user expectations
• QA needs leverage to halt a deploy
22Sunday, November 21, 2010
![Page 23: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/23.jpg)
The meeting addiction
“Meetings are indispensable when you don't want to do anything.”
John Kenneth Galbraith
23Sunday, November 21, 2010
![Page 24: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/24.jpg)
The meeting addiction
• Actually, daily meetings can be a good thing!
• You need to control the Drama Queens
• Constant whining is a sign of trouble
• More communication doesn’t mean good communication
24Sunday, November 21, 2010
![Page 25: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/25.jpg)
Possible Solutions
• Focus on planning instead of eternal debates over what went wrong
• “Inspect and adapt” can lead to a dangerous road
• Sometimes you need to fix (or get rid of) the problem
25Sunday, November 21, 2010
![Page 26: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/26.jpg)
The risk homeostasis syndrome
The hypothesis of risk homeostasis holds that everyone has his or her own fixed level of acceptable risk. When the level of risk in one part of the individual's life changes, there will be a corresponding rise or fall in risk elsewhere to bring the overall risk back to that individual's equilibrium.
Source: http://en.wikipedia.org/wiki/Risk_homeostasis
26Sunday, November 21, 2010
![Page 27: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/27.jpg)
The risk homeostasis syndrome
• Symptoms may include:
• Multiple development teams working on a project at the same time
• Scrum master arguing about the number of stories and/or effort estimations
• Too many significant stories being deployed every cycle
• More than one deploy for each cycle - see the mythical endless week
27Sunday, November 21, 2010
![Page 28: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/28.jpg)
Possible Solutions
• If the company missed the time to market window, launching a poorly developed product won’t fix it
• Remember Brook’s Law: "adding manpower to a late software project makes it later"
• Trust your team’s effort estimations
28Sunday, November 21, 2010
![Page 29: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/29.jpg)
Now this one is for the managers
I know you’re out there !
29Sunday, November 21, 2010
![Page 30: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/30.jpg)
If you expect this...
30Sunday, November 21, 2010
![Page 31: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/31.jpg)
Don’t treat your team like this
31Sunday, November 21, 2010
![Page 32: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/32.jpg)
Garbage InGarbage Out
• In the end it’s all about people
• Cheap programmer’s code will be... cheap
• No development process will harness the power of ignorance
32Sunday, November 21, 2010
![Page 33: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/33.jpg)
You can’t fit a square peg in a round hole.
33Sunday, November 21, 2010
![Page 34: Agile or Fragile](https://reader034.vdocuments.us/reader034/viewer/2022052306/54626272af7959ba618b4cae/html5/thumbnails/34.jpg)
It’s Q&A time !
34Sunday, November 21, 2010