期刊
CLUSTER COMPUTING-THE JOURNAL OF NETWORKS SOFTWARE TOOLS AND APPLICATIONS
卷 25, 期 6, 页码 3993-4008出版社
SPRINGER
DOI: 10.1007/s10586-022-03639-7
关键词
Software visualization; Software comprehension; Aspect-oreinted programming; AspectJ
Aspect-oriented software development is a programming paradigm that supports modularization of crosscutting concerns. This paradigm introduces aspects, which can make program structure difficult to understand, especially during maintenance. To address this issue, a visualization approach called AspectCity is proposed, using a city transportation system metaphor. AspectCity facilitates understanding of aspect-oriented programs and can potentially be extended to visualize software with complex component relations.
Aspect-oriented software development is a programming paradigm that supports the modularization of crosscutting concerns. The paradigm introduces a new concept, call aspect, along with other concepts and components to capture crosscutting concerns. However, introducing aspects adds difficulties in understanding the structure of program, especially at the maintenance phase. In order to increase understandability of aspect-oriented programs, we propose a visualization approach that uses city transportation system as a metaphor for viewing the structure of aspect-oriented programs. Additionally, we built a prototype tool, called AspectCity, that implements the presented approach. We demonstrated how AspectCity can be used to visualize aspect-oriented programs using two examples. The demonstration shows that the proposed approach can help in understanding aspect-oriented programs. Moreover, the concepts used in AspectCity facilitate ease of communication and do not require effort from the reader to understand the approach due to the use of real life metaphors. AspectCity is a promising approach that can help in solving understandability problem of aspect-oriented programs and decrease their maintenance cost. The approach used in AspectCity can be further extended to be used in visualizing software that contains complex relations between its components.
作者
我是这篇论文的作者
点击您的名字以认领此论文并将其添加到您的个人资料中。
推荐
暂无数据