MSE Bibliography

Managing the Software Enterprise
Software Engineering and Information Systems in Context

Bibliography

Introduction

If you are reading this, we assume that you will have elected to use our book, and will have read both book and the Instructors Manual. Both of these give you references to the literature:

In the End Notes for each chapterwe cite the particular sources we used in writing thebook, and where you might turn to for further information about the actual topic covered at that point.

In the Instructors Manual wediscuss other books you might use, particularly as complementary reading to give a particular slant to a course you are teaching

However the works cited in the book and Instructors Manual are by no means the only places we drew our knowledge and understanding from. In this Bibliography we explore some of these other sources, to guide you further into the area.

Further reading by chapter

We decided it made most sense to cover the bibliography chapter by chapter, to contextualise our choices. Within each chapter we group together the books and papers by topic within the chapter, and write a short note about the collected readings listed. Mostly we select books, but where no books, or insufficient books, are available, we give papers or weblinks. The web is a very powerful resource, and should be searched for any area that we have not covered and that you want more material on.

If you have your own favourite readings that are not listed below, then please send them to us explaining how they fit in. If we agree, we will happily add them to the next issue of this Bibliography.

Chapter 1: Software within the Information Society

History of computing

Caminer, David, John Aris, Peter Hermon and Frank Land (1998), L.E.O.: Incredible Story of the World's First Business Computer, McGraw-Hill Education; January 1998

Campbell-Kelly, Martin (2003), From Airline Reservations to Sonic the Hedgehog A History of the Software Industry. MIT Press

Campbell-Kelly, Martin, William Aspray (2004) Computer: A History of theInformation Machine The Sloan Technology Series

Ceruzzi, Paul E. (2003), A History of Modern Computing, 2nd Edition, MIT Press, Cambridge, MA.

Gates, Bill (1995/6) The Road Ahead. Penguin

Lavington, Simon H. (1980)Early British Computers. The story of vintage computers and the people who built them. Out of print, now available from (last accessed on 3rd February 2007).

Knowing something about the history of computing is valuable, since life with computers was not always the way it now is. We are even seeing early ideas like bureaux reappearing as software-as-a-service, and time-sharing machines reappearing as thin clients. Martin Campbell-Kelly’s books are very readable, with his books covering the period from its earliest origins through to the present day. His book with William Aspray does have a strong US focus, so reading something like Lavington’s book, or the book on the LEO by Caminer et al would balance this. Also read Ceruzzi’s book, though this has a distinct US bias. We (the authors) were there too.

For more recent history, from PCs onwards, read more widely, like Campbell-Kelly’s later book, or even Bill Gates’ view of that history. Really we are still in the PC era, so readers and students and instructors you are living it, but it may now be changing.

Software Failure

Flowers, Stephen (1996), Software failure: management failure, Wiley.

Gibbs, W. Wayt (1994) ‘Software's Chronic Crisis’ Scientific American; September 1994; P 86

Leveson, N. and Turner, C. (1993) ‘An investigation of the Therac-25 accidents’, IEEE Computer, July, pp. 18–41.

Neumann, Peter (1995), Computer Related Risks, Addison-Wesley.

Wiener, Lauren Ruth (1993) Digital Woes: Why We Should Not Depend on SoftwarePerseus Books Group

Nearly everybody with a few years experience in the software industry will have been involved in a system failure of some kind, but hopefully not as catastrophic as some of those reported in the literature. As the saying goes, if we do not learn from our failures we are doomed to repeat them. Peter Neumann did the software industry a great service when he began collecting stories of failure in is Risks column in the ACM’s Software Engineering Notes (SENs). If you can, get hold of back copies of SEN, though Peter Neumann has done us the further service of collecting together the most significant of these into his book of 1995.

Lauren Wiener’s book was one of the first popularising books to be published, but it was Wayt Gibbs’ article in Scientific American that really got people thinking, and worrying. Read Gibbs’ article if you can, search for iton the web, you are bound to find it (we found it at though that may not work for you).

However properly documented accounts of failure are difficult to produce, since it is important that the accounts can be authenticated and the truth behind the disaster unravelled. Otherwise you could face litigation. Nancy Leveson’s and Charles Turner’s measured account of the Therac disaster was only possible because the facts came out in court – this is a paper that you should encourage everybody to read. Stephen Flower’s book of a range of disasters only came out after very careful scrutiny by lawyers and rephrasing so that he and the publishers could be confident that they would not be sued.

Macro-economical return-on-investment

Castells, Manuel (1996) The rise of the Network Society. Oxford: Blackwell

Landauer, Thomas K. (1995) The Trouble with Computers. Usefulness, Usability, and Productivity. MIT Press ISBN 0-262-12186-7

Strassman, Paul A (1985) Information Payoff: The Transformation of Work in the Electronic Age. New York: Free Press

