Software reuse: metrics and models
ACM Computing Surveys (CSUR)
From domain models to architecture frameworks
Proceedings of the 1997 symposium on Software reusability
Implementing product-line features by composing aspects
Proceedings of the first conference on Software product lines : experience and research directions: experience and research directions
Scenario-Based Analysis of Software Architecture
IEEE Software
Architectural views of aspects
Proceedings of the 2nd international conference on Aspect-oriented software development
Modularisation and composition of aspectual requirements
Proceedings of the 2nd international conference on Aspect-oriented software development
Deriving Design Aspects from Conceptual Models
ECOOP '98 Workshop ion on Object-Oriented Technology
Software Architecture in Practice
Software Architecture in Practice
Domain-Driven Design: Tacking Complexity In the Heart of Software
Domain-Driven Design: Tacking Complexity In the Heart of Software
Object-Oriented Software Engineering: A Use Case Driven Approach
Object-Oriented Software Engineering: A Use Case Driven Approach
From Goals to Aspects: Discovering Aspects from Requirements Goal Models
RE '04 Proceedings of the Requirements Engineering Conference, 12th IEEE International
Aspect-Oriented Analysis and Design
Aspect-Oriented Analysis and Design
Aspect-Oriented Software Development with Use Cases (Addison-Wesley Object Technology Series)
Aspect-Oriented Software Development with Use Cases (Addison-Wesley Object Technology Series)
Information hiding interfaces for aspect-oriented design
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
IEEE Software
Enterprise JavaBeans 3.0 (5th Edition)
Enterprise JavaBeans 3.0 (5th Edition)
Semantics-based composition for aspect-oriented requirements engineering
Proceedings of the 6th international conference on Aspect-oriented software development
A Study of Design Characteristics in Evolving Software Using Stability as a Criterion
IEEE Transactions on Software Engineering
Product Line Implementation using Aspect-Oriented and Model-Driven Software Development
SPLC '07 Proceedings of the 11th International Software Product Line Conference
Towards reusable components with aspects: an empirical study on modularity and obliviousness
Proceedings of the 30th international conference on Software engineering
Domain-driven discovery of stable abstractions for pointcut interfaces
Proceedings of the 8th ACM international conference on Aspect-oriented software development
Co-evolving code and design with intensional views
Computer Languages, Systems and Structures
AO-ADL: an ADL for describing aspect-oriented architectures
Proceedings of the 10th international conference on Early aspects: current challenges and future directions
Mapping features to aspects: a model-based generative approach
Proceedings of the 10th international conference on Early aspects: current challenges and future directions
COMPASS: composition-centric mapping of aspectual requirements to architecture
Transactions on aspect-oriented software development IV
EA-Miner: towards automation in aspect-oriented requirements engineering
Transactions on aspect-oriented software development III
Analysis of early aspects in requirements goal models: a concept-driven approach
Transactions on aspect-oriented software development III
Open modules: modular reasoning about advice
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
Managing the evolution of aspect-oriented software with model-based pointcuts
ECOOP'06 Proceedings of the 20th European conference on Object-Oriented Programming
Improving extensibility of object-oriented frameworks with aspect-oriented programming
ICSR'06 Proceedings of the 9th international conference on Reuse of Off-the-Shelf Components
Using connectors to model crosscutting influences in software architectures
ECSA'07 Proceedings of the First European conference on Software Architecture
On the modularity impact of architectural assumptions
Proceedings of the 2012 workshop on Next Generation Modularity Approaches for Requirements and Architecture
Hi-index | 0.00 |
The benefits of defining explicit pointcut interfaces in aspect-oriented applications have been advocated by many. A pointcut interface exposes a set of crosscutting abstract behaviors that multiple aspects of an application can leverage and use. In order to maximally promote pointcut reuse across applications from a certain problem domain, a pointcut interface should preferably expose stable abstractions in that problem domain. In this paper, we propose a top-down method for designing such stable pointcut interfaces. The method builds upon state-of-the-art domain analysis techniques and employs systematic re-engineering of use case models to discover stable abstractions that are anchored in the domain model of the application. At architecture creation time, these stable domain abstractions are mapped onto pointcut interfaces. We provide algorithmic procedures for use case re-engineering and guidelines for architecture creation. This enables further experimentation with the proposed method and its automation, which in turn improves the ease of adoption. The paper enhances the detailed description of the method by applying it in a running example. We have applied our method in two case studies, where we observe that the resulting pointcut interfaces can be reused for implementing the composition logic of different aspects without requiring modification to their pointcut signatures. In summary, both case studies provide compelling examples that illustrate non-trivial reuse of the pointcut interfaces that have been created using our method.