Data processing system and method
First Claim
1. A code generation system for generating program code for implementing a software system specified by specification data, comprising:
- an input component adapted to receive the specification data;
a processing component adapted to generate further specification data in dependence on the received specification data; and
a code generator adapted to generate the program code from the specification data and the further specification data.
1 Assignment
0 Petitions
Accused Products
Abstract
Aspects of a model development and code generation system and method are described. One aspect of the system generates program code for implementing a software system specified by specification data, which may represent a model of a system designed by a user. The system includes an input component adapted to receive the specification data, a processing component adapted to generate further specification data in dependence on the received specification data and a code generator adapted to generate the program code from the specification data and the further specification data. The code generator may use templates and controls to generate program code and the further specification data may be generated based on a meta-model developed by the user. Processing the specification data to produce further specification data and generating code based on the original specification data and the further specification data may facilitate the development of systems, particularly complex systems, implemented in computer code and reduce the manual coding required to generate the system.
-
Citations
37 Claims
-
1. A code generation system for generating program code for implementing a software system specified by specification data, comprising:
-
an input component adapted to receive the specification data;
a processing component adapted to generate further specification data in dependence on the received specification data; and
a code generator adapted to generate the program code from the specification data and the further specification data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 26, 27)
-
-
10. A code generation system for generating program code for implementing a software system specified by specification data, comprising:
-
a meta-model processor adapted to receive a meta-model specification defining types of elements which may be specified in the specification data and to generate a meta-model representing said types of elements in dependence on the meta-model specification;
a specification processor adapted to process the specification data in dependence on the meta-model and to generate a system model of the software system from the specification data in accordance with the meta-model; and
a code generator adapted to generate the program code from the system model. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A code generation system for generating program code for implementing a software system specified by specification data, the system comprising:
-
an input component for receiving specification data for the software system;
storage for storing a plurality of templates, wherein the templates define sections of program code;
storage for storing a plurality of code generation controls, wherein the controls each comprise generate-time executable code routines external to the templates and the specification data and wherein at least some of the templates include references to controls;
a code generation component for applying selected templates to elements of the specification data to generate corresponding sections of generated program code based on the templates;
a processing component for executing controls selected based on the references in the templates and incorporating the output from the controls into the program code. - View Dependent Claims (18, 19, 20, 21, 22, 23)
-
-
24. A code generation system for generating program code for implementing a software system specified by specification data, comprising:
-
an input component for receiving the specification data, the specification data defining elements of the software system and specifying, for each element, an element type; and
an input component for receiving substitution instructions specifying for given element types used in the specification data, replacement element types to be used in generating the program code;
and wherein the system is adapted to generate, for a given element defined in the specification data, program code in dependence on the element type specified for the given element or, in preference thereto, in dependence on a replacement element type specified for that element type in such a substitution instruction. - View Dependent Claims (25)
-
-
28. A method of translating data in an input format representing a model of a software system into an output format, comprising:
-
storing a plurality of patterns defining model enhancements;
storing a plurality of output templates defining transformations of model components into the output format;
receiving model data in the input format at a model processor, the model data defining the model, and generating a representation of the model from the model data;
selecting one or more patterns from the stored patterns in dependence on the model representation and processing the model enhancements defined in the selected patterns at a pattern processor to produce an enhanced model representation;
selecting one or more output templates from the stored output templates in dependence on the enhanced model representation, and processing the selected output templates at a template processor to produce data in the output format representing the enhanced model. - View Dependent Claims (29, 30)
-
-
31. A method of enhancing a model, the model comprising a hierarchy of model components, the method comprising:
-
storing a plurality of patterns each defining one or more model components that may be added to the model;
receiving specification data at a specification processor, the specification data specifying the hierarchy of model components, and generating the model from the specification data;
processing the model components at a pattern processor and, in dependence on a given model component, selecting a pattern associated with the given component, and outputting further specification data specifying the additional model components defined in the pattern. - View Dependent Claims (32)
-
-
33. A method of generating output data based on templates, the templates including data and template processing commands, the template processing commands being expressed in a template language, the method comprising:
-
processing a template in a processing context comprising one or more objects to generate output data for the template, the template including a method invocation command referencing one of the objects and a template method; and
in response to the method invocation command, accessing the referenced template method, the method being expressed using the template language, and executing the template method in relation to the referenced object. - View Dependent Claims (34, 35, 36, 37)
-
Specification