For years we had been reading articles in the trade press wondering whether all the money spent on computers had really been worth it. Strassman’s book pulled together much of the research evidence, by came and went largely unnoticed, until Landauer’s book gained popular coverage, at least in the UK.Hard on the heels of Landauer came Castells’ grand oeuvre, also raising the same doubts, also inspired by Strassman among many others. While Landauer claimed computers could be made to give a return through a proper regard for their usability, Castells seemed almost not to care – for him as an economist it was the transformative power of the computer that was exciting, moving the world to a globalised and networked society.

Rationality in Science and Computing

ACARD Software: a Vital Key to UK Competitiveness. HMSO, London, 1986.

Fetzer, J.H. (1988) ‘Program verification: the very idea’. Communications of the ACM. 31, 9, 1048-1063.

Hoare, C.A.R.(1984) ‘Programming: Sorcery or Science?’ IEEE Software. April, 5-16

Kuhn, Thomas S. (1962, 1970, 1996) The Structure of Scientific Revolutions. University of Chicago Press, third edition.

Latour, B. and Woolgar, S. (1986) Laboratory Life: the construction of scientific facts, 2nd edition, Princeton University Press, Princeton

Smith, William Newton-(1981) The Rationality of Science,Routledge, Kegan & Paul

The received view of science is that science progresses systematically through making predictions from current theory, then making experiments which either confirm or refute the predictions. Theory is then adjusted, new predictions are made, and so science progresses. It is this received view that permeates much of “computer science”, as epitomised in much writing on formal methods, so strongly represented in the UK. Tony Hoare is one among many who have advocated this approach, and the theories he has advanced are indeed very attractive, even beautiful. Look at the books suggested for Chapter 8 on Formal Methods, and read their prefaces and introductory chapters to get a glimpse of their underlying beliefs about science. This view of software as mathematics was even proposed as policy to the UK government ion the ACARD report – you may have difficulty getting hold of this, but it is well worth a look at if you.

However this simple claimed rationality is not how science actually works, and William Newton-Smith books would disabuse them. Of particular importance has been the book by Thomas Kuhn who showed that science progresses in leaps, progressing in leaps, in ‘paradigm shifts’, where one body of theory shared by the scientific community, a ‘paradigm’, is changed to another new body of theoryor paradigm that is agreed to be more appropriate. These shifts, while supported by rational scientific argument and founded on empirical findings, are essentially social processes, scientists as people need to reach agreement.

Thus science has also been studied as a sociological process, where relatively early within the sociology of science in 1986 Latour and Woolgar showed that even the small steps within science are social processes, with scientist constructing science through inter-personal agreement and disagreement. This view confronted computer science when the paper by Fetzer was published in 1988, a paper which received much negative comment and debate – the debates following this paper also make important reading.

Postmodernism and the changing world

Ashcroft, W., Griffiths, G. and Tiffin, H. (eds.) (1995)) The Post-colonial Studies Reader, Routledge, London.

Coyne, Richard (1995) Designing Information Technology in the Postmodern Age. From Method to Metaphor. The MIT Press

Dutton , William H. (1996) Information and Communication Technologies. Visions and Realities. Oxford University Press.

Giddens, A. (1990) The Consequences of Modernity. Polity Press, Cambridge.

Hall, S., Held, D and McGrew A. (eds.) (1992) Modernity and its Futures, Polity Press and the Open University, Cambridge and Milton Keynes.

Harvey, David (1989) The Condition of Postmodernity, Basil Blackwell, Cambridge Massechusetts and Oxford, 1989.

Jencks, Charles. The Post-Modern Reader. Academy Editions, London, 1992.

Jules-Rosette, Bennetta (1990) Terminal Signs. Computers and Social Change in Africa, Mouton de Gruyter, Berlin and New York.

Lyotard, J.-F. The Postmodern Condition: a report on knowledge. University of Minneapolis Press, Minneapolis, 1984.

Priore, Michael J. and Charles F. Sabel (1984) The Second Industrial Divide, Basic Books Inc (Harper Collins).

Quintas, Paul (editor) (1993) Social Dimensions of Systems Engineering. People, Processes, Policies and Software Development. Ellis Horwood

Toffler, Alvin (1984) Future Shock, Bantam Doubleday Dell Publishing Group. ISBN: 0553277375

Winograd, Terry and Ivan Flores (1986) Understanding Computers and Cognition: A New Foundation for Design. Addison-Wesley.

What was happening in computing, and in science, in some way simply reflected larger movements within philosophy and society.That this was the case was made apparent to us in a side comment in a book about software development in Africa, where Benetta Jules-Rosette describes a chaotic software development project in the Ivory Coast which we would view as normal, but then comments “My research reveals that postmodernity has arrived in Africa.”(p12.). We don’t recommend you read this book, unless you want an anthropological account of software development in developing countries. However this comment did get us thinking, and reading.

