Results 1 -
3 of
3
Agents in Object-Oriented Software Engineering
- Software: Practice & Experience, Elsevier
, 2004
"... Software engineers of multi-agent systems (MASs) are faced with different concerns such as autonomy, adaptation, interaction, collaboration, learning, and mobility, which are essentially different from classical concerns addressed in object-oriented software engineering. MAS developers however have ..."
Abstract
-
Cited by 5 (4 self)
- Add to MetaCart
(Show Context)
Software engineers of multi-agent systems (MASs) are faced with different concerns such as autonomy, adaptation, interaction, collaboration, learning, and mobility, which are essentially different from classical concerns addressed in object-oriented software engineering. MAS developers however have relied mostly on object-oriented design techniques and programming languages, such as Java. It often leads to a poor separation of MAS concerns and in turn to the production of MASs that are difficult to maintain and reuse. This paper discusses software engineering approaches for MASs, and presents a new method for integrating agents into object-oriented software engineering from an early stage of design. The proposed approach encourages the separate handling of MAS concerns, and provides a disciplined scheme for their composition. Our proposal explores the benefits of aspect-oriented software development for the incorporation of agents into object-oriented systems. We also illustrate our aspect-oriented approach through the Portalware multi-agent system, a web-based environment for the development of e-commerce portals. Keywords: Multi-agent systems, software agents, software engineering, object-oriented systems, aspect-oriented software development.
A Proposal For Classifying Tangled Code
- Second Workshop on Aspect-Oriented Software Development of the GI
, 2002
"... A lot of different composition mechanisms claim to permit aspect-oriented software development because they are able to handle the problem of tangled code which was the original target of aspect-oriented programming (AOP). However, it becomes hard to compare those different approaches, because th ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
A lot of different composition mechanisms claim to permit aspect-oriented software development because they are able to handle the problem of tangled code which was the original target of aspect-oriented programming (AOP). However, it becomes hard to compare those different approaches, because they usually focus on different kinds of tangled code. For comparing different approaches it is necessary to find some communalities between tangled code. Such communalities can be used to classify tangled code and in that way the impact of new aspect-oriented approaches can be determined in respect to what classes of tangled code they are able to handle. A general purpose aspectoriented approach should be able to handle all kinds of tangled code.
Taming Heterogeneous Aspects with Crosscutting Interfaces
"... Abstract. Aspect-oriented software development promotes improved separation of concerns by introducing a new modular unit, called aspect, for the modularization of crosscutting concerns. As a new kind of modular unit, aspects should have explicit interfaces that describe the way they interact with t ..."
Abstract
- Add to MetaCart
(Show Context)
Abstract. Aspect-oriented software development promotes improved separation of concerns by introducing a new modular unit, called aspect, for the modularization of crosscutting concerns. As a new kind of modular unit, aspects should have explicit interfaces that describe the way they interact with the rest of the system and how they affect other modules. This interaction can be homogeneous, for example, by providing a logging behavior that affects all procedures in a certain interface; or it can be heterogeneous, for example, by implementing the two sides of a protocol that affects two different classes. In this paper, we present crosscutting interfaces as a conceptual tool for dealing with the complexity of heterogeneous aspects at the design level. Crosscutting interfaces have been incorporated by the aSideML modeling language in order to enhance aspect description at the design level. Moreover, we present a modeling notation for the description of architecture-level aspects that also supports the explicit representation of crosscutting interfaces. Finally, we present a large-scale case study we have performed using this modeling language that supports our arguments in favor of crosscutting interfaces. 1.