home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / std_unix / volume.29 / text0090.txt < prev    next >
Encoding:
Text File  |  1992-12-26  |  6.1 KB  |  149 lines

  1. Submitted-by: karish@pangea.Stanford.EDU (Chuck Karish)
  2.  
  3. In article <1halvbINN9kd@ftp.UU.NET> stephe@usenix.org
  4. (Stephen R. Walli) writes, as part of a well-considered
  5. analysis that points out some critical problems:
  6.  
  7. >I think POSIX is caving in under its own weight.
  8.  
  9. I agree.
  10.  
  11. >Test Method Madness
  12.  
  13. >Now, a standard cannot offically exit balloting without having a test
  14. >method specification that is also a standard.  This instantly sets up
  15. >a directly competing body of text to the original standard.
  16.  
  17. I've been under the impression that the test methods must
  18. always defer to the semantics defined in the base document.
  19. The competition for developers' attention is real!
  20.  
  21. >Test methods standards will become the annointed specification for the
  22. >test suite to demonstrate conformance by organisations with the funds
  23. >or market presence to demand as much. Implementations can hit the
  24. >narrower mark of the test suite (embodying the standard test methods)
  25. >to naively certify rather than hit the standard itself.
  26.  
  27. This is always the case, as far as I can tell.  Implementations
  28. of a standard are tested (and used!) according to their behavior.
  29. It is problematic whether aspects of the base specification
  30. that are not testable belonged there in the first place.
  31.  
  32. >If you don't
  33. >realise the subtle and nasty differences that can appear, spend some
  34. >time with the POSIX.1 standard (IEEE Std 1003.1- 1990), and with its
  35. >newly declared standard test methods (IEEE Std 1003.3.1-1992).
  36.  
  37. It's to be called 2003.1-1992.  Is the problem with the
  38. many errors in 2003.1 or with the philosophy of
  39. certification based only on testable behavior?
  40.  
  41. My observation has been that the nasty differences arise
  42. because the writers of the base standard don't consider
  43. carefully enough how the standard will be implemented.  The
  44. discipline of considering test methods helps focus
  45. attention on these problems before errors in the standards
  46. are immortalized as hacks in the implementations.
  47.  
  48. >Now what happens when someone requests an interpretation of a standard
  49. >with its test methods?
  50.  
  51. In the past, people who wondered about the meaning of an
  52. aspect of a base standard asked the relevant interpretations
  53. committee for a ruling.  I don't see that the situation
  54. is much different now.
  55.  
  56. Each assertion in a test methods document is a very specific
  57. statement about the meaning of the base standard.  The
  58. interpretations committee for the base standard should be
  59. able to assess assertion accuracy easily.
  60.  
  61. >If the request is leveled against the base, what guarantees are there
  62. >that the test methods, i.e. a separate standard, will be kept
  63. >synchronized?
  64.  
  65. People who use test suites will either demand it or will
  66. volunteer and do it themselves.  From a practical
  67. viewpoint, it's a tremendous amount of work for a
  68. certifying authority to continually make allowances for
  69. errors in test methods; it's much easier to fix them.
  70.  
  71. This requires that an active ongoing interpretation and
  72. maintenance process be supported.
  73.  
  74. >Do test methods need to be standards?
  75.  
  76. If the test methods aren't standardized, test suites will
  77. become de facto standards without adequate review.  I don't
  78. see a viable alternative to standardizing the test methods.
  79. I hope we can continue to move away from the practice of
  80. hacking our implementations to work around inadequacies in
  81. test suites, just as every implementation of a specification
  82. no longer has to be a bug-for-bug clone of a reference
  83. implementation now that we have a process to standardize
  84. specifications.
  85.  
  86. >Testing is
  87. >expensive, but the market ultimately protects itself. What has been
  88. >done in the TCP/IP space? (If you don't think TCP/IP is a successful
  89. >widely implemented specification, stop reading now.)
  90.  
  91. This example is not completely analogous to the POSIX operating
  92. system standards.  Communication systems are worthless without 
  93. complete interoperability, so the marketplace is quite efficient
  94. in requiring conformance.
  95.  
  96. Move away from that a bit and look at specifications like SCSI,
  97. NFS, and the One True GUI, and you'll see that the marketplace
  98. does not always cause implementors to see the need to compromise and
  99. converge.
  100.  
  101. >What about the C
  102. >language?  No one specified a set of test methods for the ANSI C
  103. >standard. People in the know wanted to see how to test the C standard,
  104. >and through a lot of hard work built the Plum-Hall test suite. The
  105. >U.S. government created a FIPS for C, and chose an available suite.
  106. >There were no test methods for this work. No added burden on the
  107. >volunteer standards community to respecify itself.
  108.  
  109. Here's where politics become a problem.  It's difficult to
  110. design test methods and implement a test suite that do not
  111. favor one implementation over another.  Moreover, it's
  112. expensive: sufficiently expensive that it's too risky to
  113. develop a test suite that may not be accepted.  This is
  114. problematic even with standardized test methods.
  115.  
  116. [ The solution: don't ballot on test methods. ]
  117. >Ballot groups could concentrate on the real specification in front of
  118. >them. Repeat again: Bad test methods standards will be dangerous in
  119. >the marketplace.
  120.  
  121. Without the balloting, there won't be any test methods
  122. standards.  And if we think back to the misgivings expressed
  123. above about naively certifying against test suites rather than
  124. against standards, we'll come to expect the bad test methods to
  125. drive out the good.
  126.  
  127.  
  128. The question of who will be willing to take on all the work
  129. of doing the interpretations is a good one.  The 1003.1
  130. interpretations folks will be swamped for some time to come
  131. with questions about the accuracy of 2003.1 assertions.
  132. The situation would be an absolute nightmare if they were
  133. in the position of having to answer corresponding sets of
  134. questions relating to multiple test methods specifications
  135. that had not been through a review process.
  136.  
  137. It's much more efficient to get a standard right the first
  138. time than by patching it through the review and maintenance
  139. process.  Without balloting on test methods, we'll wind up
  140. with more wasted effort and less to show for it, both in
  141. the base standards and in the test methods.
  142.  
  143. --
  144. Chuck Karish          karish@mindcraft.com
  145. (415) 323-9000 x117   karish@pangea.stanford.edu
  146.  
  147. Volume-Number: Volume 29, Number 90
  148.  
  149.