Resources for Software Engineering

Computers bring mathematical logic out into the big world. They got started in roughly the 1930's with Gödel, Turing, and Church making formal logic more precise by providing a mechanical model. Now formal logic has become a major global industry, contacting almost every facet of life, as the mechanical model has been incarnated as semiconductor circuitry, miniaturized and replicated through photolithography. The difficulties of creating a description of the world become more difficult to sweep under the rug when the mechanical system embodies such formal precision. The glitches in the description show up as computer systems that work poorly in practise.

Nathaniel S. Borenstein

Software Development and Reality Construction

Proceedings of a conference held in 1988, published by Springer Verlag in 1992, edited by Christiane Floyd, Heinz Züllighoven, Reinhard Budde, and Reinhard Keil-Slawik. Contents:

Joseph Goguen

From "The Denial of Error," in Software Development and Reality Construction , pp 193-202:
This paper claims that the modern world has developed a kind of arrogance which is damaging the very projects that it seeks to sustain: in proposing methodoligies to guarantee the absence of error, we deny the incredible richness of our own experience, in which confusion and error are often the seeds of creation; in this way, we limit our own creativity. [p] This arrogance is not an isolated phenomenon that is found only in computer science. Indeed, I claim that it arises in a natural way from our preoccupation with and immersion in science and technology, which are strongly oriented toward control. ... A software development project is not primarily a formal mathematical entity. Perhaps it is best seen as a dialogical or linguistic process, an evolving organization of certain informational structures, continually recreating itself by building, modifying, and reusing these structures. ... Important avenues for further progress in Software Engineering seem to be blocked by our inadequate understanding of the processes involved in developing software systems. ... Although formal methods can be very powerful when they are properly applied, they also have definite limitations, and formal, rationalistic understanding is only one of many approaches to understanding. Intuition and spiritual understanding are alternatives that seem more important in certain ways.

William Kent

Jaron Lanier

Research Methods in Information Systems

Proceedings of colloquium held in 1984 titled, "Information Systems Research: a doubtful science?", edited by Enid Mumford, Rudi Hirschheim, Guy Fitzgerald, and Trevor Wood-Harper, published by Elsevier in 1985. Contents:

Brian Cantwell Smith

Gerald M. Weinberg

Practical insights into managing systems engineering.