Detecting implicit collaboration patterns

Detecting implicit collaboration patterns
复制标题

检测隐式协作模式

DOI:
10.1109/wcre.2004.18
复制
发表时间:
2004
期刊:
11th Working Conference on Reverse Engineering
影响因子:
--
通讯作者:
Oscar Nierstrasz
Oscar Nierstrasz
中科院分区:
--
文献类型:
--
作者:
G. Arévalo;F. Buchli;Oscar Nierstrasz

文献摘要

被引文献

相似文献

软件开发和维护过程中的一个关键问题是检测并识别代码中隐含的软件工件之间的经常合作。这些协作模式通常是系统开发过程中应用成语,约定和设计模式的迹象,并且可能需要在维护过程中应尊重的隐性合同,但并未明确记录。我们应用正式的概念分析来检测隐性协作模式。我们的方法将Antoniol和Tonella One推广用于检测古典设计模式。我们对其算法介绍了一种变体,以减少概念的计算时间,一种独立于对象的语言的语言方法以及一个后处理阶段,其中将模式候选者滤除。我们在分析的应用程序中确定协作模式,将它们与已知设计模式的库相匹配,并在检测模式与其最近的邻居之间建立关系。
A key problem during software development and maintenance is to detect and recognize recurring collaborations among software artifacts that are implicit in the code. These collaboration patterns are typically signs of applied idioms, conventions and design patterns during the development of the system, and may entail implicit contracts that should be respected during maintenance, but are not documented explicitly. We apply formal concept analysis to detect implicit collaboration patterns. Our approach generalizes Antoniol and Tonella one for detecting classical design patterns. We introduce a variation to their algorithm to reduce the computation time of the concepts, a language-independent approach for object-oriented languages, and a post-processing phase in which pattern candidates are filtered out. We identify collaboration patterns in the analyzed applications, match them against libraries of known design patterns, and establish relationships between detected patterns and their nearest neighbours.