{'fraction_non_alphanumeric': 0.021890547263681594, 'fraction_numerical': 0.0, 'mean_word_length': 5.407643312101911, '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}}
Multi-granularity dynamic analysis of complex software networks

Software systems represent one of the most complex man-made systems. In this paper, we analyze the evolution of Object-Oriented (OO) software using complex network theory from a multi-granularity perspective. First, the software networks are constructed for a multi-version software system at different levels of granularity. Then, some parameters used in complex network theory are introduced to study the topological characteristics of these software networks. By investigating the parameters' values in consecutive software networks, we have a better understanding about software evolution. A case study on an open source OO project, Azureus, is conducted as an example to illustrate our approach. It uncovers some underlying dynamic characteristics of OO systems. These results provide a different dimension to our understanding of software system dynamics and also are very useful for the design and development of OO software systems.