scispace - formally typeset
Proceedings ArticleDOI

JAsCo: an aspect-oriented approach tailored for component based software development

Reads0
Chats0
TLDR
A new "aspect-enabled" component model, which contains build-in traps that enable to interfere with the normal execution of a component, is proposed that is backward-compatible with the Java Beans component model.
Abstract
In this paper we introduce a novel aspect oriented implementation language, called JAsCo. JAsCo is tailored for component based development and the Java Beans component model in particular. The JAsCo language introduces two concepts: aspect beans and connectors. An aspect bean describes behavior that interferes with the execution of a component by using a special kind of inner class, called a hook. The specification of a hook is context independent and therefore reusable. A connector on the other hand, is used for deploying one or more hooks within a specific context. To implement the JAsCo language, we propose a new "aspect-enabled' component model, which contains build-in traps that enable to interfere with the normal execution of a component. The JAsCo component model is backward-compatible with the Java Beans component model. Furthermore, the JAsCo component model allows very flexible aspect application, adaptation and removal at run-time. The necessary tool support for the JAsCo approach has been implemented. In addition, we present a performance assessment of our current implementation.

read more

Content maybe subject to copyright    Report

Citations
More filters

Essential AOP: The A Calculus

TL;DR: A calculus that models essential AOP, both simpler and more general than existing formalizations, and includes type ranges, an intuitive and concise alternative to explicit type variables that allows advice to be polymorphic over intercepted methods.
Journal ArticleDOI

There are no Aspects

TL;DR: It is claimed that a specialized aspect module is not required and a seamless transition from design to implementation is achieved because no specialized aspect modules exist both at the design and implementation level.

Jumping Aspects Revisited

TL;DR: An extension of the JAsCo aspectoriented programming language for declaratively specifying a protocol fragment pointcut is proposed, which is equivalent to a finite state machine and claims that stateful aspects benefit from run-time weaving and therefore introduces theJAsCo run- time weaver.
Book ChapterDOI

Component-Based open middleware supporting aspect-oriented software composition

TL;DR: DyMAC (Dynamic Middleware with Aspect-Components), a component and aspect-based middleware framework that supports component-based development of middleware services and offers the power of aspect-oriented composition to connect the application logic to themiddleware services.
Journal ArticleDOI

AspectC++: An integrated approach for static and dynamic adaptation of system software

TL;DR: This work presents an adaptation approach that is based on a sophisticated combination of static and dynamic aspect weaving for aspects written in AspectC++ that facilitates the incremental evolution and deployment of system software that has to be ''always on''.
References
More filters
Journal ArticleDOI

On the criteria to be used in decomposing systems into modules

TL;DR: In this paper, the authors discuss modularization as a mechanism for improving the flexibility and comprehensibility of a system while allowing the shortening of its development time, and the effectiveness of modularization is dependent upon the criteria used in dividing the system into modules.
Book

Component Software: Beyond Object-Oriented Programming

TL;DR: Anyone responsible for developing software strategy, evaluating new technologies, buying or building software will find Clemens Szyperski's objective and market-aware perspective of this new area invaluable.
Book

On the criteria to be used in decomposing systems into modules

TL;DR: In this article, the authors discuss modularization as a mechanism for improving the flexibility and comprehensibility of a system while allowing the shortening of its development time, and the effectiveness of a modularization is dependent upon the criteria used in dividing the system into modules.
Proceedings ArticleDOI

Dynamic weaving for aspect-oriented programming

TL;DR: PROSE (PROgrammable extenSions of sErvices), a platform based on Java which addresses dynamic AOP and allows aspects to be woven, unwoven, or replaced at run-time.
Book ChapterDOI

JAC: A Flexible Solution for Aspect-Oriented Programming in Java

TL;DR: This paper presents JAC (Java Aspect Components), a framework for aspect-oriented programming in Java that uses the Javassist class load-time MOP and does not require any language extensions to Java.