Journal "Software Engineering"
a journal on theoretical and applied science and technology
ISSN 2220-3397

Issue N9 2019 year

DOI: 10.17587/prin.10.400-416
Development of Template-Based Code Generation Software for Development of Computer-Aided Engineering System
A. P. Sokolov, alsokolo@bmstu.ru, V. M.Makarenkov , A. Yu. Pershin, apershin@bmstu.ru, I. A. Laishevskiy, ivanlaish@yandex.ru, Bauman Moscow State Technical University, Moscow, 105005, Russian Federation
Corresponding author: Sokolov Alexandr P., Associate Professor, Bauman Moscow State Technical University, Moscow, 105005, Russian Federation E-mail: alsokolo@bmstu.ru
Received on August 21, 2018
Accepted on August 12, 2019

The use of automation tools for software development or so-called computer-aided software engineering (CASE) tools is a sign of a high level of maturity of the development team, and is especially necessary when creating large-scale distributed software. Among others, CASE tools often include code generation software. Template-based code generation involves automatic building of source code or some text result corresponding to a pre-defined format called a template. The article presents the architecture and software tools for computer-aided prototyping of projects of software modules and documents of different types and purposes. The basis of the created technical solutions is the use of the following, developed by the authors: a specialized format of representation of templates, aINI format of source data files and a library of functions that allows to interpret the templates and create objects of different types based on them. The algorithm of generation and the method of automatic integration of the created software tools in the framework of a software complex "Distributed computational system GCD" are presented. Examples of practically significant created templates and their corresponding created objects are given, namely: a) template of initial data file; b) template of the documentation of the problem solver implemented using graph-based software engineering approach; c) template of the report of the conducted patent research according to GOST R 15.011—96.

Keywords: computer-aided software engineering; rapid software and documentation prototyping; template-based code generation; model-driven engineering; model-to-text transformation; aINI; code generation; automatic programming; interpretation of text data; program processors; technologies for development of computer-aided engineering systems
pp. 400–416
For citation:
Sokolov A. P., Makarenkov V. M., Pershin A. Yu., Laishevskiy I. A. Development of Template-Based Code Generation Software for Development of Computer-Aided Engineering System, Programmnaya Ingeneria, 2019, vol. 10, no. 9—10, pp. 400—416.
This work was carried out on an initiative basis by authors. The development of the template of the result of the simulation of the kinetics of a chemical reaction was funded by RFBR according to the research project No. 18-07-00341.