Nothing Special   »   [go: up one dir, main page]

skip to main content
10.5555/800253.807717acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
Article
Free access

Response to undesired events in software systems

Published: 13 October 1976 Publication History

Abstract

This paper discusses an approach to handling run-time errors in software systems. It is often assumed that in programs which can be proven correct, errors will not be a problem. This paper is predicted on the assumption that, even with correct programs, undesired events at run-time will continue to be a problem. Routines to respond to these undesired events (UEs) must be provided in reliable systems.
This paper describes a program organization which aims at satisfying the following criteria:
(1) UE response routines are written by each programmer in terms of the abstract machine which he uses for his normal case code. UEs are reported in those terms. He is never forced to use information about the implementation of other modules in the system.
(2) Programs can be written so that the code for UE detection, UE correction, and normal case, are lexically separate and can be modified independently.
(3) The system can evolve from an initial version that does little recovery to one which uses sophisticated recovery techniques without a change in the structure of the system.
(4) Even with unsophisticated recovery procedures, the task of locating the module containing a bug discovered at run-time does not require internal knowledge of many modules.
(5) Costs incurred because of the recovery techniques are low as no UE occurs.

References

[1]
Parnas, D.L., "A Technique for Software Modules Specification With Examples", CACM, May 1972.
[2]
Parnas, D.L., "On the Criteria for Decomposing Systems into Modules", Carnegie-Mellon University Technical Report, 1971, CACM vol.15,12 (Dec. 1972).
[3]
Dijkstra, E.W., "Notes on Structured Programming", T.H.E., Eindhoven, The Netherlands.
[4]
Parnas, D.L., "Information Distribution Aspects of Design Methodology", Proc. of IFIP Congress 71, 1971.
[5]
Wirth, N., "Programming by Stepwise Refinement", CACM vol.14,4 (April 1971).
[6]
Parnas, D.L., "Some Conclusions from an Experiment in Software Engineering Techniques", Carnegie-Mellon University Technical Report, Proc. FJCC 1972, AFIPS Press.
[7]
Jones, A., Private Communication
[8]
Parnas, D.L., "Some Hypotheses About the "Uses" Hierarchy for Operating Systems", Forschungsbericht BS I 76/1, Technische Hochschule Darmstadt (Germany), March 76.
[9]
Parnas, D.L., "On a Buzzword: Hierarchical Structure", Proc. of IFIP Congress 74, 1974, North-Holland Publ. Co.
[10]
Parnas, D.L., "On the Design and Development of Program Families", Forschungbericht BS I 75/2, Technische Hochschule Darmstadt (Germany), IEEE Transactions on Software Engineering, March 1976.
[11]
Randell, B., "System Structure for Software Fault Tolerance", Proc. of 1975 Int. Conf. on Reliable Software, Los Angeles CA, April 1975.
[12]
Kaiser, C., Krakowiak, S., "An Analysis of Some Rune-Time Errors in an Operating System", Colloques IRIA, Rocquencourt, April 23-25, 1974.

Cited By

View all
  • (2018)Do android developers neglect error handling? a maintenance-Centric study on the relationship between android abstractions and uncaught exceptionsJournal of Systems and Software10.1016/j.jss.2017.10.032136:C(1-18)Online publication date: 1-Feb-2018
  • (2016)An Exploratory Study of Exception Handling Behavior in Evolving Android and Java ApplicationsProceedings of the XXX Brazilian Symposium on Software Engineering10.1145/2973839.2973843(23-32)Online publication date: 19-Sep-2016
  • (2014)Trading robustness for maintainability: an empirical study of evolving c# programsProceedings of the 36th International Conference on Software Engineering10.1145/2568225.2568308(584-595)Online publication date: 31-May-2014
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '76: Proceedings of the 2nd international conference on Software engineering
October 1976
639 pages

Sponsors

Publisher

IEEE Computer Society Press

Washington, DC, United States

Publication History

Published: 13 October 1976

Check for updates

Author Tags

  1. “Uses”-hierarchy
  2. Error recovery
  3. Information hiding
  4. Reliable systems
  5. Run-time errors

Qualifiers

  • Article

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)76
  • Downloads (Last 6 weeks)9
Reflects downloads up to 02 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2018)Do android developers neglect error handling? a maintenance-Centric study on the relationship between android abstractions and uncaught exceptionsJournal of Systems and Software10.1016/j.jss.2017.10.032136:C(1-18)Online publication date: 1-Feb-2018
  • (2016)An Exploratory Study of Exception Handling Behavior in Evolving Android and Java ApplicationsProceedings of the XXX Brazilian Symposium on Software Engineering10.1145/2973839.2973843(23-32)Online publication date: 19-Sep-2016
  • (2014)Trading robustness for maintainability: an empirical study of evolving c# programsProceedings of the 36th International Conference on Software Engineering10.1145/2568225.2568308(584-595)Online publication date: 31-May-2014
  • (2010)From Requirements to ArchitectureProceedings of the 2010 conference on New Trends in Software Methodologies, Tools and Techniques: Proceedings of the 9th SoMeT_1010.5555/1860875.1860878(3-36)Online publication date: 6-Aug-2010
  • (2009)Architecting fault tolerance with exception handlingJournal of Computer Science and Technology10.1007/s11390-009-9219-224:2(212-237)Online publication date: 1-Mar-2009
  • (2008)An architecture for exception management in multiagent systemsInternational Journal of Agent-Oriented Software Engineering10.1504/IJAOSE.2008.0194202:3(267-289)Online publication date: 1-Jul-2008
  • (2008)Explicit exception handling variability in component-based product line architecturesProceedings of the 4th international workshop on Exception handling10.1145/1454268.1454275(47-54)Online publication date: 14-Nov-2008
  • (2008)EJFlowProceedings of the 7th international conference on Aspect-oriented software development10.1145/1353482.1353492(72-83)Online publication date: 31-Mar-2008
  • (2007)Architecture-centric fault tolerance with exception handlingProceedings of the Third Latin-American conference on Dependable Computing10.5555/2396065.2396075(75-94)Online publication date: 26-Sep-2007
  • (2007)Error handling as an aspectProceedings of the 2nd workshop on Best practices in applying aspect-oriented software development10.1145/1229485.1229486(1-es)Online publication date: 12-Mar-2007
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media