Source-code divergence diagnosis using constraints and cryptography
Farshad Ghassemi Toosi, Jim Buckley, Ashish Rajendra Sai · 2019
This paper presents a new technique that informs developers of potential architectural-type violations and non-compliance checking in their software system after changes in the source code. The violations identified by our technique not only concern broken calls/dependencies/inheritance or data-dependencies but also concern the dissatisfaction of some constraints which may be defined and imposed by OCL. The technique partitions the software system into small grain nodes and filters out nodes that have no role in dependency-based software architecture adherence and nodes that cannot jeopardize the validity of a function regarding OCL adherence. It thus presents a reduced version of the source code where additional developer-defined links may be established between entities (e.g., method to method) based on the developer's implicit knowledge of the architecture of the system.