A theoretical basis for stepwise refinement and the programming calculus
Science of Computer Programming
Software reliability via run-time result-checking
Journal of the ACM (JACM)
Reasoning about implicit invocation
SIGSOFT '98/FSE-6 Proceedings of the 6th ACM SIGSOFT international symposium on Foundations of software engineering
Extended static checking for Java
PLDI '02 Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation
Runtime verification of .NET contracts
Journal of Systems and Software - Special issue on: Component-based software engineering
The Greybox Approach: When Blackbox Specifications Hide Too Much
The Greybox Approach: When Blackbox Specifications Hide Too Much
Cona: aspects for contracts and contracts for aspects
OOPSLA '04 Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Verifying aspect advice modularly
Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering
A classification system and analysis for aspect-oriented programs
Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering
Aspect-oriented programming and modular reasoning
Proceedings of the 27th international conference on Software engineering
Classpects: unifying aspect- and object-oriented language design
Proceedings of the 27th international conference on Software engineering
Rely-guarantee approach to reasoning about aspect-oriented programs
Proceedings of the 5th workshop on Software engineering properties of languages and aspect technologies
On Accurate Automatic Verification of Publish-Subscribe Architectures
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Bridging Java and AspectJ through explicit join points
Proceedings of the 5th international symposium on Principles and practice of programming in Java
Modular verification of higher-order methods with mandatory calls specified by model programs
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
Enforcing behavioral constraints in evolving aspect-oriented programs
Proceedings of the 7th workshop on Foundations of aspect-oriented languages
Ptolemy: A Language with Quantified, Typed Events
ECOOP '08 Proceedings of the 22nd European conference on Object-Oriented Programming
Tisa: A Language Design and Modular Verification Technique for Temporal Policies in Web Services
ESOP '09 Proceedings of the 18th European Symposium on Programming Languages and Systems: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009
Unifying aspect- and object-oriented design
ACM Transactions on Software Engineering and Methodology (TOSEM)
EffectiveAdvice: disciplined advice with explicit effects
Proceedings of the 9th International Conference on Aspect-Oriented Software Development
Pipa: a behavioral interface specification language for aspectJ
FASE'03 Proceedings of the 6th international conference on Fundamental approaches to software engineering
Types and modularity for implicit invocation with implicit announcement
ACM Transactions on Software Engineering and Methodology (TOSEM)
Modular aspect-oriented design with XPIs
ACM Transactions on Software Engineering and Methodology (TOSEM)
Open modules: modular reasoning about advice
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
Modularizing crosscutting concerns with Ptolemy
Proceedings of the tenth international conference on Aspect-oriented software development companion
Applying translucid contracts for modular reasoning about aspect and object oriented events
Proceedings of the 10th international workshop on Foundations of aspect-oriented languages
Modularizing crosscutting concerns with ptolemy
Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion
Proceedings of the eleventh workshop on Foundations of Aspect-Oriented Languages
Modular reasoning about region composition
Proceedings of the eleventh workshop on Foundations of Aspect-Oriented Languages
Secure and modular access control with aspects
Proceedings of the 12th annual international conference on Aspect-oriented software development
A typed monadic embedding of aspects
Proceedings of the 12th annual international conference on Aspect-oriented software development
On exceptions, events and observer chains
Proceedings of the 12th annual international conference on Aspect-oriented software development
Modular aspect-oriented design rule enforcement with XPIDRs
Proceedings of the 12th workshop on Foundations of aspect-oriented languages
A design rule language for aspect-oriented programming
Journal of Systems and Software
Join point interfaces for safe and flexible decoupling of aspects
ACM Transactions on Software Engineering and Methodology (TOSEM)
Hi-index | 0.00 |
As aspect-oriented (AO) programming techniques become more widely used, their use in critical systems such as aircraft and telephone networks, will become more widespread. However, careful reasoning about AO code seems difficult because: (1) advice may apply in too many places, and (2) standard specification techniques do not limit the control effects of advice. Commonly used black box specification techniques cannot easily specify control effects, such as advice that does not proceed to the advised code. In this work we avoid the first problem by using Ptolemy, a language with explicit event announcement. To solve the second problem we give a simple and understandable specification technique, translucid contracts, that not only allows programmers to write modular specifications for advice and advised code, but also allows them to reason about the code's control effects. We show that translucid contracts support sound modular verification of typical interaction patterns used in AO code. We also show that translucid contracts allow interesting control effects to be specified and enforced.