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

  1. Path: sparky!uunet!not-for-mail
  2. From: stephe@usenix.org (Stephen R. Walli)
  3. Newsgroups: comp.std.unix
  4. Subject: POSIX - Caving In Under Its Own Weight (Long)
  5. Date: 23 Dec 1992 13:33:31 -0800
  6. Organization: Hillside Systems, 61 Hillside Avenue, Canterbury, Kent CT2 8HA
  7. Lines: 605
  8. Sender: sef@ftp.UU.NET
  9. Approved: sef@ftp.uucp (Moderator, Sean Eric Fagan)
  10. Message-ID: <1halvbINN9kd@ftp.UU.NET>
  11. NNTP-Posting-Host: ftp.uu.net
  12. X-Submissions: std-unix@uunet.uu.net
  13.  
  14. Submitted-by: sef@ftp.uu.net
  15.  
  16. ``Standards are commercial and international politics dressed up as
  17. technical arguments.''
  18.  
  19. I think POSIX is caving in under its own weight.  All of the hard
  20. nuts-and-bolt work effort of defining a technical programming
  21. specification is slowly being mired in the mud.  POSIX exists to ``...
  22. support application portability at the source-code level.  It is
  23. intended to be used by both application developers and system
  24. implementors.'' (ISO/IEC IS 9945-1:1990, 1.1 Scope, p.1, lines:2-3).
  25.  
  26. It has been floundering for sometime in a mess of its own making. I
  27. want to look at this mess, describing it and its historical context,
  28. and offer up a few possibilities for solutions.  This article is long,
  29. but there is a lot of context that needs to be understood to see
  30. what's happening to an otherwise useful standards effort. The article
  31. ends with a list of e-mail addresses to which you may wish to send any
  32. questions and concerns. In fact, I encourage it, and hope that you'll
  33. be convinced by the end of the article.
  34.  
  35. The Problem
  36.  
  37. There are two sets of people doing work in the POSIX working groups.
  38. The first set sit in the individual working groups, distilling
  39. historical practice and experience into a technical specification
  40. ``for application developers and systems implementors.''
  41.  
  42. The second set of people have typically been involved at the working
  43. group level for quite some time. They are often chairs of the groups
  44. or other officers.  These people have begun to have co-ordination
  45. meetings and form steering committees outside the working group
  46. structure.  All of the pieces of POSIX are related to one another, and
  47. there is a genuine need to co-ordinate between the different groups of
  48. heads-down-over-the-specification-technicians.  The bureaucracy has
  49. grown because of need rather than desire to hold extra meetings.  Most
  50. of the people involved can think of more enjoyable ways to spend their
  51. time.
  52.  
  53. I wander these steering committees, sub-committees, and the hallways
  54. of POSIX. It quickly became apparent to me that this is where the
  55. politics that drives POSIX is most on display.  I was eventually
  56. around long enough to get involved in some of these committees. (Fool
  57. me.)
  58.  
  59. There has been a strange tension in these rooms for quite some time,
  60. coupled with a terrible confusion and sense of apathy. This is not
  61. noticable in the working groups themselves.  Heads down and oblivious
  62. to the politics of POSIX, the working groups are buried in the
  63. religious wars and politics of their own technical specification.
  64.  
  65. A couple of POSIX meetings back, it began. First in one steering
  66. committee, then another, and another.  The group would hit a crisis
  67. point, and throw up its hands.  Despite the fact that each room
  68. contained people with a long history and knowledge of POSIX, they
  69. would reach a point of apparent confusion as to how to co-ordinate
  70. with another steering committee or sub-committee. (The running joke is
  71. that we need a steering committee steering committee, but it really
  72. isn't seriously contemplated.)
  73.  
  74. Finally, someone would suggest we need to define the problem. I
  75. offered to go away and write it up. (More fool me.) Then the next
  76. sub-committee meeting. The same process.  Tension, confusion, ``let's
  77. define the problem.'' It started in the Project Management Committee.
  78. I later saw it in the Steering Committee for Conformance Testing, then
  79. the System Interface Co-ordination Committee. These are all really
  80. fundamental sub-committees, with a lot of POSIX history in their
  81. membership.
  82.  
  83. The co-ordination complexity is amazing. The major areas of POSIX
  84. requiring co-ordination are the base documents themselves, their test
  85. methods, and their structure with respect to language independent
  86. specifications (LIS) and programming language bindings. (This
  87. complexity has spawned profiles, about which I've yelled enough for
  88. now.)
  89.  
  90. Steering committees were thought to be a way out of the mire. If we
  91. just communicate with one another, the problems will all become
  92. apparent, sort themselves out and go away.  But ultimately this falls
  93. down. POSIX is too big. The steering committees have no authority to
  94. impose their collective will.  POSIX is a volunteer effort. There are
  95. no sticks and there are no carrots.
  96.  
  97. If it becomes too much trouble to build the standards, then the
  98. volunteers will cease to arrive at the meetings. The POSIX standards
  99. effort will fail. Or worse yet, they will continue to be defined by
  100. fewer and fewer people with sound technical background and a proper
  101. perspective on the subject. This will cast doubt on the good work
  102. which has already been done.
  103.  
  104. Test Method Madness
  105.  
  106. To ensure that implementations of the POSIX.1 standard could somehow
  107. be tested and certified in a uniform way, the POSIX.3 standard (Test
  108. Methods) was created. This work was heavily supported and resourced by
  109. the United States government, along with the testing agencies that were
  110. supporting the actual testing requirements.
  111.  
  112. The POSIX.3 standard is not a bad thing. It defines a methodology by
  113. which test methods and results of test cases written to these methods
  114. can be uniformly described.
  115.  
  116. If you are creating a standard it's a useful tool to ask yourself
  117. ``how would I test this functionality or feature'' as you write the
  118. specification.  It ensures you read and possibly re-write the
  119. specification properly.  You may wish to deliberately not be complete
  120. in the definition, but these areas in a standard specification should
  121. be intentional.
  122.  
  123. This ``testing'' tool has even been proven.  Several working groups
  124. have written test methods for their specifications, with some help
  125. from people historically involved in the original POSIX.3 effort. Many
  126. of these POSIX.3 members have formed the Steering Committee on
  127. Conformance Testing (SCCT) that oversees how test methods are applied
  128. and created in the working groups.  The SCCT has been too busy to
  129. review these test methods in depth, but without judging whether the
  130. new test methods are good or bad, the working groups that have gone to
  131. the trouble of creating them have all felt that their base
  132. specifications are better defined for the effort.  It seems that the
  133. tool works!
  134.  
  135. Now for the problem.  Some time ago, the SCCT recommended to the
  136. Sponsor Executive Committee (SEC) that all POSIX standards must have
  137. associated test methods.  These test methods would be standards as
  138. well. They convinced the SEC to make this a requirement.
  139.  
  140. Now, a standard cannot offically exit balloting without having a test
  141. method specification that is also a standard.  This instantly sets up
  142. a directly competing body of text to the original standard. This is
  143. not a competing functional standard a la IEEE 802.n LAN standards.
  144. This is a competing body of text. (Note: ALL discussions of formal
  145. testing languages and formal specifications are red herrings here.
  146. Anyone wishing to hear my three Canadian cents worth on the subject
  147. can email me.)
  148.  
  149. Test methods standards will become the annointed specification for the
  150. test suite to demonstrate conformance by organisations with the funds
  151. or market presence to demand as much. Implementations can hit the
  152. narrower mark of the test suite (embodying the standard test methods)
  153. to naively certify rather than hit the standard itself. If you don't
  154. realise the subtle and nasty differences that can appear, spend some
  155. time with the POSIX.1 standard (IEEE Std 1003.1- 1990), and with its
  156. newly declared standard test methods (IEEE Std 1003.3.1-1992).
  157.  
  158. And what happens when there are holes in the test methods?  Some
  159. things cannot be tested.  The standard still has requirements on these
  160. areas of behaviour, but they may not translate nicely. And there are
  161. some places where the test methods simply aren't complete.  A
  162. reasonably recent draft of the POSIX.3.1 test methods had test methods
  163. for the POSIX.1 environment variables required by U.S. FIPS PUB 151-1,
  164. (the U.S. government profile of POSIX.1,) but none for the other
  165. environment variables. The international community might wish to take
  166. note of this oversight on all LC_ environment variables, should the
  167. POSIX.3.1 standard get to ISO. What other holes are there?
  168.  
  169. There is a terrible balloting problem. Balloting apathy or overload is
  170. striking many places. The test methods documents are as big as the
  171. standards they repeat. Fewer people care about the test methods,
  172. they've seen the original specification and the job is done, right?
  173. We run the terrible risk of passing bad test methods documents if these
  174. documents are quickly processed through balloting groups whose members
  175. have little time on their hands.  In the current commercial climate
  176. for standards, this is dangerous.
  177.  
  178. Then, of course, there is the maintenance problem. All useful
  179. standards have the same problem as all useful software. They need to
  180. be maintained. It's just slower and more tedious.  One has added a
  181. level of complexity to the administration of the interpretations.
  182.  
  183. POSIX.1 has the fun little contradiction that PATH_MAX is the length
  184. of the pathname both explicitly including and excluding the
  185. terminating null byte. An interpretation was requested, and came back
  186. that it was an inconsistency and that both can be right.(2)
  187.  
  188.  (2) IEEE Std 1003.1-1988/INT, 1992 Edition, Interpretation
  189.     Number: 15, p. 36.
  190.  
  191. Now what happens when someone requests an interpretation of a standard
  192. with its test methods?
  193.  
  194. If the request is leveled against the base, what guarantees are there
  195. that the test methods, i.e. a separate standard, will be kept
  196. synchronized? If it's against an inconsistency between the base and
  197. its test method standard, which one wins? If the PATH_MAX argument
  198. holds, then both are correct.  Since one of them is implemented as a
  199. test suite to demonstrate conformance, which one wins in the real
  200. world?
  201.  
  202. Do test methods need to be standards? Who wins by forcing working
  203. groups to completely re-specify their work as test methods? Testing is
  204. expensive, but the market ultimately protects itself. What has been
  205. done in the TCP/IP space? (If you don't think TCP/IP is a successful
  206. widely implemented specification, stop reading now.) What about the C
  207. language?  No one specified a set of test methods for the ANSI C
  208. standard. People in the know wanted to see how to test the C standard,
  209. and through a lot of hard work built the Plum-Hall test suite. The
  210. U.S. government created a FIPS for C, and chose an available suite.
  211. There were no test methods for this work. No added burden on the
  212. volunteer standards community to respecify itself.
  213.  
  214. A great tool; But only a tool!
  215.  
  216. LIS - The Great Experiment
  217.  
  218. Language Independent Specification (LIS) is burden Number #2 on
  219. working group members.  Two working groups have been operating in the
  220. POSIX space for quite some time in programming languages other than C.
  221. One is the POSIX.5 Ada Bindings group, which has re-cast the POSIX.1
  222. standard into Ada, and is now working on POSIX.4 (Real-time
  223. Extensions.)  The second is POSIX.9 which has similarly cast POSIX.1
  224. into FORTRAN 77, and is now considering what to do with Fortran 90.
  225. The two groups have finished their work. Two real standards exist
  226. within the IEEE standards realm:
  227.  
  228.    - IEEE Std 1003.5-1992 (Ada Bindings to IEEE Std 1003.1-
  229.      1990.)
  230.  
  231.    - IEEE Std 1003.9-1992 (F77 Bindings to IEEE Std 1003.1-
  232.      1990.)
  233.  
  234. A small digression is required on ISO POSIX.  Along the way, IEEE
  235. POSIX entered the international community and an ISO Working Group
  236. (WG15) was created as its home in the Subcommittee on Programming
  237. Languages (SC22). WG15 is not a standards development group per se, in
  238. that it does no drafting of specifications. Its job is to review the
  239. draft IEEE documents and make recommendations to the IEEE, through the
  240. ANSI sponsored U.S. Technical Advisory Group (TAG) on POSIX, back to
  241. the POSIX Sponsor Executive Committee.
  242.  
  243. Do not be fooled. There is a substantial overlap in the key personnel
  244. of the IEEE working groups and people sitting in the WG15 meetings as
  245. individual technical specialists from their respective national POSIX
  246. standards groups.
  247.  
  248. ISO began trying to specify programming interface standards in
  249. programming language independent ways, such that the functional
  250. specification appears once, with multiple bindings. It seems expensive
  251. to continually re-specify a standard from one language into a standard
  252. in another language. There is the feeling that there is twice the work
  253. effort, plus the co-ordination effort.
  254.  
  255. A different international group, WG11, is working at defining abstract
  256. data types and such.  All programmatic interfaces could eventually be
  257. described in some abstract functional way and each individual language
  258. binding would just ``fall-out'' once the mapping from the abstract
  259. types to program language types had been established. Because of early
  260. experiments in specifying standards this way, language independence
  261. was inflicted on POSIX as a requirement from WG15. POSIX the Guinea
  262. Pig.  WG11 had never been faced with POSIX.
  263.  
  264. All this means every standard becomes two standards.  There is a book
  265. describing the functional specification in abstract data types, and a
  266. book specifying a mapping to a real programming language's syntax,
  267. along with additional required semantics. Try re-reading each of the
  268. last few paragraphs, and after each repeat, ``It is intended to be
  269. used by both application developers and system implementors.''
  270. Ideally, ISO WG members believed that the functional specification
  271. would be a ``thick'' book, and that the language binding would be
  272. ``thin''.
  273.  
  274. The Ada group, POSIX.5, chose not to split their work. They argued it
  275. was too late in their project and that a sufficiently mature POSIX.1
  276. LIS did not exist. They further argued that they had to produce a
  277. ``thick'' language binding reproducing much of the semantic content of
  278. the POSIX.1 book, re-cast into Ada-speak, in-line.  Programmer
  279. usability was very high on their list of priorities. Think about that
  280. for a minute.
  281.  
  282. I work in an environment where we regularly refer to the POSIX.1
  283. standard.  We write code that needs to be portable to many non-Unix
  284. based architectures that provide POSIX.1 interfaces. All of our many
  285. copies of POSIX.1 are very dog- eared and marked up. We use our copies
  286. daily. It is a useful book from which to program. It is not a
  287. tutorial. It is a programmer's reference.
  288.  
  289. I recently had to go through the POSIX.5 and POSIX.9 standards. I am
  290. not an Ada programmer, but still found the information I needed to
  291. find, in an easily understandable form. The POSIX.5 group did their
  292. job well. Yes, it is a thick binding repeating the semantic functional
  293. material of POSIX.1. And yes, even though the POSIX.5 standard is
  294. supposed to exactly mirror the POSIX.1 standard, I found a bug, (or at
  295. least something about which to request an interpretation.) But I found
  296. the information, clearly laid out; even the bug!
  297.  
  298. The POSIX.9 (FORTRAN 77) working group chose to attempt a thin
  299. language binding to POSIX.1. They were very tight for resources and
  300. they wanted to do the right thing with respect to the ISO WG15
  301. requirements. Through no fault of their efforts, I found it to be a
  302. difficult book to use, and I was a Fortran programmer in a previous
  303. incarnation.
  304.  
  305. First, you immediately run into the two book issue. Look up the syntax
  306. in POSIX.9 which immediately punts you to the semantics in POSIX.1. So
  307. you jockey about two books in your lap, continually cross referencing.
  308.  
  309. Second, you continually switch frames of reference. In one book, there
  310. is a solid real world line of language syntax; in the other book, a
  311. description of that syntax's semantics in a different specification
  312. language (C.)
  313.  
  314. In balloting the POSIX.1 Language Independent Specification (LIS), I
  315. ran into the same problems. Two books, two frames of reference. At
  316. least POSIX.1 Classic (IEEE Std 1003.1-1990 == ISO/IEC IS
  317. 9945.1:1990) stands as an existing reference against which to compare
  318. these models. When we begin balloting drafts of API standards as LIS
  319. and attendent bindings in at least one language, will we be able to
  320. catch all the holes?
  321.  
  322. The IEEE paid to have the initial drafts of POSIX.1 LIS and its
  323. C-binding (POSIX.16) produced. They couldn't get the work done any
  324. other way. Paul Rabin worked long and hard to produce guidelines for
  325. writing LIS and language bindings.  This work was done within the IEEE
  326. POSIX realm, although Paul liaised closely with ISO WG11 and WG15. The
  327. few IEEE POSIX working groups that have attempted partial or complete
  328. drafts of their work using these guidelines, have immediately started
  329. finding problems in their previous C language specific descriptions.
  330. Just like test methods, prodding the text by attempting to re-cast it
  331. into a different form made a better specification.
  332.  
  333. Again, one has to ask if this is a good way to define standards.  A
  334. tool to test the specification, yes. The specification itself? One has
  335. to assume that the standard has an audience, and that usability is an
  336. important factor.  One should assume that the standard is based on
  337. existing practice for the most part. That existing practice is in a
  338. particular programming language for API type standards.  Those will be
  339. the first people to come forward to develop the standard. (There has
  340. to be a need to standardize.)
  341.  
  342. If others with a different programming language background
  343. participate, this would be ideal. If the experience with the
  344. functionality exists in more than one language, and they all want to
  345. come to the table, this is even better. But we do not live in ideal
  346. worlds. Specifying the functionality in a hard to use (2 document/2
  347. context) format is error prone, especially when the document is being
  348. balloted. Until formal methods become a common method of expression,
  349. we are stuck with English descriptions, and the exacting programming
  350. language syntax of the existing body of experience in that area of
  351. functionality.
  352.  
  353. Language Independent Test Methods
  354.  
  355. Yes, you read the title correctly.  If the functionality can be
  356. abstracted, described exactly, then bound in various programming
  357. language syntaxes, so to can the test methods of that functionality.
  358. Think about how you would test an Ada run-time implementation of
  359. POSIX.1.
  360.  
  361. And each is a standard. So there is a base programming language
  362. independent functional specification (LIS) standard, a programming
  363. language binding standard, the LIS test methods standard, and the
  364. language binding standard for those test methods. Balloting will kill
  365. us. We will produce unusable junk if we continue.
  366.  
  367. Simple economics says we're doomed. The IEEE is being forced to pay up
  368. into ANSI for its international standards efforts.  To cover the costs
  369. of simply balloting the quantity of paper, the IEEE has been forced to
  370. start charging $25 US to join balloting groups.  To cover the
  371. international participation, they've considered raising this to $50 US.
  372. That means it will cost the individual professional programming member
  373. of the IEEE $200 dollars to join the balloting groups for a set of
  374. standards that represent a simple piece of functionality in which they
  375. are interested.
  376.  
  377. One might argue that a programmer will only join two balloting groups,
  378. for the LIS and language binding. Because the test methods (LIS and
  379. language binding) are a competing body of text, however, they will
  380. need to check the test methods to confirm they are accurate.  Because
  381. of government procurement policies here and abroad, the test methods
  382. will be important!
  383.  
  384. An Architect's Nightmare
  385.  
  386. LIS, language bindings, LIS test methods, and their bindings. Now
  387. imagine that we start amending the four standards at once. POSIX.6
  388. (Security Extensions to POSIX.1 and POSIX.2) will amend POSIX.1 and
  389. POSIX.2 somehow at some point in the not too distant future.  So will
  390. POSIX.4 (Real-time Extensions), POSIX.8 (Transparent File Access), and
  391. POSIX.12 (Sockets/XTI).
  392.  
  393. The original POSIX.6 document, which did contain all the information
  394. they could put together on POSIX security has just needed to be split
  395. SIX ways.
  396.  
  397.    - The API as an LIS, to amend POSIX.1/LIS,
  398.  
  399.    - The API as a C-binding, to amend POSIX.16,
  400.  
  401.    - The API test methods in LIS form, to amend POSIX.3.1,
  402.      (which currently isn't in LIS form,)
  403.  
  404.    - The API test methods as a C-binding, to amend POSIX.3.1
  405.      (in its current C form?)
  406.  
  407.    - The utilities, to amend POSIX.2,
  408.  
  409.    - The utility test methods, to amend POSIX.3.2.
  410.  
  411. Can't wait.
  412.  
  413. The Problem Revisited
  414.  
  415. If POSIX continues on its current course, one of two things will
  416. happen.
  417.  
  418. ONE - They will succeed.  The useful standards which do exist will be
  419. amended to an user unfriendly form. An ugly unusable set of standards
  420. will eventually be born.  Because of the lack of use, they will fail.
  421. People will not use them. It will be too easy to ignore them.
  422. Programmers will not be able to rely on a certain portability model.
  423. The vendors will continue to sell completely proprietary
  424. implementations.
  425.  
  426. TWO - They will fail.  Under it's own weight, it will collapse. If not
  427. with a bang, then with a slow sickening crunching sound. The people
  428. with the knowledge will get tired, or lose support (as they obviously
  429. aren't producing anything to show their management in recessionary
  430. times.)  POSIX.1 will become unusable as it is amended and amended and
  431. almost amended.  (``If we wait for another 6 months, we'll be able to
  432. get all the wizzy features in POSIX.42....'')
  433.  
  434. ONE AND HALF - Life isn't this black or white. The ugly truth will lay
  435. in the middle. We're talking about several thousands of pages of
  436. functional specification.  We're talking several hundred people in
  437. working groups, plus hundreds more in balloting groups, plus the
  438. unsuspecting time-delayed purchasing public. The death will be long and
  439. painful.  Senility will set in first.
  440.  
  441. Solutions!
  442.  
  443. Ok. Let's stop the gloom and doom. Let's take an optimistic pro-active
  444. view!  What to do about the problems of POSIX?  Let's put it on a diet.
  445.  
  446. Remove the continued requirement on balloting the test methods as
  447. standards.  The Steering Committee of Conformance testing would no
  448. longer have a function. It's members could go do real work in the
  449. POSIX.3 update effort, adding to a useful document which provides a
  450. tool for testing the specifications developed in working groups.
  451.  
  452. These working groups would immediately cease worrying about developing
  453. complete test methods documents. Those that cared, would when
  454. occasionally confronted with ugly passages in their drafts have a
  455. useful tool (POSIX.3) to use to try asking the question, ``how would I
  456. test this?''
  457.  
  458. Ballot groups could concentrate on the real specification in front of
  459. them. Repeat again: Bad test methods standards will be dangerous in
  460. the marketplace.
  461.  
  462. Individual technical members in working groups could stop worrying
  463. about completely re-specifying their document.  Possibly some that
  464. cared, with the newly found time, might actually write some real
  465. honest-to-god test cases. These would surface, instead of everyone
  466. waiting to see which way the testing wind was going to blow by large
  467. governmental agencies here and abroad. These test cases might even be
  468. used, therefore useful.
  469.  
  470. Should these large governmental testing concerns wish to compare the
  471. merits of test suites, they could require that they are documented,
  472. and record results according to POSIX.3. Render unto the standards
  473. community that which is the standards community's, and render unto the
  474. marketplace that which is the marketplace's.
  475.  
  476. Who can act on this recommendation?  The IEEE POSIX Sponsor Executive
  477. Committee can. They are made up of the working group chairs, the
  478. steering committee chairs, and institutional representatives. There is
  479. a list of these at the end of the article, with email addresses. Send
  480. them e- mail. It really only takes a minute. It will save you a lot of
  481. future grief to take the minute to ask questions NOW!
  482.  
  483. There is also a list of some important heads of delegation within the
  484. ISO POSIX WG15. WG15 is considering forwarding IEEE test methods
  485. documents as standards at the international level. Then we can all
  486. live with any mistakes in the U.S. government procurement policies!
  487. E-mail soon!  E-mail often!
  488.  
  489. Let's continue the POSIX diet. Programming Language Independent
  490. Specifications should be stopped for the time being. The IEEE has put
  491. forward an incredible good faith attempt.  The experiment should be
  492. considered a success!  We have demonstrated that we don't yet know
  493. enough about specifying API standards in this abstract way. We should
  494. cease to hold up the working process.
  495.  
  496. Once the problem is better understood, and our methods of describing
  497. things in an LIS improve, we can begin exporing the possibilites.
  498. Notice that I didn't say retrofit or recast. I said explore the
  499. possibilities. Until we actually add a few of the large amendments to
  500. the base standard, changing its format midstream just opens things up
  501. for abuse and error.  Let's do it a few times in languages that many
  502. of us understand, ie. C, Fortran, Ada, before tackling the problem
  503. with little understood methods, which have been untried at this scale.
  504.  
  505. What would happen? Working groups would spend less time trying to
  506. re-cast their work (again!) into LIS. They would spend more time on
  507. the real specification, making it usable ``for application developers
  508. and systems implementors.''
  509.  
  510. When the existing working groups want to bind something in more than
  511. one language, they arrange to attend one anothers' meetings, and they
  512. work together. This sometimes takes the form of the complex strained
  513. negotiations that are the consensus process. This process is already
  514. in place in POSIX and has been for some time. It works.  The LIS has
  515. not been required in producing the usable standards documents to date.
  516.  
  517. Who can act on this recommendation?  Once again, the IEEE POSIX
  518. Sponsor Executive Committee can. This one is harder, however, as ISO
  519. WG15 is also involved.
  520.  
  521. First, the SEC has to be willing to say ``no''. This is not a surly
  522. uncooperative ``no''. A huge work effort has gone into the LIS
  523. experiment. There is real experience in the IEEE POSIX projects with
  524. this. The SEC can say ``no'' with confidence based on experience.  ISO
  525. cannot claim the same experience. (If they could, they would have been
  526. helping us a long time ago.)
  527.  
  528. Second, ISO WG15 has to be willing to say ``no''. Remember that there
  529. is a sizable overlap in the small membership of WG15, and members of
  530. the SEC. The IEEE POSIX working groups have many international members
  531. who show up in the Canadian, UK, American, and German delegations.
  532. Education is certainly not the problem here, however, communication
  533. might be.
  534.  
  535. Other special working groups within ISO may be concerned with this
  536. approach, but again the experience lies within the IEEE POSIX working
  537. groups, which overlap with ISO WG15.  Other ISO concerns should be
  538. acknowledged and put to rest.  Once again I say: E-mail soon! E-mail
  539. often!
  540.  
  541. Ultimately, in a worst case scenario some level within ISO could
  542. refuse to accept IEEE POSIX drafts for ISO ballotting.  I believe even
  543. this case should not be of concern, based on the following examples:
  544.  
  545.    - ISO WG15 has not accepted the perfectly useful IEEE POSIX.5 for
  546.      international standardization, since it did not fit the ISO
  547.      requirements.  ISO WG9 (ISO Ada Working Group) has been very
  548.      concerned by this action and is attempting to fast track the IEEE
  549.      POSIX document.
  550.  
  551.    - A representative from AFNOR (France's National standards
  552.      organization) voiced strong support for the IEEE POSIX groups to
  553.      continue to bring forward the standards as LIS at the last ISO
  554.      WG15 meeting.  He then immediately expressed grave concerns that
  555.      POSIX.4 be brought forward as quickly as possible in its current
  556.      C-based form to the Draft International Standard (DIS) state. You
  557.      see the French government can procure against a DIS.
  558.  
  559. Ultimately, if the IEEE POSIX working groups do their job right and
  560. produce useful and usable standards, the market will demand their use,
  561. even if they have to be fast-tracked into the back door to make them
  562. international standards for the international market place. Twisting
  563. the standardization process away from defining detailed specifications
  564. towards suiting procurement processes from organizations that are too
  565. big to change is wrong!
  566.  
  567. POSIX has market momentum.  It will effect the way you do things. The
  568. working groups have produced useful standards, but that is now in
  569. jeopardy.  You can effect the process. If you can't get directly
  570. involved, e-mail the appropriate people below and ask questions!
  571. Explain your concerns!  Otherwise, you'll have to live with their
  572. decisions.
  573.  
  574. Who Ya Gonna Call?
  575.  
  576.              Position          Name                    E-mail
  577.  
  578.                            IEEE Concerns
  579.  
  580. Chair SEC                   Jim Isaak           isaak@decvax.dec.com
  581. Vice Chair Interpretations  Andrew Twigger      att@root.co.uk
  582. Vice Chair Balloting        Lorraine Kevra      l.kevra@att.com
  583. Chair Steering Comm on
  584.              Conf Testing   Roger Martin        rmartin@swe.ncsl.nist.gov
  585. Chair Project Management 
  586.                Committee    Shane McCarron      s.mccarron@ui.org
  587. Chair POSIX.1               Paul Rabin          rabin@osf.org
  588. Chair POSIX.2               Hal Jespersen       hlj@posix.com
  589. Chair POSIX.3               Lowell Johnson      3lgj@rsvl.unisys.com
  590. Chair POSIX.4               Bill Corwin         wmc@littlei.intel.com
  591. Chair POSIX.5               Jim Lonjers         lonjers@prc.unisys.com
  592. Chair POSIX.6               Ron Elliot          elliott%aixsm@uunet.uu.net
  593. Chair POSIX.7               Martin Kirk         m.kirk@xopen.co.uk
  594. Chair POSIX.8               Jason Zions         jason@cnd.hp.com
  595. Chair POSIX.9               Michael Hannah      mjhanna@sandia.gov
  596. Chair POSIX.12              Bob Durst           durst@mitre.org
  597. USENIX Institutional Rep    Jeff Haemer         jsh@canary.com
  598. EurOpen IR                  Stephen Walli       stephe@mks.com
  599. Uniforum IR                 Ralph Barker        ralph@uniforum.org
  600. DECUS IR                    Loren Buhle         buhle@xrt.upenn.edu
  601. OSF IR                      John Morris         jsm@osf.org
  602. Unix International IR       Shane McCarron      s.mccarron@ui.org
  603. X/Open IR                   Derek Kaufman       d.kaufman@xopen.co.uk
  604.  
  605.                          WG15 Concerns
  606.  
  607. Convenor WG15               Jim Isaak           isaak@decvax.dec.com
  608. US Head of Delegation       John Hill           hill@prc.unisys.com
  609. Canadian HoD                Arnie Powell        arniep@canvm2.vnet.ibm.com
  610. UK HoD                      David Cannon        cannon@exeter.ac.uk
  611. German HoD                  Ron Elliot          elliott%aixsm@uunet.uu.net
  612. Dutch HoD                   Herman Wegenaar     (phone: +31 50 637052)
  613. Japanese HoD                Yasushi Nakahara    ynk@ome.toshiba.co.jp
  614. French HoD                  Jean-Michel Cornu   jean-michel.cornu@afuu.fr
  615. Danish HoD                  Keld Simenson       keld@dkuug.dk
  616.  
  617.  
  618. Volume-Number: Volume 29, Number 86
  619.