Related Projects

Computer scientists understand much about structuring computer systems. In DIRC, our interdisciplinary approach has enabled us to extend such research and to find ways to apply similar thinking to wider computer-based systems.

Dependable structures must limit the propagation of errors. In technical systems, we are familiar with internal checks and exception handling. In human systems we see layers of judiciary (courts, appeal courts and the Lords), processes such as financial audits etc but it appears that society all too often devises checks and boundaries only in response to failures. DIRC research is seeking ways to design and control detection/correction boundaries. This approach is essential when considering a complex computer-based system like a hospital.

Strongly related to this is DIRC's study of the role of “processes”. Computer programs are the ultimate process but many human actions are also governed by procedures – a pilot landing an aircraft follows a detailed check list. Where computers excel at slavishly following instructions, people are often able to see when a set procedure fails to anticipate a possible exception and take appropriate action. A successful computer-based system has to utilise the strengths of both computers and people.

We have made significant progress in research on determining the specifications of control systems. Once an initial specification is agreed, there are formal approaches to designing programs which satisfy the specification but in many computer-based systems it is extremely difficult to get the right initial specification. We have published a method where a description of a wide system is used to determine the specification of what might be the software control component.

All significant systems change; those involving humans (either as players or as external forces like legislators) undergo continuous evolution. It is a major challenge to design a system that can cope with reasonable evolution. DIRC’s researchers have investigated the role of generic systems which can be instantiated to particular applications as they clearly support evolution over some range.

These ideas and others are explained in the book Structure of Computer-based Systems and Dependability.


Time bands


Psychology and software development


Ian Hayes, Michael Jackson, and Cliff Jones. Determining the specification of a control system from that of its environment. In Keijiro Araki, Stefani Gnesi, and Dino Mandrioli, editors, FME 2003: Formal Methods, volume 2805 of Lecture Notes in Computer Science, pages 154-169. Springer Verlag, 2003.

Structure for Dependability: Computer-Based Systems from an Interdisciplinary Perspective", (editors) D. Besnard, C . Gacek and C. B. Jones, Springer, 2006, ISBN 1-84628-110-5

Felici, M. Observational models of requirements evolution., PhD thesis, Laboratory for Foundations of Computer Science, School of Informatics, The University of Edinburgh, 2004.

Pollock, N., Procter, R. and Williams, R. Fitting Standard Software Packages to Non-Standard Organisations, Journal of Technology Analysis and Strategic Management , Volume 15 , Issue 3 , pp. 317-332 , 2003

Devito Da Cunha, A., & Greathead, D. (2004). Code Review and Personality: is Performance Linked to MBTI Type? (Technical Report) (CS-TR: 837). Newcastle: School of Computing Science, University of Newcastle Upon Tyne.

Randell, B. Facing up to Faults, The Computer Journal , Volume 43 , Issue 2 , pp. 95-106 , 2000

Wright, P and McCarthy, J. Analysis of procedure following as concerned work. , In E. Hollnagel (Ed) Handbook of Cognitive Task Design. pp.679-700 . Mahwah, NJ: LEA, 2003.

Mackenzie, D. Long Term Capital Management and Sociology of Finance, In H. Kalthoff, R. Rottenburg, and H. Wagener, editors, Facts and Figures: Economic Representations and Practices, pp. 277–87. Metropolis, Marburg, 2000.

Page Maintainer: Credits      Project Members only Last Modified: 28 November, 2006