Towards Assurance-Driven Architectural Decomposition of Software Systems
Ramy Shahin

TL;DR
This paper proposes a 4-dimensional meta-architecture for software systems that separates different artifact types to improve assurance and integration of assurance tools throughout the SDLC.
Contribution
It introduces a novel meta-architecture that aligns abstraction layers with assurance needs, facilitating better integration of assurance techniques in software design.
Findings
Demonstrated the meta-architecture on a simple file system design
Identified design and assurance challenges addressed by the architecture
Facilitates assurance tool integration early in the development process
Abstract
Computer systems are so complex, so they are usually designed and analyzed in terms of layers of abstraction. Complexity is still a challenge facing logical reasoning tools that are used to find software design flaws and implementation bugs. Abstraction is also a common technique for scaling those tools to more complex systems. However, the abstractions used in the design phase of systems are in many cases different from those used for assurance. In this paper we argue that different software quality assurance techniques operate on different aspects of software systems. To facilitate assurance, and for a smooth integration of assurance tools into the Software Development Lifecycle (SDLC), we present a 4-dimensional meta-architecture that separates computational, coordination, and stateful software artifacts early on in the design stage. We enumerate some of the design and assurance…
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.
