Object-oriented specification of reactive systems
ICSE '90 Proceedings of the 12th international conference on Software engineering
PODC '92 Proceedings of the eleventh annual ACM symposium on Principles of distributed computing
The Information Bus: an architecture for extensible distributed systems
SOSP '93 Proceedings of the fourteenth ACM symposium on Operating systems principles
A superimposition control construct for distributed systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
ACM Transactions on Programming Languages and Systems (TOPLAS)
The Unified Modeling Language reference manual
The Unified Modeling Language reference manual
Proceedings of the 20th international conference on Software engineering
N degrees of separation: multi-dimensional separation of concerns
Proceedings of the 21st international conference on Software engineering
Subject-oriented design: towards improved alignment of requirements, design, and code
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
On the criteria to be used in decomposing systems into modules
Communications of the ACM
A calculus of superimpositions for distributed systems
AOSD '02 Proceedings of the 1st international conference on Aspect-oriented software development
Problem frames: analyzing and structuring software development problems
Problem frames: analyzing and structuring software development problems
A Discipline of Programming
Extending standard UML with model composition semantics
Science of Computer Programming - Special issue on unified modeling language (UML 2000)
Architectural views of aspects
Proceedings of the 2nd international conference on Aspect-oriented software development
Design Templates for Collective Behavior
ECOOP '00 Proceedings of the 14th European Conference on Object-Oriented Programming
Proceedings of the Workshop on Object-Oriented Technology
Incremental introduction of behaviors with static software architecture
Computer Standards & Interfaces - Special issue: Adaptable software architectures
Abstractions of Distributed Cooperation, their Refinement and Implementation
PDSE '98 Proceedings of the International Symposium on Software Engineering for Parallel and Distributed Systems
WICSA '01 Proceedings of the Working IEEE/IFIP Conference on Software Architecture
Managing Software Evolution with a Formalized Abstraction Hierarchy
ICECCS '02 Proceedings of the Eighth International Conference on Engineering of Complex Computer Systems
Separating Crosscutting Concerns Across the Lifecycle: From Composition Patterns to AspectJ and Hyper/J
Using design fragments to modularize the design of communications in concurrent systems
IWSSD '93 Proceedings of the 7th international workshop on Software specification and design
Theme: An Approach for Aspect-Oriented Analysis and Design
Proceedings of the 26th International Conference on Software Engineering
Adaptable Concern-Based Framework Specialization in UML
Proceedings of the 19th IEEE international conference on Automated software engineering
A Practical Theory of Reactive Systems: Incremental Modeling of Dynamic Behaviors (Texts in Theoretical Computer Science. An EATCS Series)
The Modular Structure of Complex Systems
IEEE Transactions on Software Engineering
Aspect-oriented software development
Aspect-oriented software development
Architectural aspects of architectural aspects
EWSA'05 Proceedings of the 2nd European conference on Software Architecture
Managing software evolution with a formalised abstraction hierarchy
International Journal of Computer Applications in Technology
Generating CAM aspect-oriented architectures using Model-Driven Development
Information and Software Technology
Deriving detailed design models from an aspect-oriented ADL using MDD
Journal of Systems and Software
Hi-index | 0.00 |
In order to provide better alignment between conceptual requirements and aspect-oriented implementations, specification methods should enable the encapsulation of behavioral abstractions of systems. In this paper we argue that horizontal architectures, consisting of such behavioral abstractions, can provide better separation of concerns than conventional architectures, while supporting incremental development for more common units of modularity such as classes. We base our arguments on our experiences with the DisCo method, where behavioral abstractions are composed using the superposition principle, a technique closely associated with aspect orientation. Moreover, we demonstrate how the alignment between an abstract, horizontally architected specification (or model) and its aspect-oriented implementation can be achieved. Mappings are discussed that implement symmetric DisCo specifications both in Hyper/J, which enables symmetric separation of concerns, and in AspectJ that uses asymmetric structuring.