agile methods and other fairy tales
play

AGILE METHODS AND OTHER FAIRY TALES David Longstreet - PowerPoint PPT Presentation

AGILE METHODS AND OTHER FAIRY TALES David Longstreet www.SoftwareMetrics.Com David@SoftwareMetrics.Com 816.739.4058 Sources http://agilemanifesto.org/ http://www.martinfowler.com/ Once Upon A Time... IT Causes Most of Its Own Problems


  1. AGILE METHODS AND OTHER FAIRY TALES David Longstreet www.SoftwareMetrics.Com David@SoftwareMetrics.Com 816.739.4058

  2. Sources http://agilemanifesto.org/ http://www.martinfowler.com/

  3. Once Upon A Time...

  4. IT Causes Most of It’s Own Problems

  5. Ignaz Semmelweis Medicine “ is complex ” Medicine “ is unpredictable ” Every patient is di ff erent “ Even if he is right, it is too much work to wash hands between patients, don ’ t have time. ”

  6. Agile Quotes Software development is “ too complex ” Software development is “ unpredictable ” Software development is “ intellectually intensive ” Takes too much time to gather requirements upfront.

  7. Software Economist  Nearly 3 Million Frequent Flyer Miles  Consulted on every continent except Antarctica  Presented papers at conferences in USA, Europe, Middle East, Asia and Africa SoftwareMetrics.Com/Agile 13

  8. Background 9 09 10 0A 11 0B 12 0C .... 16 10

  9. Cities 15

  10. Clients Clients include Banking & Finance, Aerospace, Retailers, Animal Food, Telephony, Consulting Companies, Medical Research, Defense Contractors, Automotive, Universities, Government Agencies and others Some clients: MasterCard, IRS, US Courts, Amadeus, Ralston Purina, Lockheed, DOD, T ransamerica, Agfa, DirecTV , Biologic, Accenture, Motorola, Nissan, others… 16

  11. Academic Academy Of Management Referee Journal Articles Research Adjunct Professor MBA & Graduate Psychology Industrial Organization Psychology Statistics Quantitative Analysis eCommerce 17

  12. RAD Iterative Agile

  13. Agile Conventional wisdom repackaged T reating of symptoms not solving the problem

  14. AGILE MISTAKES

  15. Agile Mixes Terms Empirical Modeling Empirical Theory Empirical Process Empirical Control

  16. Pink V elvet Soft Serenade

  17. Empirical Process

  18. Red Paint Speci fi ed Tolerance Levels

  19. Empirical Process Control Inputs vary within a speci fi ed range and are automatically adjusted. Outputs are de fi ned to exact speci fi cations

  20. Empirical Modeling A method to develop a theory based upon actual observation ( data ) . Is based only on data and is used to predict, not explain, a system. Not a method to build products.

  21. Origin of Waterfall Methodologies

  22. 1836

  23. Professionals General Contractor Architects Programming Craftsmen Engineers Financiers Plumbers Designers Carpenters Painters Electricians Masons

  24. Designer Skilled Semi - Skilled Seamstress Craftsmen Unskilled

  25. Specialization All disciplines, as they mature, move from generalist to specialist. W aterfall development is the natural result of specialization. Specialization moves industries forward. Specialization drives better communication.

  26. Specialization Law Medicine Architecture Physics Dentistry Specialists have higher incomes than generalists.

  27. “REQUIREMENTS RAIN”

  28. Agile Mistake Unpredictability of Requirements “ Predictability is Impossible ” - Martin Folwer. Can ’ t Predict = Can ’ t Estimate

  29. Changing Requirements Agile.... “ Allows teams to develop software in the face of vague and rapidly changing requirements. ” What causes requirements to be incomplete?

  30. Characteristics of Growth New Changed Missed Expanded

  31. Growth Rates W aterfall/T raditional % Growth 300 250 200 150 100 50 0 Requirements Analysis Code Test

  32. Growth Rates Iterative % of Project 100 75 50 25 0 Start 1/3 2/3 3/3

  33. 300 250 200 150 100 50 100 0 Requirements Analysis Code Test 75 50 25 0 Start 1/3 2/3 3/3

  34. Growth Comparison W aterfall & Agile Most growth comes at the end of the project. Majority of requirements are discovered at the end of a project. What are the reasons requirements were not discovered earlier?

  35. Dollars Per FP by Phase Holding Quality Constant Dollars

  36. Industry Wide Data Mean Best In Class W orst In Class Productivity Comparison: Hrs/FP more than 65 26 to 45 less than 7

  37. Best In Class Companies Percent time by major phase

  38. W orst In Class Companies Percent time by major phase

  39. W Best In Class orst In Class

  40. PAIR PROGRAMING

  41. Please step away from the code!

  42. AGILE FAILS MATH

  43. > Mathematical Proof A B A B + +

  44. Mathematical set theory A + B + C + ( A ∩ B ) + ( A ∩ C ) + ( B ∩ C ) > A + B + C

  45. BUSINESS DOMAIN

  46. Agile Quotes Agile so fu ware development starts when the programming starts. What happens before that may be incredibly important, but it ’ s no t Agile so fu ware development. It ’ s eXtreme Programming, which implies writing so fu ware, to me. Helping The Customer Figure Out What They W eXtreme Helping The Customer Figure Out What They W ant is ant something else. I think it ’ s fair to say that customer practices are not addressed i n Agile methods.

  47. The core business is at one table and IT is at the kids table.

  48. Business Domain Knowledge T rade publications T rade shows & conferences Spend time with your customer Study your competition!

  49. Business Partner If you do not know about the business, then how do you know what should be in a release or not in a release? Why should you be a “ business partner ” if you do not know or care about the business?

  50. REQUIREMENTS AGILE TRIAL & ERROR

  51. Industrial Designer “ Y our customer lacks the vocabulary to explain what is wrong and especia � y w hat is missing. ” New Changed Missed Expanded

  52. A Logical Question If your customers cannot articulate what they want and especially what is missing, then how should the requirements process work?

  53. The Worst Ways Sitting in a conference room with your “ customers ” and asking, “ What do you want? ” W aiting for customers to articulate what they want Using a client liaison to articulate what customers want What type of employee is sent to work with IT?

  54. Waterfall v. Agile Real di ff erence is what is the best method to conduct analysis & requirements gathering? Agile T rial and Error ( code/test ) W aterfall Structured Analysis Agile not enough time to do it up front, but enough time to do it over and over and over and over, and...

  55. Requirements Rain, Agile Customer problem not understood Solution becomes trial and error process Functionality is added in hopes of solving customer problem

  56. Root Causes of Failure to Communicate Requirements Lack of design knowledge Inability to elicit requirements Poor business domain knowledge Inconsistently written documentation

  57. Right Size What is the right size for the given budget & timeline? How much functionality is the organization capable of delivering per unit of time? It is pointless to develop 5,000 function points worth of requirements if your organization is capable of delivering 1,000 in the alloted budget & timeframe.

  58. IT Communication Skills Written - 10 +10 - 8 V erbal - 10 +10 - 7

  59. Technical Skills Coding - 10 +10 7

  60. Myers-Briggs Personality Assessment INTP - Software Developers Introverted Thinking Aided By Intuition

  61. Industrial Designers IDSA.org

  62. I just thought of something It’s not Agile it is Ad-Hoc

  63. Job Growth in Software Development Thousands of Jobs Data: Bureau of Labor Statistics, 3Q 1996 to 3Q1997

  64. Blacksmith Rapid employment growth from 1850 to 1915 Employment peaked in 1915 at 250,000 Obsolete by 1950

  65. Computer Science Bachelor Degrees 60000 45000 30000 15000 0 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 Source: Department of Education

  66. PhD.’s Computer Science 1500 Non Resident USA 1125 750 375 0 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006

  67. Summary

  68. Classic Agile is the classic example of treating symptoms in lieu of solving the problem. Reacting v. W ashing Hands

  69. V ersus

  70. Testimonials Within 17 weeks I lost 69 pounds. Our wedding photos were just incredible Doubts? Visit W eight Loss Institute

  71. Summary A lot of industries are more complex than software! As industries mature they specialize and waterfall is a natural result of specialization. Programming is becoming craft not a profession. Learning about the business helps solve the requirements problem.

  72. History Those who can not learn from history are doomed to repeat it. - George Santayana History may not repeat, but it sure does rhythm a lot - Mark Twain. Y ou got to change your evil ways, baby - Carlos Santana Software development is like every industry that has gone before.

  73. Agile Wrong about empirical modeling Wrong about waterfall Wrong about pair programming Wrong requirements gathering Wrong about the future of software development

  74. AGILE METHODS AND OTHER FAIRY TALES David Longstreet www.SoftwareMetrics.Com David@SoftwareMetrics.Com 816.739.4058

Recommend


More recommend