A technique for software module specification with examples
Communications of the ACM
On the criteria to be used in decomposing systems into modules
Communications of the ACM
Program development by stepwise refinement
Communications of the ACM
System structure for software fault tolerance
Proceedings of the international conference on Reliable software
Data-Oriented Exception Handling
IEEE Transactions on Software Engineering
Active design reviews: principles and practices
ICSE '85 Proceedings of the 8th international conference on Software engineering
Reliability Issues in Computing System Design
ACM Computing Surveys (CSUR)
Framework for a taxonomy of fault-tolerance attributes in computer systems
ISCA '83 Proceedings of the 10th annual international symposium on Computer architecture
A procedure for designing abstract interfaces for device interface modules
ICSE '81 Proceedings of the 5th international conference on Software engineering
Module structure in an evolving family of real time systems
ICSE '79 Proceedings of the 4th international conference on Software engineering
An experiment in software engineering: The Architecture Research Facility as a case study
ICSE '79 Proceedings of the 4th international conference on Software engineering
Structure of an efficient duplex memory for processing fault-tolerant programs
ISCA '78 Proceedings of the 5th annual symposium on Computer architecture
Rationale for the design of the Ada programming language
ACM SIGPLAN Notices - Rationale for the deisgn of the Ada programming language
Rapid prototyping by means of abstract module specifications written as trace axioms
Proceedings of the workshop on Rapid prototyping
Context-aware exception handling in mobile agent systems: the MoCA case
Proceedings of the 2006 international workshop on Software engineering for large-scale multi-agent systems
Software engineering for large-scale multi-agent systems - SELMAS 2006: workshop report
ACM SIGSOFT Software Engineering Notes
Proceedings of the 2nd workshop on Best practices in applying aspect-oriented software development
Towards Aspect-Oriented Programming for Context-Aware Systems: A Comparative Study
SEPCASE '07 Proceedings of the 1st International Workshop on Software Engineering for Pervasive Computing Applications, Systems, and Environments
An architecture for exception management in multiagent systems
International Journal of Agent-Oriented Software Engineering
Detecting Intrusions in Agent System by Means of Exception Handling
HoloMAS '07 Proceedings of the 3rd international conference on Industrial Applications of Holonic and Multi-Agent Systems: Holonic and Multi-Agent Systems for Manufacturing
Explicit exception handling variability in component-based product line architectures
Proceedings of the 4th international workshop on Exception handling
Architecting fault tolerance with exception handling: verification and validation
Journal of Computer Science and Technology
A definition of exceptions in agent-oriented computing
ESAW'06 Proceedings of the 7th international conference on Engineering societies in the agents world VII
From Requirements to Architecture
Proceedings of the 2010 conference on New Trends in Software Methodologies, Tools and Techniques: Proceedings of the 9th SoMeT_10
Errors and exceptions – rights and obligations
Advanced Topics in Exception Handling Techniques
Architecture-centric fault tolerance with exception handling
LADC'07 Proceedings of the Third Latin-American conference on Dependable Computing
Hi-index | 0.01 |
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.