Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Pattern-oriented software architecture: a system of patterns
Pattern-oriented software architecture: a system of patterns
A study on exception detection and handling using aspect-oriented programming
Proceedings of the 22nd international conference on Software engineering
Designing robust Java programs with exceptions
SIGSOFT '00/FSE-8 Proceedings of the 8th ACM SIGSOFT international symposium on Foundations of software engineering: twenty-first century applications
Interprocedural exception analysis for Java
Proceedings of the 2001 ACM symposium on Applied computing
Journal of Systems and Software
Implementing distribution and persistence aspects with aspectJ
OOPSLA '02 Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Optimizing Java Bytecode Using the Soot Framework: Is It Feasible?
CC '00 Proceedings of the 9th International Conference on Compiler Construction
Visualization of Exception Propagation for Java Using Static Analysis
SCAM '02 Proceedings of the Second IEEE International Workshop on Source Code Analysis and Manipulation
Tracking down Exceptions in Standard ML Programs
Tracking down Exceptions in Standard ML Programs
Static analysis to support the evolution of exception structure in object-oriented systems
ACM Transactions on Software Engineering and Methodology (TOSEM)
Remote pointcut: a language construct for distributed AOP
Proceedings of the 3rd international conference on Aspect-oriented software development
Automatic Detection and Masking of Nonatomic Exception Handling
IEEE Transactions on Software Engineering
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Explicitly distributed AOP using AWED
Proceedings of the 5th international conference on Aspect-oriented software development
Composing design patterns: a scalability study of aspect-oriented programming
Proceedings of the 5th international conference on Aspect-oriented software development
Exceptions and aspects: the devil is in the details
Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering
Exception-Chain Analysis: Revealing Exception Handling Architecture in Java Server Applications
ICSE '07 Proceedings of the 29th international conference on Software Engineering
On the Quantitative Analysis of Architecture Stability in Aspectual Decompositions
WICSA '08 Proceedings of the Seventh Working IEEE/IFIP Conference on Software Architecture (WICSA 2008)
Evolving software product lines with aspects: an empirical study on design stability
Proceedings of the 30th international conference on Software engineering
Practical exception specifications
Advanced Topics in Exception Handling Techniques
Modularizing design patterns with aspects: a quantitative study
Transactions on Aspect-Oriented Software Development I
abc: an extensible AspectJ compiler
Transactions on Aspect-Oriented Software Development I
Exception handling: a field study in Java and .NET
ECOOP'07 Proceedings of the 21st European conference on Object-Oriented Programming
On the impact of aspectual decompositions on design stability: an empirical study
ECOOP'07 Proceedings of the 21st European conference on Object-Oriented Programming
Evolving software product lines with aspects: an empirical study on design stability
Proceedings of the 30th international conference on Software engineering
Assessing the Impact of Aspects on Exception Flows: An Exploratory Study
ECOOP '08 Proceedings of the 22nd European conference on Object-Oriented Programming
Improving robustness of evolving exceptional behaviour in executable models
Proceedings of the 4th international workshop on Exception handling
Explicit exception handling variability in component-based product line architectures
Proceedings of the 4th international workshop on Exception handling
Aspect-oriented support for synchronization in parallel computing
Proceedings of the 1st workshop on Linking aspect technology and evolution
Improving reliability of cooperative concurrent systems with exception flow analysis
Journal of Systems and Software
Extending AspectJ for separating regions
GPCE '09 Proceedings of the eighth international conference on Generative programming and component engineering
On the modularization and reuse of exception handling with aspects
Software—Practice & Experience
An exploratory study of fault-proneness in evolving aspect-oriented programs
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1
An empirical evaluation of coupling metrics on aspect-oriented programs
Proceedings of the 2010 ICSE Workshop on Emerging Trends in Software Metrics
A domain-specific approach to architecturing error handling in pervasive computing
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Components meet aspects: Assessing design stability of a software product line
Information and Software Technology
The crosscutting impact of the AOSD Brazilian research community
Journal of Systems and Software
On exceptions, events and observer chains
Proceedings of the 12th annual international conference on Aspect-oriented software development
New exception interfaces for Java-like languages
Proceedings of the 28th Annual ACM Symposium on Applied Computing
Trading obliviousness for modularity with cooperative aspect-oriented programming
ACM Transactions on Software Engineering and Methodology (TOSEM) - In memoriam, fault detection and localization, formal methods, modeling and design
Science of Computer Programming
Hi-index | 0.00 |
Many of the problems that stem from the use of exception handling are caused by the local way in which exceptions are handled. It demands that developers understand the source of an exception, the place where it is handled, and everything in between. As a consequence, exceptions easily get "out of control" and, as system development progresses, exceptional control flows become less well-understood, with potentially negative consequences for the program maintainability and reliability. This paper presents an innovative aspect-oriented model for exception handling implementation. In contrast to other exception handling mechanisms, our model provides abstractions to explicitly describe global views of exceptional control flows. As a result, this new model makes it possible to understand exception flows from an end-to-end perspective by looking at a single part of the program. Also, it leverages existing pointcut languages to make the association of handlers with normal code more flexible. The implementation of our proposed model, called EJFlow, extends the AspectJ programming language with the aim of promoting enhanced robustness and program modularization. We evaluate qualitatively and quantitatively the proposed exception handling model through a case study targeting a real mobile application.