As a high-level reuse, software design reuse has received more and more attention because of its important impact on the subsequent development stages. Usually, the design models are typically represented as some graphs or diagrams, in which Unified Modeling Language (UML) class diagram is so widely used in software design that it has become the de facto standard. There has been some research on the reuse of UML class diagrams so far, mainly focusing on matching and retrieval. However, it is worth noting that there are many similar class diagrams modeling the same object or some related class diagrams modeling different aspects of the same object in the reuse repository. As a matter of fact, the primary step to achieve a high-quality reuse is to have high-quality software artifacts, so the well-designed UML class diagrams become a necessary resource for software design reuse. Therefore, it is necessary to integrate these class diagrams so that they have stronger modeling ability, and eliminating redundancy is another benefit of the integration. Up to now, there has been little discussion about the integration of class diagrams, so we propose an integration approach based on semantics and structure in this paper. The equivalent elements that can identify the semantically merged parts are defined, and the possible conflict items are listed from both semantic and structural aspects. The integration procedure composed of three stages is proposed, in which an approach combining semantic common class diagrams (SCCDs) and structural common graph sequence (SCGS) is combined to determine the merged parts, the integration issue of heterogeneous class diagrams is considered from the proposed abstract models, and the conflict resolution for each conflict item is described by examples. The experimental results show the effectiveness of our proposed integration approach.
Read full abstract