Abstract
Although the top-down development paradigm has successfully been applied to master the complexity of large systems, it has not yet been accepted as a useful paradigm for fault tolerant system design. This is mainly due to a problem that is sometimes referred to as the “lazy programmers” paradox. The “lazy programmer” paradox was already present and solved in top-down development methods for non-critical systems. However, the problem has re-appeared in an even more serious variant for critical systems. A few “toy” examples concerning exception handling in an Ada-like language are used to explain and illustrate the paradox. One possible solution to the problem is to use a specification language in which one can express that certain behaviours of a system are preferred over others. This paper proposes deontic logic as such a specification language. Therefore, a short and rather informal introduction to deontic logic is included. A non-trivial example is included to illustrate how deontic logic can be used to solve the “lazy programmer” paradox.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
American National Standards Institute, Inc.,The Programming Language Ada Reference Manual, ANSI/MIL-STD-1815A-1983, LNCS 155 (Springer, 1983).
T. Anderson and P.A. Lee,Fault Tolerance: Principles and Practice, 2nd revised ed. (Springer, 1990).
L. Åqvist, Good Samaritans, contrary-to-duty imperatives, and epistemic obligations, Noûs 2(1967)361–379.
L. Åqvist, Deontic logic, in:Handbook of Philosophical Logic, Vol. II, ed. D. Gabbay and F. Guenthner (Reidel, 1983) pp. 605–714.
F. Cristian, A rigorous approach to fault-tolerant programming, IEEE Trans. Software Eng. SE-11 (1985)23–31.
E.W. Dijkstra, The structure of the “THE”-multiprogramming system, Commun. ACM 11(1968)341–346.
J.A. van Eck, A system of temporally relative modal and deontic predicate logic and its philosophical applications, Logique et Analyse 100(1982)249–381.
D. Føllesdal and R. Hilpinen, Deontic logic: an introduction, in:Deontic Logic: Introductory and Systematic Readings, ed. R. Hilpinen (Reidel, 1971) pp, 1–35.
C.A.R. Hoare, An axiomatic base for computer programming, Commun. ACM 12(1969)576–580.
S. Khosla, System specification: a deontic approach, Ph.D. Thesis, Imperial College of Science and Technology, University of London (1988).
J.-J. Ch. Meyer, Using programming concepts in deontic reasoning, Report IR-161, Free University Amsterdam (1988).
W.-P. de Roever, Foundations of computer science: leaving the ivory tower, Bull. EATCS 44(1991)455–492.
H. Schepers, Terminology and paradigms for fault tolerance, Report CSN-9108, Eindhoven University of Technology (1991); to appear in:Formal Techniques in Real-Time and Fault Tolerant Systems, ed. J. Vytopil (Kluwer, 1993).
G.H. von Wright, A new system of deontic logic, in:Deontic Logic: Introductory and Systematic Readings, ed. R. Hilpinen (Reidel, 1971) pp. 105–120.
G.H. von Wright, Problems and prospects of deontic logic: a survey, in:Modern Logic — A Survey: Historical, Philosophical, and Mathematical Aspects of Modern Logic and Its Applications, ed. E. Agazzi (Reidel, 1981) pp. 399–423.
Author information
Authors and Affiliations
Additional information
Supported by NWO/SION Project 612-316-022: “Fault Tolerance: Paradigms, Models, Logics, Construction”.
Rights and permissions
About this article
Cite this article
Coenen, J. Top-down development of layered fault tolerant systems and its problems — a deontic perspective. Ann Math Artif Intell 9, 133–150 (1993). https://doi.org/10.1007/BF01531264
Issue Date:
DOI: https://doi.org/10.1007/BF01531264