Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
AspectMaps: extending Moose to visualize AOP software
Fabry J., Kellens A., Denier S., Ducasse S. Science of Computer Programming79 6-22,2014.Type:Article
Date Reviewed: Apr 22 2014

Aspect-oriented programming (AOP) is an emerging software development paradigm primarily oriented toward addressing cross-cutting concerns in software development. Cross-cutting concerns are those elements of a software system that cannot be cleanly separated from other code, for example, logging and exception handling. These separate concerns can be scattered across multiple modules or tangled with disparate concerns in individual modules. AOP seeks to localize these cross-cutting concerns into separate modules, called aspects.

The challenge presented by AOP is to a developer’s comprehension of code structure and function. Since otherwise scattered or tangled concerns are implemented in separate aspects that are implicitly invoked, it is not as easy to visualize program execution. While some visualization tools exist for working with AOP software systems, these do not present a comprehensive view of the system being inspected or provide advanced decomposition views.

The paper presents the result of an effort to implement a visualization tool for AOP, called AspectMaps. This was built using the Moose software and data visualization tool, and extends some of the core components of Moose to support AOP. Moose tools operate on meta-models, not on source code directly. An extension of the FAMIX meta-model was created to support aspects, called ASPIX (ASPects In famiX). Scripts were then developed using Mondrian and Glamour, two domain-specific scripting languages provided in Moose for information visualization. The end result is a standalone visualization tool for interacting with systems built using AOP.

The paper’s intended audience is two-fold: aspect-oriented developers needing visualization support, and developers using Moose that are building their own analysis tools. It will also be of use to developers exploring the AOP paradigm, or systems implemented using AOP.

Reviewer:  Nathan Carlson Review #: CR142203 (1407-0551)
Bookmark and Share
 
General (D.1.0 )
 
 
Design Tools and Techniques (D.2.2 )
 
 
Language Constructs and Features (D.3.3 )
 
Would you recommend this review?
yes
no
Other reviews under "General": Date
Problems in programming
Vitek A., Tvrdy I., Reinhardt R., Mohar B. (ed), Martinec M., Dolenc T., Batagelj V. (ed), John Wiley & Sons, Inc., New York, NY, 1991. Type: Book (9780471930174)
Aug 1 1992
KNOs: KNowledge acquisition, dissemination, and manipulation Objects
Tsichritzis D., Fiume E., Gibbs S., Nierstrasz O. ACM Transactions on Information Systems 5(1): 96-112, 1987. Type: Article
Nov 1 1987
Programmer perceptions of productivity and programming tools
Hanson S. (ed), Rosinski R. Communications of the ACM 28(2): 180-189, 1985. Type: Article
Jul 1 1985
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy