Analyzing relations among software patterns based on document similarity

In software development, many kinds of knowledge are shared and reused as software patterns. However, the relation analysis among software patterns by hand is difficult on the large scale. In this paper, we propose a technique for the automatic relation analysis among the patterns. Our technique is based on a new pattern model to treat various patterns, and utilizes exiting text processing techniques to extract patterns from documents and to calculate the strength of pattern relations. As a result of experiments, the system that implements our technique has extracted appropriate relations among patterns without information on relations described in original pattern documents. Moreover, our system has the ability to suggest relations among patterns that the author has not noticed.