We would recommend that you dip into some writing about postmodernism, such as in the readers by Ashcroft et al, Hall et al or Jencks. These collections also include some countervalent voices. While we might view postmodernism as a paradigm shift, not everybody needs to shift. You might even want to dip into some original writers, like Lyotard, or Giddens or Harvey, or many many others; many make very difficult reading.

This postmodern shift is most visible to us in the way fashions for buildings have changed. as can be seen in many cities, and have been collected together in Jenck’s books on architecture (he is an architectural critic). But this shift is also seen globalisation – an early book noting this was by Priore and Sabel, and the coming of the Information Society reported early on by Alvin Toffler as his ‘third wave’.

This postmodern shift is also seen in computing, turning to philosophy for ideas about how to respond to the internal problems of computing, and its challenges from outside. Winograd and Flores turned to Heidegger in order to understand the relationship between people and computers, while Richard Coyne takes a more general view of computing, and draws upon the insights of many philosophers.

Social scientists have also became interested in computers and how they related to society, as seen for example in the collections by Paul Quintas and by William Dutton.

Part I CONTEXT: How software fits in

Chapter 2: The organisational and business context

Modelling and Diagramming

Demarco, Tom (1979) Concise Notes on Software Engineering Yourdon

Costagliola G., Deufemia V., Polese G (2004) ‘A framework for modeling and implementing visual notations with applications to software engineering’. ACM Transactions on Software Engineering and Methodology 13(4): 431-487, 2004.

Modelling of software systems, and business systems, has long been an important step towards understanding and then controlling, these systems. However very few books just focus on diagrams and their meaning, but larger texts that propound comprehensive methods, such as those covered in the bibliographic notes for chapters 7 and 8, take diagrams for granted. One noteworthy and exception to this is the excellent short monograph by Tom DeMarco, which describes his notations for data flow diagrams, the style we have adopted for the book. This way of diagramming had become so taken for granted by us that we neglected to cite this book as our source!

While diagrams are now common in books, it has not always been the case, and in the later nineteenth century when science and engineering where expanding during the industrial revolution, diagrams were not common. For some people diagrams are really not ‘natural’, so for example Cliff Jones in his books on formal methods (see bibliography for Chapter 8) has somebody else produce the diagrams to help visualisers understand the concepts being explained.

Some systematic exploration of diagrams and what they mean has been made, for example the paper by Costagliola et al, and there have even been attempts to formalise diagramming conventions like data flow diagrams. But formalising diagrams misses the point of diagrams, they give some useful flexibility of interpretation in the spirit of “if you see what I mean”.

In the bibliography for Chapter 7 you are encouraged to search out proprietary methods. Look at their diagrams. How much do they differ in underlying meaning, and how much are the differences just superficial, intended to make the notations appear different.

Many diagramming systems have also been made the subject of industrial or international standardisation, such as the UML diagramming notation controlled by the OMG. We haven’t listed any, but it would be worthwhile looking at the catalogue of your national standards body to see what they advocate.

Work processes and business processes

Hammer, Michael and James Champney (1995) Reengineering the Corporation: A Manifesto for Business Revolution, revised edition, London: Nicholas Brealey.

Sinur, Jim (2004) Drivers for BPM: 11 Money-Relevant Reasons to Start, Gartner report, 25 February 2004Note Number:COM-21-9991.

Taylor , Frederick Winslow (1911) The Principles of Scientific Management. from

Workflow Institute (2006) website is

Workflow Management Coalition, (2006) website is

The idea of decomposing some complex and extended process into smaller constituent steps much go back a long way. In 1911 Fred Taylor exploited this in his ‘scientific management’, and going back to the original would be well worth while, particularly since Taylor’s ideas have been picked up by others and distorted, with him being vilified and blamed for the mechanistic form of many software engineering methodologies.

The modern manifestation has been in Business Process Modelling, and the associated Business Process Management, such as covered by Sinur’s Gartner report. This in turn leads to the ideas of workflow and its management, described in those two websites. It also leads to business process reengineering, very fashionable in the business community during the 1990s – the classic here is Michael Hammer’s and James Champney’s book of 1995.

Micro-economical return-on-Investment

Reifer, Donald (2002) Making the Software Business Case. Improvement by the Numbers. Addison-Wesley.

Schwalbe, Kathy (2004) Information Technology Project Management Third Edition. Thomson Course Technology.

In spite of the negative views at the macro-economical level covered in the books listed for Chapter 1, at the micro-economical level it would be normal to judge any investment in terms of the returns it will bring. This is equally true for investment in software and computer systems, an argument well made by Don Reifer who gives a whole range of methods and techniques that can be used. However, Reifer does not cover scorecards, but Kathy Schwalbe does, and much more besides. Both well worth a read.

Knowledge Management and Learning organisations.

Arango, G. Shoen, E. Pettengill, R. (1993) ‘Design as Evolution and Reuse. in Advances in Software Reuse’. Selected Papers from the Second International Workshop on Software Reusability. IEEE Computer Society Press. March 24-26, 1993, Lucca, Italy. pp. 9-18.