Towards a Theory of Forward Error Recovery
IEEE Transactions on Software Engineering - Annals of discrete mathematics, 24
Fault-tolerant computing: theory and techniques; Vol. 2
Relations as semantic constructs in an object-oriented language
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Smalltalk: best practice patterns
Smalltalk: best practice patterns
Object-oriented software construction (2nd ed.)
Object-oriented software construction (2nd ed.)
Pattern languages of program design 3
A Unified Framework for Coupling Measurement in Object-Oriented Systems
IEEE Transactions on Software Engineering
An initial assessment of aspect-oriented programming
Proceedings of the 21st international conference on Software engineering
Advances in exception handling techniques
Advances in exception handling techniques
A recovery mechanism for modular software
ICSE '79 Proceedings of the 4th international conference on Software engineering
Some Misconceptions About Lines of Code
METRICS '97 Proceedings of the 4th International Symposium on Software Metrics
Efficient JavaVM Just-in-Time Compilation
PACT '98 Proceedings of the 1998 International Conference on Parallel Architectures and Compilation Techniques
ICCL '98 Proceedings of the 1998 International Conference on Computer Languages
Memory Exclusion: Optimizing the Performance of CheckpointingSystems
Memory Exclusion: Optimizing the Performance of CheckpointingSystems
A transactional model for automatic exception handling
Computer Languages, Systems and Structures
Implementing automatic error recovery support for rich web clients
WISE'10 Proceedings of the 11th international conference on Web information systems engineering
A group Undo/Redo method in 3D collaborative modeling systems with performance evaluation
Journal of Network and Computer Applications
Hi-index | 0.00 |
One of the requirements of software robustness is controlling and managing runtime errors that might arise at certain points of application execution. In most object-oriented programming languages, this requirement is commonly implemented by means of exception handling. Although exception handling is a powerful tool to avoid system failure arising, there are still many situations where it is not sufficient to restore the system to a consistent state. Exception handling allows the developer to detect and locate errors, but it gives no information or tools to cover the error recovering task. Therefore, we propose an extension of the semantics of common object-oriented languages to restore the previous consistent state of the system in the presence of runtime errors, avoiding some of the tasks that exception-handling mechanisms delegate to developers. Our proposed solution is centered in the concept of ''reconstructor'', a declarative component oriented to automatically return the system to its last stable state. Based on this concept, we develop a non-intrusive code enrichment tool for Java, and we apply it to a real application in order to check the feasibility of the proposal. We evaluated the performance of the resulting code, obtaining reasonable and viable rates and overload.