SER Project Notes

Collaborative Design: Revisiting Reuse and the SER Model


relevant computational substrates:

  1. Webnet project
  2. analyze DODEs as a computational environment for reuse
  3. compare different object models: Smalltalk, C++, Java (e.g., how successful is reuse in these environments; claim: integrating code in Java is more efficient than in C++)

relevant theoretical dimensions and background information:

  1. our OOD article ---> see: G. Fischer et al., Beyond Object-Oriented Development: Where Current Object-Oriented Approaches Fall Short, Human-Computer Interaction, Vol. 10, No. 1, pp. 79-119
  2. LCM Model ---> see: G. Fischer, S.R. Henninger, D.F. Redmiles": "Cognitive Tools for Locating and Comprehending Software Objects for Reuse", Thirteenth International Conference on Software Engineering (Austin, TX), pp 318-328,1991 (for detailed work: Ph.D. thesis from Scott Henninger, David Redmiles, and Andreas Girgensohn)
  3. Behavior Exchange (Alex Repenning)
  4. evolutionary design of complex systems

question: what is the right level of reuse?

  1. component level is too low
  2. reuse whole packages (e.g., in Visual Basic)
  3. Eric Scharff: reuse in Java, GAMELON (??)
  4. experience factory (Basili)


SER Model

  1. ---> see: G. Fischer et al., Beyond Object-Oriented Development: Where Current Object-Oriented Approaches Fall Short, Human-Computer Interaction, Vol. 10, No. 1, pp. 79-119
  2. analysis of success models for SER model: Unix, Word
  3. an important requirement for a seed (Winograd, p 103): " less is more. A minimal system made it easy for a wide population of developers to experiment, to build their own versions, and to discover possibilities that the original designers never envisioned."
  4. driving forces behind the evolution:
  5. breakdowns, symmetry of ignorance, and the situatedness of real world situation (LoD/EUM Figure)
  6. Winograd, p 287: design theorists (such as Brown & Duguid 1992) describe how to design for learning and innovation, rather than striving to create idiot-proof systems that stiffle worker initiative
  7. open development - the SER model in the context of the WWW:
  8. from a large effort by a few to a small effort by a large number of people
  9. see Winograd, p 103: --> instead of relying on a managed development project, the community lets a set of standards emerge through a kind of bubbling up from the grass-roots; in general, a standard is adopted because one or more groups have used it to make something work - it is then modified and evolved through a decentralized process in which anyone can propose changes, invent extensions, and build new layers on top of it.
  10. Although the results are often chaotic and may later need to be reengineered for robustness (or firmness), the vitality of the unplanned development process leads to rapid innovation, and the pragmatic "Take what works and build on it" ethic of the community leads to rapid evolutionary selection.
Back to Top