{'fraction_non_alphanumeric': 0.017921146953405017, 'fraction_numerical': 0.0, 'mean_word_length': 5.876847290640394, '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': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Developing maintainability index of a software component: a digraph and matrix approach

This paper describes a methodology based on a digraph and matrix approach for developing the maintainability (characteristic) indexof a software component. Sub-characteristics and associated attributes of a component that characterize maintainability are identified and modelled in terms of maintainability digraph. The nodes in the digraph represent maintainability sub-characteristics and edges represent interactive complexity among the subcharacteristics. A detailed procedure for the maintainability analysis of component is suggested through a maintainability function. The maintainability index (Im) is obtained from VPF - m (i.e. permanent of the matrix) by substituting the numerical values of the sub-characteristics and their interactions. The concept of hypothetical best index and hypothetical worst index is also proposed, which will help system developers to identify relative comparison of candidates from hypothetical best and hypothetical worst indices and designers and developers to improve the component maintainability characteristic (looking upon critical attributed factors) by performing sensitivity analysis. A higher value of the VPF - m implies better maintainability of a component. An example is also presented to demonstrate and validate the effectiveness of the methodology.