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
Proceedings ArticleDOI

The concern manipulation environment

TL;DR: The Concern Manipulation Environment (CME) is an Eclipse open source project that aims to provide a set of open, extensible components and aset of tools that promote aspect-oriented software development throughout the software lifecycle.
Journal ArticleDOI

Comprehensive aspect weaving for Java

TL;DR: MAJOR is presented, a new tool for comprehensive aspect weaving, which ensures that aspects are woven into all classes loaded in a Java Virtual Machine, including those in the standard Java class library.
Proceedings ArticleDOI

A small extension to Java for class refinement

TL;DR: An extended Java language in which users can refine a class definition to a certain degree and can statically or dynamically redefine methods and append a new method, field, and interfaces to the class like dynamic languages is presented.

Coordination and Adaptation Techniques: Bridging the Gap Between Design and Implementation Report on the WS WCAT at ECOOP'06

TL;DR: The third edition of the WCAT workshop as discussed by the authors was held in Nantes jointly with ECOOP 2006 and the topics of interest of the participants covered a large number of models, requirements, interfaces, extra-functional properties, automatic generation, frameworks, middleware, and tools.
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.