home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #31 / NN_1992_31.iso / spool / comp / security / misc / 2406 < prev    next >
Encoding:
Internet Message Format  |  1993-01-02  |  7.9 KB

  1. Xref: sparky comp.security.misc:2406 comp.org.eff.talk:8233
  2. Newsgroups: comp.security.misc,comp.org.eff.talk
  3. Path: sparky!uunet!zaphod.mps.ohio-state.edu!caen!hellgate.utah.edu!csn!teal!bhayden
  4. From: bhayden@teal.csn.org (Bruce Hayden)
  5. Subject: Re: Stupid Licenses (YUCK!)
  6. Message-ID: <bhayden.725949329@teal>
  7. Sender: news@csn.org (news)
  8. Nntp-Posting-Host: teal.csn.org
  9. Organization: Colorado SuperNet, Inc.
  10. References: <bhayden.724690634@teal> <1992Dec19.023609.26000@news2.cis.umn.edu> <1992Dec22.034142.14471@fsl.noaa.gov> <1992Dec28.002314.21233@news2.cis.umn.edu> <bhayden.725514513@teal> <1992Dec30.130805.28123@mksol.dseg.ti.com>
  11. Date: Sat, 2 Jan 1993 04:35:29 GMT
  12. Lines: 150
  13.  
  14. mccall@mksol.dseg.ti.com (fred j mccall 575-3539) writes:
  15.  
  16. >In <bhayden.725514513@teal> bhayden@teal.csn.org (Bruce Hayden) writes:
  17.  
  18. >>charlie@umnstat.stat.umn.edu (Charles Geyer) writes:
  19.  
  20. >>>In article <1992Dec22.034142.14471@fsl.noaa.gov> bear@kestrel.fsl.noaa.gov
  21. >>>(Bear Giles) asks:
  22.  
  23. >>That is what is known at regression testing. First, many don't do it,
  24. >>and second, even those that do often miss things. However, I would
  25. >>contend that regression testing is a minimum requirement when upgrading
  26. >>a product. .
  27.  
  28. >All true, but it still won't find all the bugs.  It won't find any of
  29. >the ones that got through your initial tests and it won't necessarily
  30. >find new ones that are introduced by the fixes you've put in.  What
  31. >you seem to be arguing for is exhaustive testing (an impossibility) to
  32. >be repeated each time a change is made.
  33.  
  34. No - I am not suggesting that everything be tested whenever a fix is
  35. added. I am also not advocating finding all of the bugs...
  36. But - I have spent enough of my life coping with bugs introduced 
  37. when code was fixed to realize that more testing is required than most
  38. companies provide.
  39.  
  40. I am suggesting two things really. First when a product is released,
  41. or a new version thereof, prior to release a QC level should be d
  42. determined, and stuck to. This means so many bugs of a certain level.
  43. Secondly, a test suite should be developed as you go along, testing
  44. in particular for previous bugs. Then the test suite is run against the
  45. new version, making sure that old bugs don't resurface.
  46. .
  47. >You want it WHEN ???
  48.  
  49. Well, this is a combined marketing/management/legal problem. Invariably
  50. marketing, for any number of reasons promises what cannot be delivered.
  51. This will continue to happen until companies discover that the cost of
  52. prematurely releasing software outweighs any marketing advantages gained.
  53. Currently that is not the case. But it may be changing. 
  54.  
  55. In litigation over the software, one of the first things that competent
  56. counsel will look at are the procedures actually followed in releasing
  57. the software. Was due care exercised in designing, developing and
  58. maintaining the software? Was QC in place, and was it followed?
  59. (Or was it preempted by marketing?)
  60.  
  61. >>>A customer can't really complain if software doesn't work on hardware the
  62. >>>vendor doesn't claim it works on.
  63.  
  64. But that's rarely the problem. More likely is the situation where the
  65. software will run on a "generic" PC. Or maybe the vendor didn't specify
  66. what the software would run on (or wouldn't). 
  67.  
  68. I will be the first to agree that a vendor should not have liability for
  69. situations where they have prominently disclaimed (before purchase) 
  70. running on a specified configuration, or have stated that they only run
  71. on certain configurations. But that rarely happens. 
  72.  
  73. >>Well, if the vendor says that it will only work on a limited configuration
  74. >>you may be right. However, I think that it is suicide to write software
  75. >>(at least for a PC) that runs on a limited range of machines. I ask what
  76. >>is wrong with a company if they can't get their product to run on a 
  77. >>generic PC (or if they won't even try). 
  78.  
  79. >Define 'generic PC'.  Most people define it as "what is on my desk".
  80. >Unfortunately for software producers, that's not the same for
  81. >everyone.  
  82.  
  83. The question from a legal point of view is - whose problem is it?
  84. I would argue (see below) that it's the problem of the vendor, and
  85. not the person depending on the vendor's expertise. 
  86. ,
  87. >>My experience is that few software vendors spend much time defining
  88. >>what their software will not run on (except maybe to say it requires
  89. >>at least DOS 3.10, or Windows 3.1). My feeling is that if they don't
  90. >>tell me before I buy a piece of software (i.e. on the box) that it 
  91. >>won't run on my machine, I expect it to run.
  92.  
  93. >They don't spend a lot of time doing it for a number of reasons.  1)
  94. >We're back to that problem of exhaustive test.  There are just too may
  95. >possible combinations of hardware and software to try them all.  2)
  96. >DOS typically doesn't stress the hardware all that much, and will let
  97. >hardware with sloppy timing happily run.  Software that is more
  98. >efficient and makes better use of the hardware will require tighter
  99. >timings on it, and will fail on some machines.  Windows 3.1 fails on
  100. >some machines with marginal memory that Windows 3.0 runs on, for
  101. >example.  OS/2 fails on even more, in part because it tries to really
  102. >use the whole machine instead of only using the bottom 640k of memory
  103. >and then getting to the rest of it via kludges.  3) Software can
  104. >interact with other software.  What TSRs you have loaded AND THE ORDER
  105. >THEY ARE LOADED IN can make a big difference, but this will vary with
  106. >what kind of hardware you have, what memory manager you use, etc.
  107.  
  108. Well, that doesn't answer the question. If I have what I "reasonably"
  109. consider a generic PC (and a not too wild configuration), and I buy
  110. a piece of software that allegedly runs on a PC, then I (as the buyer)
  111. can reasonably expect that software to run on my machine. If it doesn't,
  112. then the liability must rest on the party most able to prevent the 
  113. problem - the vendor, and not on the buyer, who is depending
  114. on the expertise of the vendor.
  115.  
  116. That means that vendors should (and probably will) be held to a standard
  117. of either disclaiming support for a specified configuration or machine,
  118. or supporting it. The disclaimer should also probably be visible to
  119. any purchaser before he buys the software (and not burried within)
  120. .
  121. >Just how many version would you have them support, and for how long?
  122. >On how many different machines in how many different configurations?
  123.  
  124. As for how many versions - the question is not relevant. My position
  125. is that if you are going to upgrade - you should make sure that you
  126. do it right - or face the consequences (in particular legal) for your 
  127. failure.
  128.  
  129. As for different machines and different configurations - the questions
  130. is also relatively easy. If you have had a problem with a particular
  131. machine and/or configuration, then you should either 1) disclaim
  132. prominently responsibility for any future levels and/or versions, or
  133. 2) test with that problem machine and/or configuration. 
  134.  
  135. >>Again, if the vendor did legitimate regression testing before releasing
  136. >>the upgrade, you wouldn't have this problem. 
  137.  
  138. >Well, you wouldn't have it AS MUCH.  However, from reading your
  139. >comments, it just doesn't seem that you've considered what kind of
  140. >real-world problems you're talking about.
  141.  
  142. Well, I was in software development long enough (15 years) that I 
  143. have seen how it is done wrong more times than I can count. I have
  144. also seen it done right. My experience is that all it takes to do
  145. it right is proper planning and adequate resources. 
  146.  
  147. I think that we will see in the very near future that courts start
  148. imposing liability for defective software, if the reason that the
  149. software is defective is that proper software engineering methodology
  150. was not followed. 
  151.  
  152. This means that an expert witness will come along and say that if
  153. (for example) this procedure, etc. (such as QC) had been done, the
  154. program would probably not have failed as it did. Then (s)he would
  155. go on and testify that that procedure (or whatever) is taught in
  156. many (most) software engineering classes. Stating that the procedure
  157. was ignored or overridden because of marketing decisions has rarely
  158. been a credable defense. 
  159.  
  160. Bruce E. Hayden
  161. (303) 758-8400
  162. bhayden@csn.org
  163.  
  164.