The purpose of this workshop was to discuss an emerging trend in software design in which the designer of a reusable module exposes not only its functionality, but also crucial aspects of its implementation as well. Properly done, this allows clients to inspect and adjust the implementation to better suit their needs.
Because this kind of design seems to represent such a fundamental shift from the canons of established practice, the organizers felt that it was important to discuss the issues with representatives of a broad range of the computing field. Attendees were primarily researchers, from both industry and the academy, and ranged from graduate students to senior researchers. (Complete list of Attendees.)
The planned topics for discussion included:
The workshop discussion covered these as well as other topics. There was a general agreement that the origins of this trend are long-standing, but that it is growing much faster now. There was also agreement that we must, as a community, focus more explicit attention on the trend, so that we can avoid needless duplication of effort and failure to standardize on terms, techniques and approaches.
The purpose of these web pages is to help foster public discussion of these issues. We have included the written material prepared for and by workshop attendees, and we encourage others who wish to contribute to these pages to contact us. (See below.) We also plan other mechanisms for fostering wider discussion, including publication and more workshops.
The workshop was run by first preparing a discussion starting document, called ``The Foil'' which presents the basic issues under discussion. The foil was circulated to attendees in advance of the workshop, and they were asked to write short responses to the argument in the foil.
These pages include both the foil and the responses, hyperlinked together. These pages are intended to be a living document. We welcome anyone who wants to write an additional response to contact us (gregor@parc.xerox.com) and that can be linked in as well.
It is important to note that the foil included here has been only slightly revised to reflect the discussion at the workshop itself. Editing of the foil was limited because our conclusion was that in the short term, fostering discussion was the most important thing, and this format seemed best for doing that. Merging everything into a unified document is an ongoing project.
In addition, there are hyperlinks from specific parts of the foil into the responses and vice-versa.
If you find any mistakes in these pages, including typos, missing links, missing references and the like, please let us know.
Back to the Open Implementation Home Page