
TL;DR
Linear Software Models applies linear algebra to develop a mathematical theory of software systems, emphasizing the Modularity Matrix as a key structure for understanding and designing modular software.
Contribution
This paper consolidates the core ideas of Linear Software Models, introducing the Modularity Matrix as a central algebraic tool for software analysis and design.
Findings
Modularity Matrix is central to the theory
Standard Modularity Matrix enables system comparison
High sparsity indicates high cohesion in software systems
Abstract
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…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Software Engineering Methodologies · Software Engineering Research · Service-Oriented Architecture and Web Services
