{'fraction_non_alphanumeric': 0.011842105263157895, 'fraction_numerical': 0.0, 'mean_word_length': 5.4491525423728815, '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}}
Using Aspects to Abstract and Modularize Statecharts

The statechart modeling mechanism is an essential element in the UML standard. Software engineers use statecharts to capture dynamic behaviors of objects and their interactions. In this paper we demonstrate how abstracting statecharts can help in building models that are easy to maintain and extend. Through the use of aspect-oriented techniques, we can build orthogonal abstract statecharts that can be reused in different contexts. Adding statechart submodels into the core statechart submodel involves a weaving process that a modeler can utilize during the design phase. This paper attempts to demonstrate the benefits of employing aspect-oriented techniques in the pursuit of abstracting statecharts.