home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #31 / NN_1992_31.iso / spool / comp / std / unix / 480 < prev    next >
Encoding:
Internet Message Format  |  1992-12-23  |  6.5 KB

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