SEOct 15, 2015

Linear Software Models: Key Ideas

arXiv:1510.04652v1
Originality Synthesis-oriented
AI Analysis

This work provides a theoretical framework for software engineering, but it is incremental as it distills existing ideas rather than introducing new methods.

The paper consolidates the foundational ideas of Linear Software Models, a theory that applies linear algebra to software systems, introducing the Modularity Matrix as a central structure for quantitative modularity and enabling systematic design comparisons.

Linear Software Models is a systematic effort to formulate a theory of software systems neatly based upon standard mathematics, viz. linear algebra. It has appeared in a series of papers dealing with various aspects of the theory. But one was lacking a single source for its key ideas. This paper concisely distills foundational ideas and results obtained within Linear Software Models. First and foremost we claim that one must have a deep comprehension of the theory of software - the aim of this effort - before embarking into theory and practice of software engineering. The Modularity Matrix is the central algebraic structure of the software theory: it is the source of quantitative modularity criteria; it displays high cohesion, i.e. high sparsity; a Standard Modularity Matrix is defined - square and block-diagonal - enabling designs comparison for any software systems in a Software Design Laboratory. It triggers formulation of novel open questions waiting for resolution.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes