home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #27 / NN_1992_27.iso / spool / comp / software / 4479 < prev    next >
Encoding:
Internet Message Format  |  1992-11-23  |  4.2 KB

  1. Path: sparky!uunet!olivea!charnel!sifon!homer.cs.mcgill.ca!zaphod
  2. From: zaphod@cs.mcgill.ca (Morris BERNSTEIN)
  3. Newsgroups: comp.software-eng
  4. Subject: Re: Software Factory (was: Re: Do Software Engineers Actualy Do So Badly?)
  5. Message-ID: <1992Nov23.222250.23407@cs.mcgill.ca>
  6. Date: 23 Nov 92 22:22:50 GMT
  7. References: <BxLw2F.6tA@NeoSoft.com> <1992Nov16.212036.12342@news.arc.nasa.gov> <1992Nov19.023834.27234@netcom.com>
  8. Sender: news@cs.mcgill.ca (Netnews Administrator)
  9. Organization: SOCS - Mcgill University, Montreal, Canada
  10. Lines: 85
  11.  
  12. In article <1992Nov19.023834.27234@netcom.com> mcgregor@netcom.com (Scott Mcgregor) writes:
  13. >Sometimes I am not so sure about software companies.  They sometimes
  14. >seem to put resources on projects that will only make money if they
  15. >meet a tight market window and have high initial demand.  They might
  16. >be better off skipping those projects and working on some less
  17. >demanding ones occassionally.
  18.  
  19. The problem is that (in my experience) most projects tend to have that
  20. pressure.  Time and time again, I've seen that the project is given to
  21. the one with the best promises rather than the one with the most
  22. realistic schedule.
  23.  
  24.  
  25. >                They decline to give any estimate, rather than choose
  26. >one and have a variance when the actual is measured. This reluctance
  27. >to deal with anything that isn't purely deterministic and calculable
  28. >makes the software industry different from many others.
  29.  
  30. There's another problem that I've come across.  If I'm going to make a
  31. reasonable estimate, I need to have some information about what the
  32. customer wants.  Ideally, we should be able to say to the customer,
  33. "tell us what you want and we'll give you a product spec in X weeks".
  34. Once the product spec is delivered, we set a date for the design
  35. document.  Once we've done the design, then we have some reasonable
  36. idea how much development effort is required.
  37.  
  38. In practice, the customer says, "we're not sure what we want, but the
  39. system must be delivered in a year, so set the dates for the gates
  40. accordingly".  Six months into the development cycle, the customer
  41. comes back and says, "We also need these additional features.  Late?
  42. What do you mean late?"
  43.  
  44. >...
  45. >"Oh let's see, there's a guy standing next to the bridge there, let's
  46. >assume he's about 5 feet for easy arithmetic. if he laid down he'd
  47. >extend about half way between those two struts so they'd be about 10
  48. >feet apart. Theres one, two, three---ten of them. So the bridge is
  49. >about 100 feet long, with ten major struts, based on past experience
  50. >maybe 6-18 months to design and build."
  51.  
  52. Yeah, the civil engineer has built a brigde before.  With software,
  53. especially with reuse, each new application is *different* from the
  54. previous.  Sure, I can tell you how long it would take me to write a
  55. dictionary data structure, but how do I decide a priori that I need
  56. the dictionary and not some other structure?
  57.  
  58.  
  59. ...
  60. >"So it will probably take between a month and a year?"
  61. >
  62. >"Yes, definately. But I can't tell you when exactly."
  63. >
  64. >"So you just gave me an estimate. If I can make sure we can make a
  65. >profit, even if the project runs a year, then I can be sure that this
  66. >is a good thing to do.  If it is only profitable if it takes less than
  67. >a year I'm taking a bigger risk, right?"
  68. >
  69. >"Sure.  But that's a pretty big variance. You don't really know how
  70. >long it is really going to ta."
  71. >
  72. >"I don't need more accuracy.  I just need to know the possible
  73. >variances, not just the mean. As long as you are within those, no
  74. >matter how big they are, I can manage the risk and project go/no go
  75. >decisions. I can manage risk/reward (profit requirements).  But if you
  76. >don't give me any estimate I am hosed."
  77. >
  78. >"Oh, well that's not too hard then."
  79. >
  80. >"That's what I thought all along!"
  81.  
  82. Suppose you're looking for a contractor and you get three estimates:
  83.     1) two months
  84.     2) six months
  85.     3) some time betweeen a month and a year
  86. Who would you pick?
  87.  
  88. I am going to get better with my estimation abilities because I have
  89. to, but how do I compete with someone who is willing to underbid me
  90. and make the profit by cutting on things the customer can't
  91. immediately see, like maintainability (and don't say that the customer
  92. should know about these things because if they did, they wouldn't need
  93. the contractor)?
  94.  
  95.  
  96. Morris
  97.