Abstract
This paper presents reasoning implying that the outcome of the execution of an E-type program or E-type software system (software for short) of whatever class are not absolutely predictable. It is intrinsically uncertain. Some of the sources of that uncertainty are identified and it is argued that the phenomenon qualifies as a Principle of Software Uncertainty. The latter represents an example of an assertion in a Theory of Software Evolution which is ripe for development based on empirical generalisations identified in previous research, most recently in the FEAST projects. The paper briefly discusses some practical implications of uncertainty, and the other concepts presented, on evolution technology and software processes. Though much of what is presented here has previously been discussed, its presentation as a cohesive whole provides a new perspective.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Banach R and Poppleton MR, Retrenchment, Refinement and Simulation, in J.P. Bowen, S.E. Dunne, A. Galloway, King S. (editors) ZB2000: Formal Specification and Development in Z and B, Springer, 2000, 525 pp
Belady LA and Lehman MM, An Introduction to Program Growth Dynamics, in W. Freiburger, (editor) Statistical Computer Performance Evaluation, Academic Press, New York, pp. 503–511
Brooks FP, No Silver Bullet-Essence and Accidents of Software Engineering, Information Processing 86, Proc. IFIP Congress 1986, Dublin, Sept. 1–5, Elsevier Science Publishers (BV), North Holland, pp. 1069–1076
CERN, The Earth breathes on LEP and LHC, CERN Bulletin 09/98; 23 February 1998, http://bulletin.cern.ch/9809/art1/Text_E.html<as of Nov. 2001>
Coleman JS, Introduction to Mathematical Sociology, The Free Press Of Glencoe, Collier-Macmillan Limited, London, 1964, 554 pps
Dijkstra EW, The Humble Programmer, ACM Turing Award Lecture, CACM, v. 15, n.10, Oct. 1972, pp. 859–866
Finkelstein A, Gabbay D, Hunter A, Kramer J and Nuseibeh B, Inconsistency Handling in Multi-Perspective Specifications, IEEE Trans. on Softw. Eng., v. 20, n. 8, Aug. 1994, pp. 569–578
Hoare CAR, An Axiomatic Basis for Computer Programming, CACM, v. 12, n.10, Oct., pp. 576–583
id., Proof of a Program FIND, CACM, v. 14, n. 1, Jan.
Van Lamsweerde A, Formal Specification: a Roadmap, in A. Finkelstein (ed.), The Future of Software Engineering, 22nd ICSE, Limerick, Ireland, 2000, ACM Order N. 592000-1, pp. 149–159
Lehman MM, Programs, Cities, Students—Limits to Growth, Imp. Col. Inaug. Lect. Ser., v.9, 1970–1974, pp. 211–229; also in Gries, 1978
id, Human Thought and Action as an Ingredient of System Behaviour, in The Encyclopædia of Ignorance, R Duncan and M Weston-Smith, editors, Pergamon Press, London, 1977, pp. 347–354
id, Laws of Program Evolution-Rules and Tools for Programming Management, Proc. Infotech State of the Art Conference, Why Software Projects Fail, April 9–11, 1978, pp. 1V1–lV25
id, Program Life Cycles and Laws of Software Evolution, Proc. lEEE Spec. Iss. on Softw. Eng., Sept. 1980, pp. 1060–1076
id, A Further Model of Coherent Programming Process, Proc. Softw. Proc. Worksh., Egham, Surrey, 6–8 Feb. 1984, IEEE Cat. no. 84 CH 2044-6, pp. 27–35
Lehman MM and Belady LA, Program Evolution—Processes of Software Change, Academic Press, London, 1985
Lehman MM, Uncertainty in Computer Application and its Control Through the Engineering of Software, J. of Software Maintenance: Research and Practice, v. 1, n. 1, Sept. 1989, pp. 3–27
Lehman MM, Software Engineering as the Control of Uncertainty in Computer Application, SEL Software Engineering Workshop, Goddard Space Centre, MD, 29 Nov. 1989, publ. 1990
id, Uncertainty in Computer Application, CACM, v. 33, n. 5, May 1990, pp. 584–586
id, Uncertainty in Computer Applications is Certain—Software Engineering as a Control, Proc. CompEuro 90, Int. Conf. on Computer Systems and Software Engineering, Tel Aviv, 7–9 May, 1990, Publ. by IEEE Comp. Soc. Press, n. 2041, pp 468–474
id, Feedback in the Software Evolution Process, Keynote Address, CSR Eleventh Annual Workshop on Software Evolution: Models and Metrics, Dublin, 7–9 Sept. 1994, Workshop Proc., Information and Software Technology, sp. is. on Software Maintenance, v. 38, n. 11, 1996, Elsevier, 1996, pp. 681–686
Lehman MM and Ramil JF, Software System Maintenance and Evolution in an Era of Reuse, COTS and Component Based Systems, Joint Keynote Lecture, International Conference on Software Maintenance and Int. Workshop on Empirical Studies of Software Maintenance WESS 99, Oxford, 3 Sept. 1999
id, Towards a Theory of Software Evolution—And Its Practical Impact, invited talk, Proc. ISPSE 2000, Intl. Symposium on the Principles of Software Evolution, Kanazawa, Japan, Nov 1–2, 2000, IEEE CS Press, pp. 2–11
Lehman MM, SETh-Towards a Theory of Software Evolution, EPSRC Proposal, Case for Support Part 2, Dept. of Comp. ICSTM, 5 Jul. 2001
Lehman MM and Ramil JF, Rules and Tools of Software Evolution Planning, Management and Control, Annals of Software Engineering, Spec. Iss. on Softw. Management, v. 11., issue 1, 2001, pps. 15–44
Nuseibeh B, Kramer J and Finkelstein A, A Framework for Expressing the Relationships Between Multiple Views in Requirements Specification, Trans. on Software Engineering, vol. 20, n. 10, Oct. 1994, pp 760–773
Nuseibeh B, Arianne 5 Who Dunnit?, IEEE Software, May/June 1997, pp. 15–16
Pfleeger S, Software Engineering—The Production of Quality Software, Macmillan Pub. Co., 1987
Scarrott G, Copies of various relevant papers, published and unpublished and including the one reference that can be obtained from one of the authors (mml) of this paper
Simon HA, The Sciences of the Artificial, M.I.T. Press, Cambridge, MA. 1969, 2nd ed, 1981
Turski WM, Specification as a Theory with Models in the Computer World and in the Real World, System Design, Infotech State of the Art Rep. (P Henderson ed), se. 9, n. 6, 1981, pp 363–377
Turski WM and Maibaum TSE, The Specification of Computer Programs, Addison-Wesley, Wokingham, 1987
Turski WM, An Essay on Software Engineering at the Turn of the Century, in T. Maibaum (editor), Fundamental Approaches to Software Engineering, Proc. Third Int. Conf. FASE 2000. March/April 2000. LNCS 1783, Springer-Verlag, Berlin, pp. 1–20
Wirth N, Program Development by Stepwise Refinement, CACM, v.14, n.4, Apr. 1971, pp. 221–227
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Lehman, M.M., Ramil, J.F. (2002). Software Uncertainty. In: Bustard, D., Liu, W., Sterritt, R. (eds) Soft-Ware 2002: Computing in an Imperfect World. Soft-Ware 2002. Lecture Notes in Computer Science, vol 2311. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-46019-5_14
Download citation
DOI: https://doi.org/10.1007/3-540-46019-5_14
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-43481-8
Online ISBN: 978-3-540-46019-0
eBook Packages: Springer Book Archive