{'fraction_non_alphanumeric': 0.022401433691756272, 'fraction_numerical': 0.0, 'mean_word_length': 6.069620253164557, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Toward an Architecture for Model Composition Techniques

Academia and industry are increasingly concerned with producing general-purpose model composition techniques to support many software engineering activities, e.g., evolving UML design models or reconciling conflicting models. However, the current techniques fail to provide flexible and reusable architectures, a comprehensive understanding of the critical composition activities, and guidelines about how developers can use and extend them. These limitations are one of the main reasons why state-of-the-art techniques are often unable to aid the development of new composition tools. To overcome these shortcomings, this paper, therefore, proposes a flexible, component-based architecture for aiding the development of composition techniques. Moreover, an intelligible composition workflow is proposed to help developers to improve the understanding of crucial composition activities and their relationships. Our preliminary evaluation indicated that the proposed architecture could support composition tools for UML class, sequence, and component diagrams.