Print Email Facebook Twitter Testing Code Generators against Definitional Interpreters Title Testing Code Generators against Definitional Interpreters Author Papadopoulos, Giannis (TU Delft Electrical Engineering, Mathematics and Computer Science) Contributor Erdweg, Sebastian (mentor) Visser, Eelco (graduation committee) Finavaro Aniche, Mauricio (graduation committee) Degree granting institution Delft University of Technology Programme Computer Science Date 2018-12-05 Abstract Large companies suffer from the increasing complexity that exist in their software systems. Evolving their software becomes even harder if we consider that a change in one system can affect several other parts of their software architecture. Especially banks that need to be always complied with regulations, have to constantly make changes in their software to reflect these changes. ING is a primary example that currently tries to find a solution to these problems through the use of model driven development and more specifically code generation. In particular, they have created a Domain Specific Language called Maverick to specify the requirements/business logic and through the usage of code generators to automatically generate their entire codebase from these Maverick specifications. Code generators as any other software artifact is not bug free, meaning that testing code generators is of paramount importance. However, testing code generators is not straightforward as their output is another program that besides syntactic structure also has behavior. Many formal approaches have been developed that try to formally prove the correctness of code generators. Nevertheless, the complexity and scalability issues that these approaches face make them infeasible in practice. This thesis presents a testing approach that leverages a definitional interpreter to test code generators. We evaluate and show the practicability of our approach using Maverick specifications developed by ING and we conclude that our proposed method can address many of the issues that formal approaches face. Subject Model Driven EngineeringDefinitional InterpreterCode GenerationDomain Specific LanguagesTestingState machines To reference this document use: http://resolver.tudelft.nl/uuid:d7cfe32c-4a49-468a-9270-de962fa8cdb6 Part of collection Student theses Document type master thesis Rights © 2018 Giannis Papadopoulos Files PDF IoannisPapadopoulosMscThesis.pdf 1.53 MB Close viewer /islandora/object/uuid:d7cfe32c-4a49-468a-9270-de962fa8cdb6/datastream/OBJ/view