{'fraction_non_alphanumeric': 0.019498607242339833, 'fraction_numerical': 0.002785515320334262, 'mean_word_length': 5.533333333333333, '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}}
A survey instrument for understanding the complexity of software maintenance

Software maintenance is a multi-faceted, multidimensional effort that, upon inspection, is larger and more complex than it first seems. At least three components contribute to the complexity of the software maintenance effort: (1) the code and documentation being produced, (2) the process used to manage the maintenance, and (3) the maintenance and target computer system environments. This paper describes the development and use of a simple spreadsheet tool designed to measure the complexity of a software maintenance release. The tool can be used by software maintenance managers to direct their attention at the cost drivers associated with a software maintenance release, to aid in the re-engineering decision, and to keep track of the degradation or improvement associated with a software system due to maintenance actions or process improvements. The approach has been successful in identifying complex deliveries and identifying components that contributed the greatest to that complexity.