The Automatic Discovery of Violations to the Normalized Systems Design Theorems: A Feasibility Study
Kris Ven, Dieter Van Nuffel, David Bellens, Philip Huysmans · 2010
Evolvability is an important concern for the design and development of information systems. Recently, the Normalized Systems theory has been proposed, which aims to ensure the high evolvability of information systems. The Normalized Systems theory is based on the systems theoretic concept of stability and proposes four design theorems that act as constraints on the modular structure of software. In this paper, we explore the feasibility of building a tool that is able to automatically identify violations to these Normalized Systems design theorems in the source code of applications. We describe how a prototype of such a tool was developed and discuss the lessons that can be learned for its further development. Our results show that it is indeed feasible to automatically identify some violations to the Normalized Systems design theorems, although a manual inspection should still provide more insight into the issues identified in the analysis.