Ian Simmonds and David Ing
The goal of software engineering is to produce effective software systems efficiently. Software systems supporting businesses should effectively support people in doing their work, be it managerial or clerical, highly technical or highly social, exploratory or procedural. At the same time, the practices of software producing organizations should be designed to deliver effective systems on a reasonable schedule and at reasonable cost. Engineering practices determine the nature of resulting software systems, and are themselves typically determined by technology preferences.
This paper presents some findings of an ongoing interdisciplinary investigation into the nature of information systems and the organizations that use and produce them.
In regrounding both information systems and our earlier work on business specifications within a conceptual frame-work that combines elements of design ‘wisdom’ and social theory, our underlying assumptions evolve dramatically. We become preoccupied with ideas such as valued incompleteness, federated implementation, just-in-time adaptation by ‘users,’ and the distinction between technology and its application. At the same time, we lower our expectations in the hunt for reusable domain models, and lessen the distinction between business design and software design.
Key to this regrounding are a distinction between ‘context’ and ‘coordination,’ and Stewart Brand’s ‘shearing layers’ model of architectural change.
Ian Simmonds and David Ing, "Separating Context and Coordination: Lessons from design wisdom and social theory leading to adaptivity and adaptability through shearing layers", IBM Research Report RC21226, August 1998.
- [view/download article as PDF] (110 KB)