Aspect-oriented programming and modular reasoning

Aspects cut new interfaces through the primary decomposition of a system. This implies that in the presence of aspects, the complete interface of a module can only be determined once the complete configuration of modules in the system is known. While this may seem anti-modular, it is an inherent property of crosscutting concerns, and using aspect-oriented programming enables modular reasoning in the presence of such concerns.

[1]  D. Krakauer Robustness in Biological Systems: A Provisional Taxonomy , 2006 .

[2]  Ivar Jacobson,et al.  Aspect-oriented software development with use cases , 2005, Addison Wesley object technology series.

[3]  Gary T. Leavens,et al.  How the design of JML accommodates both runtime assertion checking and formal verification , 2003, Sci. Comput. Program..

[4]  Ivar Jacobson,et al.  Aspect-Oriented Software Development with Use Cases (Addison-Wesley Object Technology Series) , 2004 .

[5]  Michael Eichberg,et al.  Pointcuts as Functional Queries , 2004, APLAS.

[6]  Kathi Fisler,et al.  Verifying aspect advice modularly , 2004, SIGSOFT '04/FSE-12.

[7]  Martin C. Rinard,et al.  A classification system and analysis for aspect-oriented programs , 2004, SIGSOFT '04/FSE-12.

[8]  Robert DeLine,et al.  Typestates for Objects , 2004, ECOOP.

[9]  Masaaki Mizuno,et al.  SyncGen: An Aspect-Oriented Framework for Synchronization , 2004, TACAS.

[10]  Jim Hugunin,et al.  Advice weaving in AspectJ , 2004, AOSD '04.

[11]  Michael Haupt,et al.  Virtual machine support for dynamic join points , 2004, AOSD '04.

[12]  Shigeru Chiba,et al.  Josh: an open AspectJ-like language , 2004, AOSD '04.

[13]  Angelo Furfaro,et al.  Multimedia synchronization based on aspect oriented programming , 2004, Microprocess. Microsystems.

[14]  Michael D. Ernst,et al.  An overview of JML tools and applications , 2003, International Journal on Software Tools for Technology Transfer.

[15]  Jonathan Aldrich,et al.  Open Modules: A Proposal for Modular Reasoning in Aspect-Oriented Programming , 2004 .

[16]  Hidehiko Masuhara,et al.  Dataflow Pointcut in Aspect-Oriented Programming , 2003, APLAS.

[17]  Hidehiko Masuhara,et al.  Modeling Crosscutting in Aspect-Oriented Mechanisms , 2003, ECOOP.

[18]  Jianjun Zhao,et al.  Pipa: A Behavioral Interface Specification Language for AspectJ , 2003, FASE.

[19]  João Araújo,et al.  Modularisation and composition of aspectual requirements , 2003, AOSD '03.

[20]  Kris Gybels,et al.  Arranging language features for more robust pattern-based crosscuts , 2003, AOSD '03.

[21]  Mira Mezini,et al.  Conquering aspects with Caesar , 2003, AOSD '03.

[22]  Ramnivas Laddad,et al.  Aspectj in Action: Practical Aspect-Oriented Programming , 2003 .

[23]  Joseph D. Gradecki,et al.  Mastering AspectJ: Aspect-Oriented Programming in Java , 2003 .

[24]  Gary T. Leavens,et al.  Obliviousness, Modular Reasoning, and the Behavioral Subtyping Analogy , 2003 .

[25]  Gregor Kiczales,et al.  Design pattern implementation in Java and aspectJ , 2002, OOPSLA '02.

[26]  Sérgio Soares,et al.  Implementing distribution and persistence aspects with aspectJ , 2002, OOPSLA '02.

[27]  João Araújo,et al.  Early aspects: a model for aspect-oriented requirements engineering , 2002, Proceedings IEEE Joint International Conference on Requirements Engineering.

[28]  Acm Sigsoft,et al.  International Conference on Aspect-Oriented Software Development : AOSD ... , 2002 .

[29]  Ivan Kiselev,et al.  Aspect-Oriented Programming with AspectJ , 2002 .

[30]  Gary T. Leavens,et al.  Observers and Assistants: A Proposal for Modular Aspect-Oriented Reasoning , 2002 .

[31]  Gregor Kiczales,et al.  Aspect-oriented programming , 2001, ESEC/FSE-9.

[32]  William G. Griswold,et al.  An Overview of AspectJ , 2001, ECOOP.

[33]  Jesse Liberty,et al.  Programming C , 2001 .

[34]  Joshua J. Bloch Effective Java : programming language guide , 2001 .

[35]  Cristina V. Lopes,et al.  A study on exception detection and handling using aspect-oriented programming , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[36]  John C. Grundy,et al.  Aspect-oriented requirements engineering for component-based software systems , 1999, Proceedings IEEE International Symposium on Requirements Engineering (Cat. No.PR00188).

[37]  Stanley M. Sutton,et al.  N degrees of separation: multi-dimensional separation of concerns , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[38]  Martin Odersky,et al.  Making the future safe for the past: adding genericity to the Java programming language , 1998, OOPSLA '98.

[39]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[40]  Jeannette M. Wing,et al.  A behavioral notion of subtyping , 1994, TOPL.