{'fraction_non_alphanumeric': 0.018065268065268064, 'fraction_numerical': 0.0, 'mean_word_length': 5.5534351145038165, '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}}
Assessing the changeability of component-based system design: a controlled experiment

ABSTRACT Component-based software system (CBSS) must be designed and implemented not only to meet the current customers’ requirements, but also to be receptive to future changes. Therefore, most often, one or more components of the system may need to be changed. Usually, designers do not exactly know what the future state looks like. The need for change continues to increase as technology evolves. For the reusable software components, this modification may be compromised, perhaps for the system architecture that comprises components or interfaces that are difficult to change. An essential way for controlling and managing such changes is to develop metrics as an indicator of changeability. The aim of this paper is to present the relationship between the proposed component information flow-based measures and changeability of software components. Although the component information flow complexity (CIFC) and component coupling (CC) could make a significant contribution to the understanding of software design processes, they need to be adjusted to an external quality attributed to determine the usefulness of the metrics. A controlled change experiment was conducted involving eighteen software components and twelve changes for verifying certain hypotheses to justify the validity of the measured external attribute. The empirical findings showed that there was a significant statistical correlation between the proposed information-flow-based metrics and changeability of software components. CBSS designers can achieve some quality insight in terms of changeability if the metrics are applied in the right context.