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
Dissertation

Semantics Preservation in Model-based Composition

Jon Oldevik
TL;DR: This thesis defines theoretical and practical solutions for detecting and solving conflicting or problematic situations when composing software systems and gives a definition for semantics preservation for sequence diagram aspect composition, which is a tool that helps ensuring consistent application of scenario – or trace-based – aspects even if the base model changes.
Book ChapterDOI

A fine-grained, customizable debugger for aspect-oriented programming

TL;DR: The design and implementation of a debugger for aspect- oriented languages using a dedicated intermediate representation preserving the abstraction level of aspect-oriented source code is described, based on a model of the more general formalism of advanced dispatching.
DissertationDOI

Non-intrusive Instance Level Software Composition

TL;DR: The zamk framework provides a non-intrusive approach for adapting and binding software, which supports code reuse, software maintainability and evolution, and introduces a novel aspect-oriented concept, called instance pointcuts, for maintaining sets that contain objects with a specified usage history.
Proceedings ArticleDOI

Using AOP to ensure component interactions in component-based software

TL;DR: By using AOP, this paper can separate the constraints violation checking code from the normal functional code via the so called aspects, thus improving the software quality by of concern, and shows that the performance is comparable to the non embedded code.

Proceedings of the 2004 Dynamic Aspects Workshop (DAW04)

TL;DR: The aim of this work is to present the first Dynamic AOP system running on C++, and to focus on the suitability of Dynamic Aspect Oriented C++ ( DAO C++) for networking systems.
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.