Language features for flexible handling of exceptions in information systems
ACM Transactions on Database Systems (TODS)
Exception handling and object-oriented programming: towards a synthesis
OOPSLA/ECOOP '90 Proceedings of the European conference on object-oriented programming on Object-oriented programming systems, languages, and applications
Exception handling in software systems: a literature survey
Wirtschafts Informatik
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Design patterns for object-oriented software development
Design patterns for object-oriented software development
A pattern language for tool construction and integration based on the tools and materials metaphor
Pattern languages of program design
Concepts of programming languages (3rd ed.)
Concepts of programming languages (3rd ed.)
Object-oriented software construction (2nd ed.)
Object-oriented software construction (2nd ed.)
Framework development for large systems
Communications of the ACM
ACM Transactions on Programming Languages and Systems (TOPLAS)
An initial assessment of aspect-oriented programming
Proceedings of the 21st international conference on Software engineering
Exceptions in object-oriented languages
OOPWORK '86 Proceedings of the 1986 SIGPLAN workshop on Object-oriented programming
Exception handling: issues and a proposed notation
Communications of the ACM
An axiomatic basis for computer programming
Communications of the ACM
ECOOP '98 Workshop ion on Object-Oriented Technology
Software reliability: The role of programmed exception handling
Proceedings of an ACM conference on Language design for reliable software
iContract - The Java(tm) Design by Contract(tm) Tool
TOOLS '98 Proceedings of the Technology of Object-Oriented Languages and Systems
Improving design and source code modularity using AspectJ (tutorial session)
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
Separating features in source code: an exploratory study
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
Using software component generators to construct a meta-weaver framework
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
Does aspect-oriented programming work?
Communications of the ACM
Handling crosscutting constraints in domain-specific modeling
Communications of the ACM
Obvious or not?: regulating architectural decisions using aspect-oriented programming
AOSD '02 Proceedings of the 1st international conference on Aspect-oriented software development
Managing crosscutting concerns during software evolution tasks: an inquisitive study
AOSD '02 Proceedings of the 1st international conference on Aspect-oriented software development
Arranging language features for more robust pattern-based crosscuts
Proceedings of the 2nd international conference on Aspect-oriented software development
ACM SIGSOFT Software Engineering Notes
A technique for constructing aspect weavers using a program transformation engine
Proceedings of the 3rd international conference on Aspect-oriented software development
Automatic Detection and Masking of Nonatomic Exception Handling
IEEE Transactions on Software Engineering
Aspect-oriented programming and modular reasoning
Proceedings of the 27th international conference on Software engineering
A case study on building COTS-based system using aspect-oriented programming
Proceedings of the 2005 ACM symposium on Applied computing
A model-driven approach to enforce crosscutting assertion checking
MACS '05 Proceedings of the 2005 workshop on Modeling and analysis of concerns in software
The impact of software engineering research on modern progamming languages
ACM Transactions on Software Engineering and Methodology (TOSEM)
Discovering faults in idiom-based exception handling
Proceedings of the 28th international conference on Software engineering
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
Automated generation of monitors for pattern contracts
Proceedings of the 2006 ACM symposium on Applied computing
Exceptions and aspects: the devil is in the details
Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering
Proceedings of the 6th international conference on Aspect-oriented software development
Program entanglement, feature interaction and the feature language extensions
Computer Networks: The International Journal of Computer and Telecommunications Networking
Proceedings of the 2nd workshop on Best practices in applying aspect-oriented software development
On the relation of aspects and monads
Proceedings of the 6th workshop on Foundations of aspect-oriented languages
Proceedings of the 5th workshop on Software engineering properties of languages and aspect technologies
Rely-guarantee approach to reasoning about aspect-oriented programs
Proceedings of the 5th workshop on Software engineering properties of languages and aspect technologies
Identifying, Assigning, and Quantifying Crosscutting Concerns
ACoM '07 Proceedings of the First International Workshop on Assessment of Contemporary Modularization Techniques
Assessment of Contemporary Modularization Techniques - ACoM'07: workshop report
ACM SIGSOFT Software Engineering Notes
Identifying Crosscutting Concerns Using Fan-In Analysis
ACM Transactions on Software Engineering and Methodology (TOSEM)
PEPM '08 Proceedings of the 2008 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
A survey of linguistic structures for application-level fault tolerance
ACM Computing Surveys (CSUR)
EJFlow: taming exceptional control flows in aspect-oriented programming
Proceedings of the 7th international conference on Aspect-oriented software development
Towards reusable components with aspects: an empirical study on modularity and obliviousness
Proceedings of the 30th international conference on Software engineering
Enforcing behavioral constraints in evolving aspect-oriented programs
Proceedings of the 7th workshop on Foundations of aspect-oriented languages
A framework for command processing in Java/Swing programs based on the MVC pattern
Proceedings of the 6th international symposium on Principles and practice of programming in Java
Assessing the Impact of Aspects on Exception Flows: An Exploratory Study
ECOOP '08 Proceedings of the 22nd European conference on Object-Oriented Programming
A theory of aspects as latent topics
Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
Explicit exception handling variability in component-based product line architectures
Proceedings of the 4th international workshop on Exception handling
Why do developers neglect exception handling?
Proceedings of the 4th international workshop on Exception handling
Composing architectural aspects based on style semantics
Proceedings of the 8th ACM international conference on Aspect-oriented software development
Proceedings of the 2006 conference on Knowledge-Based Software Engineering: Proceedings of the Seventh Joint Conference on Knowledge-Based Software Engineering
Exception handling negligence due to intra-individual goal conflicts
CHASE '09 Proceedings of the 2009 ICSE Workshop on Cooperative and Human Aspects on Software Engineering
Reasoning about the behavior of aspect-oriented programs
SEA '07 Proceedings of the 11th IASTED International Conference on Software Engineering and Applications
On the modularization and reuse of exception handling with aspects
Software—Practice & Experience
Checking concurrent contracts with aspects
Proceedings of the 2010 ACM Symposium on Applied Computing
Debugging aspect-enabled programs
SC'07 Proceedings of the 6th international conference on Software composition
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
Applying dependability aspects on top of "aspectized" software layers
Proceedings of the tenth international conference on Aspect-oriented software development
Avoiding confusion with exception handling in aspect-oriented programming
Proceedings of the tenth international conference on Aspect-oriented software development companion
A semantics for execution levels with exceptions
Proceedings of the 10th international workshop on Foundations of aspect-oriented languages
Implementing automatic error recovery support for rich web clients
WISE'10 Proceedings of the 11th international conference on Web information systems engineering
Science of Computer Programming
Practical exception specifications
Advanced Topics in Exception Handling Techniques
Aspectizing exception handling: a quantitative study
Advanced Topics in Exception Handling Techniques
Alice: modularization of middleware using aspect-oriented programming
SEM'04 Proceedings of the 4th international conference on Software Engineering and Middleware
Modularization of distributed web services using aspects with explicit distribution (AWED)
ODBASE'06/OTM'06 Proceedings of the 2006 Confederated international conference on On the Move to Meaningful Internet Systems: CoopIS, DOA, GADA, and ODBASE - Volume Part II
Amplifying the benefits of design patterns: from specification through implementation
FASE'06 Proceedings of the 9th international conference on Fundamental Approaches to Software Engineering
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
Implementing reusable exception handling patterns with compile-time metaprogramming
SERENE'12 Proceedings of the 4th international conference on Software Engineering for Resilient Systems
The crosscutting impact of the AOSD Brazilian research community
Journal of Systems and Software
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
Context aware exception handling in business process execution language
Information and Software Technology
Exception handlers for healing component-based systems
ACM Transactions on Software Engineering and Methodology (TOSEM) - Testing, debugging, and error handling, formal methods, lifecycle concerns, evolution and maintenance
ADAM: External dependency-driven architecture discovery and analysis of quality attributes
ACM Transactions on Software Engineering and Methodology (TOSEM)
A source-to-source transformation tool for error fixing
CASCON '13 Proceedings of the 2013 Conference of the Center for Advanced Studies on Collaborative Research
Hi-index | 0.03 |
Aspect-Oriented Programming (AOP) is intended to ease situations that involve many kinds of code tangling. This paper reports on a study to investigate AOP's ability to ease tangling related to exception detection and handling. We took an existing framework written in Java™, the JWAM framework, and partially reengineered its exception detection and handling aspects using AspectJ™, an aspect-oriented programming extension to Java.We found that AspectJ supported implementations that drastically reduced the portion of the code related to exception detection and handling. In one scenario, we were able to reduce that code by a factor of 4. We also found that, with respect to the original implementation in plain Java, AspectJ provided better support for different configurations of exceptional behaviors, more tolerance for changes in the specifications of exceptional behaviors, better support for incremental development, better reuse, automatic enforcement of contracts in applications that use the framework, and cleaner program texts. We also found some weaknesses of AspectJ that should be addressed in the future.