{'fraction_non_alphanumeric': 0.020140105078809107, 'fraction_numerical': 0.0, 'mean_word_length': 5.763313609467455, '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}}
Linear Software Models for Well-composed Systems

Modularity is essential for automatic composition of real software systems from ready-made components. But given ready-made components do not necessarily correspond exactly to the units and functionality of designed software system architecture modules. One needs a neat composition procedure that guarantees the necessary and sufficient components to provide required units. Linear Software Models are rigorous theoretical standards subsuming modularity. The Linear-Reducible model is proposed as a model of wellcomposed software systems, above and beyond software variability. Indeed, case studies of representative systems recognized as well-composed, be they small, intermediate building blocks or large scale, are shown to be Linear-Reducible. The paper lays down theoretical foundations – upon exact linear independence and reducible matrix concepts – providing new precise meanings to familiar modularity ideas, such as the single responsibility theorem. The theory uses a Modularity Matrix – linking independent software structors to composable software functionals in a Linear Model.