{'fraction_non_alphanumeric': 0.02072289156626506, 'fraction_numerical': 0.0009638554216867469, 'mean_word_length': 5.310030395136778, '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}}
Extensible Model-Based Approach for Supporting Automatic Enterprise Analysis

A critical activity in Enterprise Architecture (EA) projects is building models for communicating a consolidated enterprise structure. This is achieved by modeling elements belonging in a plurality of domains (e.g., business, processes, technology, information) and making explicit the relationships existing between them. After models are completed, they are used to support the analysis of the enterprise. However, the increasing size and complexity of these models has made this a difficult task for humans alone, and has fostered the research around automatic analysis methods. The problem is that usability concerns that are very important for modeling languages usually go against automation requirements. One example of this is ArchiMate, a widely used language for creating and visualizing EA models. On the one hand, ArchiMate has a low number of elements compared to the domains it addresses. This makes the language simple and easy to learn, but seriously limits the kinds of analysis that can be performed. On the other hand, ArchiMate does not include mandatory attributes in any element, which makes the modeling task easier, but also hinders the quality of the analyses. The hypotheses that we have studied are that to provide automatic analysis methods it is necessary to: 1) have the possibility of extending any metamodel with specialized and typed concepts and relations, with the level of granularity that the analysis requires, 2) and to force the presence of attributes that depend entirely on the selected analysis method. To study this, we have created a model-based tool for analyzing ArchiMate models called iArchiMate. This tool makes it possible to create and run analysis functions, and also to extend the ArchiMate metamodel with the elements that specific analysis require. This paper discusses and illustrates the motivations and requirements for supporting automatic model analysis, the requirements of analysis methods, and the core characteristics of iArchiMate.