An approach to model driven development and automatic source code generation of GUI controls

Generating source code from a model, using a model-driven development techniques (MDD), rapidly increases application reliability and substantially accelerates time-to-market, thereby reducing application development costs. The generated source code does not have its functional implementation, so besides MDD, it is necessary to create some additional tools that will fulfill this gap. This paper describes a design of a system for automatic model development and automatic source code generation that transforms specification into the product implementation. Specification contains data necessary for the implementation of GUI controls. Controls are integrated as a part of an Eclipse based IDE. To reduce the amount of source code that needs to be generated, reflection API Java feature is used. Reflection API is also used for developing JUnit Java tests, that verify the reliability of generated source code. Using the proposed algorithm 1960 GUI controls and 3920 JUnit tests are generated. Based on this approach it is estimated that time-to-market is reduced four and a half months and quality of source code is increased significantly, lowering the total cost of developing and maintaining application.

[1]  Sung Ho Jin,et al.  Automatic source code generator based on AUTOSAR RTE for vehicular applications , 2009 .

[2]  K. Fertalj,et al.  A Source Code Generator Based on UML Specification , 2022 .

[3]  Philip H. Sweany,et al.  Automatic Code Generation Through Model-Driven Design , 2007 .

[4]  Cui Zhang,et al.  Generating Java Skeletal Code with Design Contracts from Specifications in a Subset of Object Z , 2006, 5th IEEE/ACIS International Conference on Computer and Information Science and 1st IEEE/ACIS International Workshop on Component-Based Software Engineering,Software Architecture and Reuse (ICIS-COMSAR'06).

[5]  Luciano Baresi,et al.  Towards a Model-driven Approach to Develop Applications based on Physical Active Objects , 2006, 2006 13th Asia Pacific Software Engineering Conference (APSEC'06).

[6]  Kun Huang,et al.  Methods for XML Based Data Modeling and Model-Driven Development of Interfaces in Ship Combat System Simulation , 2012, 2012 International Conference on Computer Science and Electronics Engineering.

[7]  Thomas Weigert Practical experiences in using model-driven engineering to develop trustworthy computing systems , 2006, IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing (SUTC'06).