WO2016181368A1 - Método implementado por computador que expone aplicaciones tipo software a partir de especificaciones de diseño - Google Patents
Método implementado por computador que expone aplicaciones tipo software a partir de especificaciones de diseño Download PDFInfo
- Publication number
- WO2016181368A1 WO2016181368A1 PCT/IB2016/052806 IB2016052806W WO2016181368A1 WO 2016181368 A1 WO2016181368 A1 WO 2016181368A1 IB 2016052806 W IB2016052806 W IB 2016052806W WO 2016181368 A1 WO2016181368 A1 WO 2016181368A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- models
- visual
- functional
- components
- software
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/35—Creation or generation of source code model driven
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
Definitions
- the present invention is a system and method implemented by computer to automatically produce fully operable software-type applications from software design specifications.
- the system allows class designs and screen designs (software design specifications) to be entered through an input / output device.
- the processor applies two protocols to automatically create functional and visual models that are stored in a database memory. Then, it combines these models with graphic components, and automatically instance software-type applications, without compiling code generation, that are presented to the user to be operated and produce information as a result.
- Architect defines the application's layer architecture taking into account the environment in which users will operate. Examples of architectures are SOA (services oriented architecture), Client Server, etc.
- Database programmer builds the structures where the data that the user generates with the use of the application will be stored. There are tools called database engines of different technologies but currently working with common standards already established.
- Application programmer writes the program code in a defined language (Java, C #, Vbnet, etc.) which is then compiled to obtain the object code that the computer will execute, providing the final application for user access.
- a defined language Java, C #, Vbnet, etc.
- User interface builder builds screens, visual components and graphic style templates that allow the computer program to present itself to the user in a more friendly and usable way.
- Document US2006 / 0015839 discloses a system and a method generates compiling J2EE source code, from two possible sources, a database where all the parameters, tables and architecture of the system to be developed are specified in detail, that is to say that requires as input the detailed knowledge of the technical design. From this detailed definition builds an XML file that can be intervened by the user to adjust the design.
- the final XML document is processed by a framework tool (framework) that automatically generates the J2EE code and the system architecture.
- a forms tool automatically generates the user interface forms, also based on the structures defined in the source XML document.
- a deployment tool of the system integrates the source database and the program code into a compilable structure thus achieving the resulting software application.
- document US2006 / 00115839 generates compilable J2EE code and requires prior knowledge of the detailed computer architecture of the system to be developed and of the structure of the database, parameters object and field tables. It also requires a detailed knowledge of XML and in some cases the introduction of code directly, to execute some actions not performed by the configuration and editing programs presented.
- document US2002 / 0077823 discloses a method and system for creating software applications that can operate on multiple client platforms, particularly including voice-interacting platforms, which implies a method for recognizing voice and interpreting it as input data.
- a user of a mobile device with screen or keyboard limitations can receive information from a web page in audio format, and can interact with the web page using spoken words and phrases instead of written ones.
- This document is limited to analyzing the spoken language to transform it into text, which is subsequently analyzed as any input data of an application. Unlike the present invention, said document is not intended to build a software model, nor its architecture and specification documents, automatically.
- This document is supported by VoiceXML, the standard language for specifying voice components.
- VoiceXML the standard language for specifying voice components.
- To interpret the received commands it uses manually modifiable voice conversation templates, which are manual scripts with which the programmer must characterize the flow of the received commands and the responses that the application must provide.
- To define those oral commands or phrases that the application can recognize when they are spoken by the user the developer must create a 'grammar' that is an explicit characterization of the expected spoken commands and serves to restrict the entries to those commands, to a number Small allowed word sequences.
- the system proposed in this patent also includes a mechanism for the programmer to define "grammar in natural language", which is another facility to train the application with the type of expected answers, supported by templates, with their own phrases. Then it is necessary for the programmer to manually link the spoken components identified with application variables to be subsequently processed. Finally, to ensure that said spoken components are correctly identified, it is necessary to have a database of acoustic patterns and pronunciations.
- This document provides a mechanism to receive voice commands and transform them into input variables of an application, and in an equivalent way extrapolate the reverse case to expose output variables as self-generated voice commands.
- document US2012 / 0210296 discloses a method for creating BPM (Business Process Management) software applications. It uses pre-created software modules, which represent different process-related functionalities and are assembled to achieve the resulting software application, based on the selection a user makes, using predefined natural language words and associated with the modules in a goal. -data.
- the user can choose the processes from a list of terms that is exposed and managed by the system linked to the existing and available modules.
- the user can also implement functions that are not initially available in the list, but which he defines as a combination of existing modules and are added to the list of terms.
- the present invention unlike US2012 / 0210296, does not use pre-created process functionalities, allows the use of free natural language and from it builds functionality by creating models that are instantiable as a software application, not only for solutions BPM, but for all types of solutions that can be described in natural language.
- the present invention does not imply a method of compiling code generation, nor does it limit the results to a finite list of functionalities.
- US2012 / 0210296 does not operate on the structure of language, but uses language to facilitate the selection of technical components of functional programs.
- the present invention replaces the programming process with a machine that produces software automatically from a design of classes and screens that represent a case of software type application to be built, given as input of the process.
- the present invention solves the central edges of the industry problem as follows:
- the present invention produces the result automatically without generating program code, from the functional and visual models stored in a database memory, achieved by applying the protocols of the present invention to the designs of classes and screens provided as input by an user.
- interpreters In the state of the art inventions that are interpreters are reported. In the software industry, interpreters differ from compilers or assemblers in that while they translate a program from its description into a programming language into the system machine code, the interpreters only perform the translation as necessary. , typically, instruction by instruction, and usually do not save the result of such translation as code.
- the present invention is a model instantiator because it does not solve the software from the real-time compilation of each of the instructions in a program. In the present invention there is no need to program the program instructions, since they are replaced by models stored in a database which, when invoked by a model instantiating engine, by executing multiple program instructions compiled as part of the engine, create in memory the functionalities represented by the models.
- the program flow is under the control of the user and the recurring invocation of some models with others, which is materialized from the instructions compiled in the engine.
- the model instantiating engine of the present invention is not limiting the resolution of any particular case, it is capable of instantiating from any set of models referring to any functionality, the modification of said functionality is made by adding or removing models of the database, without the need to modify a compiled program. This is easier and faster than creating new programs for new functionalities and does not require program testing.
- interpreters or compilers to solve the functionality, it is necessary to perform program testing with the impact that this activity generates in the iterations until a quality software is achieved. 4.
- the user interface is the means by which the user can communicate with a machine, a computer or a computer, and comprises all the points of contact between the user and the equipment.
- Software application it consists of two parts: the set of conceptual models that describe the business and determine the rules of functional behavior of the solution, and the set of visualization models that will make it possible for this functionality to materialize in a user interface , with which a user interacts.
- Programming Computer programming should be understood as the process of coding, debugging and maintaining the source code of computer programs. The source code is written in a programming language. The purpose of programming is to create programs that exhibit desired behavior. The process of writing code frequently requires knowledge in several different areas, in addition to mastery of the language to be used, specialized algorithms and formal logic. Programming does not necessarily involve other tasks such as the analysis and design of the application (but the design of the code), although they are usually merged into the development of small applications.
- Object Oriented Programming Paradigm It is the most commonly used programming paradigm.
- the central nucleus of this paradigm is the union of data and processing in an entity called "object”, in turn related to other entities "object”.
- object In turn related to other entities "object”.
- Traditionally data and processing have been separated into different areas of software design and implementation. This caused that big developments had problems of reliability, maintenance, adaptation to the changes and scalability.
- Metaclasses In the OO paradigm a metaclass is a class whose instances are classes. This concept is applied in the functional specification protocol of the present invention with some particularities.
- Program code is the set of instructions and data to be processed by a computer, written in a language that the computer can interpret and execute.
- the computer code can be binary or source code written in a higher level language.
- Procedural code this is the name of the program code generated in the structured programming style. This style is based on structuring the code of a program in components, which are called procedures, sub-tunnels or functions.
- interpreter In computer science, interpreter is a computer program capable of analyzing and executing other programs. Interpreters differ from compilers or assemblers in that while they translate a program from its description in a programming language to the system machine code, interpreters only perform translation as necessary, typically instruction by instruction. , and usually do not save the result of such translation.
- Compiler A compiler is a computer program that translates a written program into a programming language into machine language. This translation process is known as compilation.
- System in the present invention it should be understood as a set of electronic or opto-electronic elements that interact with each other to display, in a visual device, software type applications based on design specifications.
- UI component they are portions of code (HTML or other) that are used to visualize the exposure of information on a device of the monitor type or similar. These components are known as third-party component sets and are used in the software industry as complements in the development of software applications. 5. Brief description of the invention
- the present invention discloses a system and a method that, based on the entry of logical information structures in an electronic device consisting of memory and processor, automatically produces outputs in visual devices, which can be operated to create business process information. , replacing software applications that are normally developed through traditional programming known in the software industry.
- the method implemented by computer interprets and exposes software-type applications based on design specifications that include the steps of: loading via an Input / Output Device 120, the functional specification protocol (PEF), the visual specification protocol (PEV) and the UI resources and store them in a database memory 130;
- the present invention comprises a system that instantiates and exposes operational software type applications based on software design specifications, comprising:
- an input / output device 120 configured as CDF Interface 121, CDV Interface 122, Application Interface 123 to enter the software design specifications and expose the resulting software applications;
- a central processing unit (CPU) 110 connected to the input / output device 120 containing: a general memory 140 is in communication with the input / output device 120, which interacts with the processor 150, configured to volatilely store the functional, visual and UI components; Y
- processor 150 configured to receive at least one software design specification through the Input / Output device 120; said processor configured as a model validator 151 to validate the software design specification against the protocols of Stage A, and identify the corresponding functional and visual models;
- said processor configured as a UI 152 sorter to combine the resulting software type application, combining the functional, visual models and UI resources; Y,
- said processor configured as a model instantiator 153 to expose the resulting software type application in Application Interface 123; Y
- a database memory 130 connected to the CPU 110, in communication with the processor 150, configured to store statically, the Visual PEV specification protocol in a logical structure PEV 131, the PEF functional specification protocol in a logical structure PEF 132 and UI resources in a logical structure Resources UI 133 and also configured to dynamically store visual models in a logical structure MV Models 134, functional models in a logical structure MF 135 Models and objects in a logical structure Objects 136. 6. Brief description of the figures
- FIG. 1. shows the structure of the system of the present invention.
- FIG. 1A shows the PEF functional specification protocol.
- FIG. IB shows the visual specification protocol PEV.
- FIG. 1 C shows the logical structure of the database memory MF Models.
- FIG. ID. shows the logical structure of the database memory MV models.
- FIG. 1E. shows the logical structure of the database memory Objects.
- FIG. 2. shows the steps of the method of the present invention.
- FIG. 2A shows the detail of sub-stages of Stage A.
- FIG. 2B shows the detail of stage B sub-stages.
- FIG. 2B1. shows an example of identification of functional components and types 00.
- FIG. 2 C shows the detail of sub-stages of Stage C.
- FIG. 2C1. shows an example of application of the PEF protocol on a class diagram
- FIG. 2C2. shows an example of application of the PEV protocol on a screen diagram
- FIG. 2D shows the detail of sub-stages of Stage D
- FIG. 3A shows an additional embodiment of the steps of the method of the present invention.
- FIG. 3B shows an additional embodiment of the steps of the method of the present invention.
- the present invention corresponds to a system and method implemented by computer that allow storing class models, which represent the detailed design of a software application in a database memory, and expose the resulting software type applications, through a instantiation process of these models.
- a model is the representation of a functional or visual design component, embodied in a database memory.
- a system like the one described in Figure 1 is used, to enter the class and screen designs in an Input / Output Device 120.
- the entered designs are transferred to general memory and then processed by Processor 150.
- the processor is configured to validate, combine and instantiate existing models in Database memories 134 and 135.
- the results of each processing function are set forth. to screens on an Input / Output Device 120.
- Input / Output Device 120 is the device through which software designs are entered. It allows a processor to present in structures (screens, projectors, televisions, printers, monitors, mobile devices, among others) structures where the user can enter class and screen designs (such as those shown in Figure 2B) , and display the resulting software applications, using the following configurations:
- CDF 121 interface it is a visual structure that allows the user to enter the functional design components of a software application from a class diagram, which are stored in Database Memory 130, in the logical configuration Models MF 135.
- CDV 122 interface it is a visual structure that allows the user to load the visual design components of a software application from a screen diagram associated with a class diagram, which will be stored in Database Memory 130, in the logical configuration MV models 134.
- Application Interface 123 This interface presents the visual structures of the resulting software application to the user, once Processor 150 installed the functional and visual models available in Database Memory 130.
- CPU 110 is the processing device of system 100. This device is structured to perform the functions of validation of functional and visual models against the respective protocol, the combination of UI resources and instantiation of the software application from the previous steps. It contains the general memory that allows the exchange between the functions and the rest of the system components.
- General Memory 140 it is a volatile storage that is used as an exchange device between the input / output device, the database memory and the processor. Performs the following functions according to your configuration:
- Matrix of Components UI 141 it is the configuration of the General Memory that allows access to the existing UI resources in Database Memory 133 and provides them to be exposed by Processor 150 as part of the resulting software type application .
- Matrix of MF 142 it is the configuration of the General Memory that makes it possible to process the Functional Models resident in the Database Memory 135 through the Processor 150 configured as the Model Installer 153, in correlation with the protocols stored in the base memories of data 131 and 132.
- Matrix of MV 143 it is the configuration of the General Memory that enables the processing of the Visual Models resident in the Database Memory 134 through the Processor 150 configured as the Model 153 Instancer, in correlation with the protocols stored in the base memories of data 131 and 132.
- Processor 150 is the device in which the processing and exchange tasks are carried out. Performs the following functions according to your configuration:
- Model Validator 151 it is the configuration of the Processor that is mainly responsible for validating the functional models entered by the user against the protocols resident in database memories 131 and 132, for once validated store them in database memories 134 and 135 respectively.
- UI 152 Sorter it is the configuration of the Processor that is mainly responsible for combining the UI resources resident in the database memory 133 with the visual models stored in the database memory 134, prior to the instantiation process.
- Model Installer 153 it is the configuration of the Processor that is mainly responsible for instantiating the functional models and visual models already combined with the UI resources, resident in the logical configurations of the general memory 142 and 143, to automatically expose the software application resulting in Application Interface 123.
- Database Memory 130 is a permanent memory that houses the data loaded by the user and generated by Processor 150 in its different configurations. This memory contains two storage configurations, a static configuration and a dynamic configuration.
- the static configuration stores those necessary fixed data that are loaded only once for processing that are not typical of "the case”.
- the dynamic configuration stores the "case" data that is loaded by each case.
- Static Memory
- PEF 131 configuration of Database Memory 130 that contains the rules used by Processor 150 to validate and instantiate the functional models, defined and loaded in this memory from the Visual Specification Protocol (VEP).
- VEP Visual Specification Protocol
- PEV 132 configuration of Database Memory 130 that contains the rules used by Processor 150 to validate and instantiate the functional models, defined and loaded in this memory from the Functional Specification Protocol (PEF).
- PEF Functional Specification Protocol
- Resources UI 133 configuration of the Database Memory 130 containing software components that allow the Processor 150 to display the visual models in the Application Interface 123, through user-operable screens. Dynamic Memory:
- MV 134 models configuration of the Database Memory 130 containing the functional models loaded by the user through the CDV Interface 122 and validated by the Processor 150 against the Visual Specification Protocol (VEP).
- VEP Visual Specification Protocol
- Logical structure RenderAction b Logical structure RenderActionEditor
- Logical structure RenderAttribute b.
- Logical structure RenderAttributeBase c.
- Logical structure RenderDiagramView
- Logical structure RenderBaseViewInheritance Models MF 135 configuration of the Database Memory 130 containing the functional models loaded by the user through the CDF Interface 121 and validated by the Processor 150 against the Functional Specification Protocol (PEF).
- PEF Functional Specification Protocol
- Logical structure MoreRelationClass iii. Objects 136 configuration of the Database Memory 130 containing the objects that the user generates, based on the models instantiated through the software type application, by Processor 150 configured as Model Installer 153.
- This memory consists of the following logical structures associated with the concepts of the Functional Specification Protocol, Object-Class quadrant, shown in Figure
- Configurations associated with the AttributeValue concept a. Logical structure MoreObject AttributeValue b. Logical structure MoreObj ect Attribute ValueFileExtended c. Logical structure MoreRelationObj ectMoreObj ect AttributeRelation 2. Configurations associated with the Object concept
- the present invention corresponds to the system described and a method implemented in computer that interprets and exposes software-type applications from design specifications.
- the method of the present invention comprises the following steps:
- Step A Load through the Input / Output Device 120 the Functional Specification Protocol (PEF) in the logical structure PEF 132 and the Visual Specification Protocol (PEV) with its corresponding UI resources in the logical structures PEV 131 and UI Resources 133 of Database Report 130.
- PEF Functional Specification Protocol
- PEV Visual Specification Protocol
- Stage B From a class design, identify and load the functional design components detailed in the class diagram through the CDF Interface 121 and temporarily store them in General Memory 140, in the MF 142 Matrix logical structure. From the design of screens, associated with the design of classes, identify and load the detailed visual design components through the CDV Interface 122 and temporarily store them in General Memory 140, in the logical structure Matrix of MV 143.
- Stage C Validate the functional and visual models created in Stage B, using Processor 150 in your Validator configuration of
- Stage D Recover from the Database Memory 130 the Functional Models and Visual Models created in Stage C, the UI Resources loaded in Stage A and store them in General Memory 140 using Processor 150 configured as a UI 152 Sorter To combine the UI Resources with the functional and visual components stored in General Memory 140 and instantiate the combined models and expose the screens of a software application in the Input / Output Device 120, Application Interface 123, using the Processor 150 configured as Model Instancer 153.
- Stage A Load the protocols into memory
- This protocol is the norm that defines the behavior that Processor 150 will give to the functional components that the user loads from a class design diagram, from now on PEF components, which determine the logical structuring for the operation of System 100
- the Architecture that defines the functionality of this Protocol can be seen in Figure 1A.
- the PEF protocol defines Metaclasses that refer to classes whose instances are classes, according to OO.
- classes that are instances of a Metaclass are known as Models (Instance-Class quadrant of Figure 1A).
- the protocol also defines Object classes (Object-Class quadrant of Figure 1A). These classes of ModelObject and ModelAttributeValue objects are the components that the 100 system uses to store instances of the Instance-Object Quadrant Models.
- the PEF Components are those belonging to the Model-Class and Object-Class quadrants. Within the Model-Class quadrant, there are: ModelClass, ModelRelationClass, ModelAttribute, Formula, Domain and FxCall. They are a set of Metaclasses that give rise to the functional Models that are stored in Database Memory 130, in the logical structure Models MF 135. Within the Object-Class quadrant are: ModelObject and ModelAttributeValue. They are a set of Classes that give rise to System Objects that are stored in Database Memory 130, logical structure Objects 136. These PEF components are described below:
- ModelClass It is a metaclass component because its instances are models. This component models design structures that are classes in design diagram 00. A ModelClass can inherit from another ModelClass.
- ModelClass It is a metaclass component that inherits from ModelClass.
- the functionality that extends to the ModelClass adds to this metaclass the ability to relate two ModelClass, which can be of two types: association or composition, as defined in OO.
- ModelRelationClass relates to
- This relationship could be used to represent the employee relationship that exists between a Physical person and a Legal Person, or it could also specialize the Person ModelClass in ModelClass Physical Person and Person Legal, to then create the ModelRelationClass specialty "is employed by" which would inherit from the ModelRelationClass "relates to”.
- ModelClass It is a metaclass component that makes up ModelClass.
- a ModelClass has a list of ModelAttributes.
- ModelAttribute is the representation of the attributes that will contain the models created as instances of ModelClass.
- a ModelAttribute defines, among other things, the type of data of the attribute to which it is giving rise.
- the protocol defines three classifications of data types for ModelAttribute.
- ModelAttribute Simple simple types are those whose value instance does not involve instances of ModelObject.
- ModelAttribute RelationObject these are attributes that exist in a ModelClass product that it participates in a ModelRelationClass. This type of attribute in its value instance, depending on the relationship, can have one or more instances of relationship objects. This determines the cardinality of the relationship.
- ModelAttribute ObjectReference this type of data is similar to the previous one, except that there is no product that the ModelClass to which it belongs participates in a relationship.
- the attribute itself is who knows the nature of the objects that will make up the instance of value for it.
- a formula is an independent model that has an expression and a set of parameters to receive information from the Model that invokes it.
- the formula when executed, always returns a value to the Model that calls it.
- the resulting value can be a single instance or multiple instances as part of multidimensional arrays and arrays.
- the functional specification protocol defines the formula component that is used to solve the logic that functionally requires the execution of mathematical operations that use model instances as arguments.
- the formula provides all mathematical operators for algebraic, matrix or set operations and allows the expression to be defined using the existing arguments as model instances of the Model-Instance quadrant of Figure 1A.
- Metaclass Formula The functionality that implies a mathematical resolution is implemented by a Metaclass Formula. Unlike traditional software design, where this type of functionality is implemented as a method in a class of model 00.
- the domain is a component that declares conditions that allow you to select a subset of model instances (operations between sets).
- a model instance can be found in Database memory 130, in the logical structure Objects 136, already validated and structured by Processor 150 based on the PEF protocol, or in an external unstructured memory based on the protocol. Consequently, Domains are classified as follows:
- Objects 136 obtaining collections of instances that can then be processed by other models through formulas.
- This component is responsible for associating any instance of ModelAttribute with the instances of Formula, when the value of the ModelAttribute instance comes from a Formula. It is a model that solves the evaluation of a formula expression and returns a result to the model that invokes it, sending the mathematical operators and the arguments that will be operated to the Processor 150. FxCall hydrates the argument values obtained from the instances, so that the invoked Formula requests resolution from Processor 150.
- ModelObject is the concrete class that materializes the instances of objects modeled with ModelClass.
- ModelAttribute Val ⁇ es ModelAttribute Val ⁇ es.
- ModelAttributeValue is the specific class whose instances represent the value of the attributes of a ModelObject instance.
- Example: The Model Article that is an instance of ModelClass has a specific instance of ModelObject "milk", whose ModelAttributeValue for the ModelAttribute name is "milk”.
- Sub-stage A2. Load Visual Specification Protocol (VEP)
- This protocol defines, as shown in Figure IB, the behavior that Processor 150 will give to the visual components that the user loads from a screen design diagram, from now on PEV components. These components determine the visual structuring that will be presented in the Input / Output Device 120, Application Interface 123 for the operation of System 100.
- the Architecture that defines the visual presentation of this Protocol can be seen in Figure IB.
- the Visual PEV Specification protocol defines how PEF components and PEV components are linked.
- a PEV component exposes the functionality of one or more PEF components through Input / Output Device 120, Application Interface 123.
- This definition of the protocol determines that it is possible to produce outputs on visual devices, which can be operated to create business process information without making a particular layer architecture design for each case, because the architecture is embedded in the PEF components.
- PEV components not linked to PEF components are created, for example: a visual model that contains a link to a web page.
- the PEV Components are: Application, ActionLink, AbmViewModel, ListViewModel, TreeViewModel, ReportViewModel.
- the Application component visually structures a software application.
- the protocol defines the Application component as a Model to specify an application.
- An application defines as more important aspect the Menu through which the user will have access to the exposed functionality.
- a Menu is a collection of MenuGroup models and arborized Menultem models, where MenuGroups can contain other MenuGroup or Menultem.
- the Menultem are those that link the action that will be carried out when the user clicks on it.
- An item is associated with one of the following display models (ViewModel): AbmViewModel, ListViewModel, TreeViewModel.
- the ViewModel component is what allows you to expose instances of ModelObject, on visual devices.
- a ViewModel component is composed of ActionLink components that allow the ViewModel to execute actions according to the ModelClass model of which it is an instance and the ViewModel class to which it refers.
- a PEV component defines a layout (visual layout structure or template) that will be displayed on the Input / Output Device 120, Application Interface 123, from ViewModel and its characteristics.
- ViewModel AbmViewModel, ListViewModel and TreeViewModel with different features and layout specifications.
- the protocol defines the AbmViewModel component as a Model to specify the rendering of a screen that allows to Register, Delete or Modify a ModelObject Object.
- the rendering of a screen exposes all or some of the ModelAttributeValues of an instance of ModelObject, according to the corresponding ModelClass model.
- the AbmViewModel component is composed of ActionLink components for being a ViewModel and extends its functionality through the components
- ControlViewType and the special features of AbmViewModel.
- ControlViewType components expose the ModelAttributeValues according to the data type of the attribute.
- attribute types is set forth: TextEditor: exposes ModelAttributeValues of type text.
- DateTimeEditor exposes ModelAttributeValues of type date.
- ObjectReferenceComboEditor exposes ModelAttributeValues of ModelObjects selector type.
- ObjectReferenceListEditor exposes ModelAttributeValues of ModelObjects selector type.
- the ActionLink components that make up the AbmViewModel are:
- Save and New Save the ModelObject instance and create a new instance for the user to complete the values of their attributes, exposing it in the visual structure of the AbmViewModel.
- actions are added that invoke other ViewModel.
- AttributeRenderlnfo This model is used to indicate the rendering particularities of a control that represents the value of a certain attribute of a ModelObject instance.
- ControlTemplate control selector to render a ModelAttribute.
- ControlTemplate is the concept that allows to indicate with which of these possible options the attribute will be effectively rendered.
- Container within AbmViewModel there is a container structure in order to organize the controls in a visual device. It is known as controls to each of the components that visually exposes an attribute. This container structure is tree-lined, that is, a container can include others. • ColumnViewModel: inside the containers, the controls are organized in columns and these internally have an order for the controls they contain.
- the protocol defines the ListViewModel component as a Model to specify the rendering of a screen that allows you to list collections of ModelObject instances.
- the rendering of this screen exposes the ModelAttributeValues that said ModelObject has according to the ModelClass model of which it is an instance, for a collection of ModelObject instances that are shown in a table where each ModelAttribute Valué occupies a cell, where the row corresponds to the instance and the column to the ModelAttribute.
- the ListViewModel component is composed of ActionLink components as a ViewModel and extends its functionality through the SearchViewModel, ColumnViewModel, ObiectReferenceListGridEditor and the special features of the ListViewModel.
- the ActionLink components that make up the ListViewModel are: New; Remove; Edit; To print; Run Formula
- NewMDestino invokes the creation of a new ModelObject of the related model as the destination of the relationship.
- NewMDestino YAsociar invokes the creation of a new ModelObject of the related model as the destination of the relationship, and materializes the relationship with the ModelObject that owns the relationship attribute.
- RemoveMDestino in a relationship instance, delete the related ModelObject, as well as the relationship instance.
- Herarchical view refers to the hierarchical structure representation of the graph of related objects using ModelRelationClass models.
- InLine Edition support for modifying the attributes of an object on the same line in the list.
- the protocol defines the TreeViewModel component as a Model to specify the rendering of a related ModelObjects tree using RelationObjects.
- the rendering of this screen consists of the exposure of all or some of the ModelAttribute Values that said RelationObjects invokes from the ModelClass it relates.
- a node in a tree, represented in a TreeNodeModel component then represents an instance of ModelObject and an instance of RelationObject, which is the relationship between the node in question and its parent node. Therefore, the nodes of the first level of the tree will not be represented by any instance of RelationObject since they do not relate to any parent node.
- the TreeViewModel component is composed of ActionLink components as a ViewModel and extends its functionality through the special features of the TreeViewModel.
- the ActionLink components that make up the TreeViewModel are:
- Delete Deletes the instance of RelationObject that links the current node with its parent node.
- NewMDestino invokes the creation of a new ModelObject instance that corresponds to the destination of the relationship for the corresponding ModelRelationClass model according to the tree display model for the node where the action is being invoked.
- NewMDestinoYAsociar idem NuevoMDestino, only then create the RelationObject instance to link the new ModelObject with the ModelObject represented by the node on which the action was invoked.
- RemoveMDestino removes the ModelObject instance represented by the current node.
- EditMdestino edit the ModelObject instance represented by the current node.
- ⁇ LoadOnDemand indicates if the tree should discover and load its nodes as the user interacts expanding the tree.
- EditOnClick indicates that the edition of the object represented by a node must be invoked when the user clicks on it.
- the ActionLink components define the actions that are available in the ViewModel to execute on ModelObject instances.
- Each subclass of ViewModel has a different ActionLinks list, in relation to the functionality it exposes on the visual device.
- a ReportViewModel contains the necessary specification so that Processor 150 configured as a Model Installer 153, can interact with any report delivery service, such as Reporting Services.
- ModelObject instance repository is compatible with the query methods that these services implement, so that by using the visualization components that accompany these technologies, reports can be generated and integrated in a simple and simple way. with all the necessary reporting features.
- Sub-stage A3. Load UI resources
- the PEV Visual Specification Protocol is designed so that Processor 150 can combine visual components with UI resources.
- the objective of this combination is that the Processor can quickly make these components available for modeling the User interface. This is achieved through the ControlViewType concept of the PEV Protocol loaded in Sub-stage A2, which is directly linked to a UI resource and allows from a ViewModel to indicate with which UI resource a certain portion of the user interface will be presented in the Device. Input / Output 120, Application Interface 123.
- UI Resources are partial portions declared in some UI language (for example, HTML5) and whose appearance can be adjusted with cascading style sheets (for example, css). These resources are stored in Database Memory 130, logical structure UI Resources 133. Then, when Processor 150, configured as UI Sorter 152 executes its functions, links these UI Resources with an instance of the ControlViewType logical structure, resident in Database Memory 130, logical structure Models MV 134, leaving these conjugate models available for use in the software application.
- UI Sorter 152 executes its functions, links these UI Resources with an instance of the ControlViewType logical structure, resident in Database Memory 130, logical structure Models MV 134, leaving these conjugate models available for use in the software application.
- Design documents, as shown in Figure 2B, refer particularly to two types of diagrams known to define the functionality and visual structures that define a software type application:
- Sub-stage Bl Identify the components of functional design
- the method refers to a mathematical function equivalent to the set logic, which corresponds to a PEF Domain component, it may be external if it refers to data external to the system.
- the user through the Input / Output Device 120, CD 121 Interface, loads the identified PEF components and the Processor 150, configured as Model 151 Validator, stores them in General Memory 140, MF Matrix logical structure 142. Sub-stage B2. Identify the components of visual design
- the Visual Specification protocol loaded in Stage A is applied to identify the ModelClass type concepts and create the visual models defined by the PEV protocol (Application, AbmViewModel, ListViewModel, TreeViewModel), as well :
- ModelRelationClass For each ModelRelationClass, it is determined that the following ViewModel should be created: ListViewModel, TreeViewModel c. To expose all PEF components, it is determined that an Application Model, a MenuViewModel model, a MenuGroup model and an ItemGroup model must be created for each ViewModel created in the previous steps.
- the system 100 allows editing the visual models created to achieve the greatest similarity with the screen designs corresponding to the "case" available as input of the process.
- the user through the Input / Output Device 120, CDV Interface 122, loads the identified PEV components and the Processor 150, configured as Model Validator 151, stores them in General Memory 140, logical structure MV Matrix 143.
- Stage B Generate CF and CD from natural language.
- this Stage B ' is a substitute for Stage B, as shown in Figure 3A.
- the user generates CF and CD from natural language, for example, using as described in patent application No. 15 / 141,748, entitled “PROCESS AND SYSTEM FOR GENERATING FUNCTIONAL ARCHITECTURE DOCUMENTS AND SPECIFICATION DOCUMENTS OF ANALYSIS AND DESIGN OF AUTOMATIC SOFTWARE FROM NATURAL LANGUAGE ", incorporated as a reference in its entirety.
- Processor 150 connects to the Database Memory, logical structure 172 identified in patent application No. 15 / 141,748, obtains the functional components of "the case” and stores them in the Matrix of MF 142.
- Processor 150 runs through the list of functional components obtained in Sub-stage B 'l and applies the Visual Specification Protocol PEV defined in Sub-stage A2. Obtain one or more visual components from each functional component, as shown in Fig 2C2 and store them in the MV Matrix 143. Stage C. Create functional and visual models
- the Processor 150 takes from the General Memory 140, logical structure Matrix of MF 142 the PEF components created in the Sub-stage Bl and executes the following sub-stages: Sub-stage Cl. Identify the PEF components and create the Models
- Processor 150 identifies the PEF components available in General Memory 140, created in Sub-stage B 1 and makes the specification of PEF concepts according to the protocol loaded in Sub-stage Al. Then it creates Functional Models, which specify the functionality that Processor 150 will use to instantiate the software application for "the case.” Processor 150 performs the following steps: 1. Scroll through the list to identify which PEF Concept should be created based on the Specification Protocol for each Type 00 of the design components as determined in Sub-stage B l.
- Processor 150 stores the Functional Models created in Database Memory 130, logical structure Models MF 135.
- Processor 150 identifies the PEV components available in General Memory 140, created in Sub-stage B2 and makes the specification of PEV concepts according to the protocol loaded in Sub-stage A2. Then create the Visual Models, which specify the functionality that the Processor 150 will use to expose the software-type application for "the case" by presenting information structures in the Input / Output Device 120, Application Interface 123.
- the Processor 150 leads to perform the following steps: 1. Scroll through the list of PEF Concept created in Sub-stage B2 based on what is determined in the visual specification protocol (VEP).
- VEP visual specification protocol
- Visual models are edited without modifying the link between the visual model and the functional model.
- dimensions and locations of the components in the layout of the Input / Output 120 device are changed without altering the link between the visual Model and the respective functional model, as established by the protocols loaded in Stage A.
- Processor 150 stores visual models in Database Memory 130, logical structure MV Models 134.
- Stage C Incorporate functional and visual models.
- this Stage C is a substitute for Stage C, as shown in Figure 3B.
- Stage D Read and instantiate functional and visual models as an operable software type application
- a conjugate model is a model that combines a Functional model MF (defined based on the PEF protocol) with a Visual MV model (defined based on the PEV protocol), therefore, represents the functionality and definition of the visual models associated with some UI Resource 133, combined in a single model that It is presented in Application Interface 123, as a software type application accessible and operable by a user.
- Processor 150 configured as Model Installer 153, is presented by means of an interpretation and delivery service of software applications.
- the first thing he receives is an application interface with which he can begin to interact.
- the interpretation in the present invention, is a process that is executed as a service and by reading conjugated models (MF Models + MV Models + UI Resources), resolves against the user interaction, the actions that the user is executing on a software type application exposed in Input / Output Device 120, Application Interface 123.
- conjugated models MF Models + MV Models + UI Resources
- Processor 150 configured as Model 153 Instancer, performs the following sub-stages:
- Sub-stage DI. Read and interpret MV visual models
- the models are structures that respect the protocols loaded in Stage A, stored in Database Memory 130, logical structures PEF 132 and PEV 131 respectively.
- Processor 150 configured as Model 153 Instancer, reads the visual models of Database Memory 130, logical structure MV 134 Models that are stored and validated according to the definitions of the PEV protocol loaded in Sub-stage A2 .
- the system 100 builds a layout type structure that organizes the layout of the ModelObject and ActionLinks instances on the layout and stores that structure in General Memory 140, logical structure of Component Matrix UI 141.
- Sub-stage D2. Read and interpret the MF functional models
- Processor 150 in its role as Model Installer 153, reads the functional models of Database Memory 130, logical structure Models MF 135 that are stored and validated according to the definitions of the PEF protocol loaded in the Sub-stage Al.
- Processor 150 of system 100 processes three types of functional models: calculation models, persisted data models and interactive data models:
- Calculation models processes the expressions of the formula classes found in the MF repository by transporting the expression to the service that resolves it by returning the result as an instance of ModelAttribute through FxCall.
- Persistent data models processes the access expression to the Database Memory 130 provided by the Domain classes, which act on the Object 136 repository, executing the one found in the MF repository.
- Interactive data models processes the data that the user enters in the Application Interface 123, interactively through the ActionLinks of each ViewModel with which the user interacts.
- Processor 150 of system 100 interprets and instantiates a business-type structure and stores it in General Memory 140, logical structure of Component Matrix UI 141, associated with the visual structure created in Sub-stage DI, where links between visual models and instantiated functional models respond to the logic of the protocols loaded in Stage A.
- the UI Resources are the software components pre-hosted in the Database Memory 130, logical structure UI Resources, which when executed associated with a visual model allow the generation of the screen drawing in the Application Interface 123. They are the Processing definitions of visual models. Different sets of UI resources are marketed in the Software industry, which can be incorporated into the system as indicated in Sub-stage A3, to offer different display modes for the resulting software-like applications.
- system 100 selects a component of Matrix MF 142, its corresponding component of Matrix MV 143 and a Resource UI 133 compatible with the type of MV selected.
- Processor 150 configured as a UI Compactor 152, combines the selected components by providing as an argument of the functions of the UI Resource, the parts of the conjugate model (Model MF + Associated Model MV) that the component requires to function.
- the Processor 150 exposes a conjugate component in the Input / Output Device 120, repeating the procedure for each of the components created for "the case".
- An exposed component constitutes an operational screen of a software-type application that presents action buttons, boxes where the User can enter data and other functionalities that are encompassed by the conjugate model.
- a Model Model Class that has a ModelAttribute name, is exposed in an AbmViewModel that defines a screen with a TextEditor to edit the MOdelAttribute Name instance. This screen defines a function for each ActionLink of the Model View.
- the ViewModel specifies that it will use the UI Component called "3d TextBox control" to display the name, whereby the Processor 150 combines the mentioned component that is stored in the UI Resources Memory 133 to complete the conjugate model. This collation allows the name text box to be displayed on the Input / Output 120 device with a colored 3d appearance, depending on the characteristics of the "TextBox 3d control” component.
- the TextEditor type component is combined with the 3D textbox UI Resource and is associated with the ModelAttribute functionality to make the Processor 150 install in the Application Interface 123 a box where a user can enter a text, which has a three-dimensional appearance and support the reception of the text and then persist the data in the Database Memory 130, logical structure Objects 136.
- Processor 150 configured as Model Installer 153, obtains instances of the ModelObject associated with the conjugate model (ModelClass-ViewModel-Resource UI) that is exposed to the user.
- the AttributeValues corresponding to the selected instance are sent to the Input / Output device 120, Application Interface 123 according to the layout defined in the conjugate model and thus an operable software type application screen is presented to the user.
- Sub-stage D5. Receive and resolve user requests
- Processor 150 configured as Model Installer 153, executes the function corresponding to the functional model that forms the conjugate model on which the user is operating, through an ActionLink or any of the existing functionalities, as defined in the PEF protocol loaded in Sub-stage Al.
- Processor 150 configured as Model Installer 153, an instance update of the conjugate model that is exposed in the Input / Output device 120, Application Interface 123 occurs. Processor 150 takes the instance new and update the Input / Output 120 device with the changes produced.
- This stage is considered the initialization of the system, given that the protocols are loaded only once and eventually UI Resources are added to the system.
- Class 1 Attribute attribute Class2_Rel 1
- ModelAttribute attribute Class2_Rel 1 ModelAttribute attribute Class2_Rel 1
- FxCallReport Data_Rep
- FxCallReport Data_Rep
- Relationship 1 Relationship Relationship 1 ass Model Relationship 1
- Class 1 ModelAttribute List Class 1
- Class 3 Formula ABM View Model ABM Class 3
- Class 3 Formula List View Model List Class 3
- the Processor 150 configured as Model Validator 151, takes the list of functional components resident in General Memory 140, logical structure Matrix of MF 142 and exposes it in the Input / Output device 120, CDV interface 122, as it is shown in column 1 and 2 (Functional component, PEF Concept) of Table 2.
- Processor 150 reads the PEV visual specification protocol loaded in Sub-stage A2, and completes columns 3 and 4 (PEF Concept, Visual Model a create) and update General Memory 140, logical structure Matrix of MV 143 with this data.
- Stage C Create functional and visual models
- Processor 150 identifies the PEF components available in General Memory 140, MF Matrix 142, corresponding to columns 3 and 4 (PEF Concept and Model Name to be created) in Table 1, and makes the specification of PEF concepts according to the protocol loaded in Sub-stage Al. Go through the list, identify the PEF concept, and create the components defined for mathematics in the methods that require it according to the definition of the PEF protocol. This specification implies identifying the PEF concept and its corresponding logical structures in Database Memory 130, to create the functional models and store them in the logical structure MF 135 Models. In the present example, the following list of functional models is obtained as a result of this stage, stored in Database Memory 130, logical structure Models MF 135:
- ModelRelationClass Model Relationship 1 The technical structure for creating functional models can be seen in Figure 2C1, where each component of Table 3 is displayed, related to the concept of the PEF Protocol that corresponds to it.
- Class 1 1 List View Model j List Class 1
- Class 2 I List View Model j List Class 2
- Class 3 1 ABM View Model and ABM Class 3
- Class 3 1 List View Model and List Class 3
- Class 4 1 ABM View Model and ABM Class 4
- Class 4 1 List View Model j List Class 4
- Class 5 Class 5
- Sub-stage DI. Read and interpret MV visual models
- Sub-stage DI of the invention is executed, starting from the list in the example of Table 4.
- Sub-stage D2. Read and interpret the MF functional models
- Sub-stage D2 of the invention is executed, starting from the list in the example of Table 3.
- Sub-stage D5. Receive and resolve user requests
Abstract
Description
Claims
Priority Applications (11)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201680040249.2A CN107851001B (zh) | 2015-05-13 | 2016-05-13 | 用于基于设计规格显示软件型应用程序的计算机应用的方法 |
DK16792290.5T DK3296866T3 (da) | 2015-05-13 | 2016-05-13 | Fremgangsmåde implementeret af en computer, der præsenterer software-lignende applikationer baseret på designspecifikationer |
CA2985954A CA2985954A1 (en) | 2015-05-13 | 2016-05-13 | Computer-applied method for displaying software-type applications based on desing specifications |
ES16792290T ES2936090T3 (es) | 2015-05-13 | 2016-05-13 | Método implementado por computador que expone aplicaciones tipo software a partir de especificaciones de diseño |
MX2017014472A MX2017014472A (es) | 2015-05-13 | 2016-05-13 | Metodo implementado por computador que expone aplicaciones tipo software a partir de especificaciones de diseño. |
BR112017024159-5A BR112017024159B1 (pt) | 2015-05-13 | 2016-05-13 | Método implementado por computador e sistema que apresenta aplicações tipo software baseado em especificações de projeto |
JP2017559053A JP6725535B2 (ja) | 2015-05-13 | 2016-05-13 | 設計仕様書に基づきソフトウェアタイプアプリケーションを表示するコンピュータに実装された方法 |
FIEP16792290.5T FI3296866T3 (fi) | 2015-05-13 | 2016-05-13 | Tietokoneella toteutettava menetelmä, joka esittää ohjelmistotyyppisiä sovelluksia suunnittelumääritysten mukaisesti |
EP16792290.5A EP3296866B1 (en) | 2015-05-13 | 2016-05-13 | Method implemented by a computer that presents software-type applications based on design specifications |
IL255563A IL255563B (en) | 2015-05-13 | 2017-11-09 | A method implemented using a computer that displays software-type applications based on designed specifications |
CONC2017/0011542A CO2017011542A2 (es) | 2015-05-13 | 2017-11-10 | Método implementado por computador que expone aplicaciones tipo software a partir de especificaciones de diseño |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562161216P | 2015-05-13 | 2015-05-13 | |
US62/161,216 | 2015-05-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2016181368A1 true WO2016181368A1 (es) | 2016-11-17 |
Family
ID=57247885
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/IB2016/052806 WO2016181368A1 (es) | 2015-05-13 | 2016-05-13 | Método implementado por computador que expone aplicaciones tipo software a partir de especificaciones de diseño |
Country Status (14)
Country | Link |
---|---|
US (1) | US10379817B2 (es) |
EP (1) | EP3296866B1 (es) |
JP (1) | JP6725535B2 (es) |
CN (1) | CN107851001B (es) |
BR (1) | BR112017024159B1 (es) |
CA (1) | CA2985954A1 (es) |
CO (1) | CO2017011542A2 (es) |
DK (1) | DK3296866T3 (es) |
ES (1) | ES2936090T3 (es) |
FI (1) | FI3296866T3 (es) |
IL (1) | IL255563B (es) |
MX (1) | MX2017014472A (es) |
PT (1) | PT3296866T (es) |
WO (1) | WO2016181368A1 (es) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10831449B2 (en) | 2015-04-28 | 2020-11-10 | Lexica S.A.S. | Process and system for automatic generation of functional architecture documents and software design and analysis specification documents from natural language |
US10303441B2 (en) | 2015-04-28 | 2019-05-28 | Nadia Analía Huebra | Process and system for automatic generation of functional architecture documents and software design and analysis specification documents from natural language |
US10956681B2 (en) | 2018-01-30 | 2021-03-23 | Google Llc | Creating apps from natural language descriptions |
CN109343849A (zh) * | 2018-09-25 | 2019-02-15 | 珠海格力电器股份有限公司 | 一种系统、系统ui的设计方法及工业触摸屏 |
CN109814480B (zh) * | 2019-01-18 | 2021-10-08 | 广州宁基智能系统有限公司 | Plc与线控程序之间的可视化交互方法及系统 |
US11762634B2 (en) * | 2019-06-28 | 2023-09-19 | Asg Technologies Group, Inc. | Systems and methods for seamlessly integrating multiple products by using a common visual modeler |
CN110428223A (zh) * | 2019-07-23 | 2019-11-08 | 中国建筑第八工程局有限公司 | 建筑施工安全交底的方法、系统及bim+vr管理平台 |
CN112000318B (zh) * | 2020-08-31 | 2022-02-08 | 中国科学院长春光学精密机械与物理研究所 | 光电对抗装备教学训练系统通用架构方法、设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6289513B1 (en) * | 1999-06-01 | 2001-09-11 | Isaac Bentwich | Interactive application generation and text processing |
US20090183092A1 (en) * | 2007-10-03 | 2009-07-16 | Britesoft Solutions (M) Sdn Bhd | Customizable application system |
US20110088011A1 (en) * | 2009-10-14 | 2011-04-14 | Vermeg Sarl | Automated Enterprise Software Development |
US20120110558A1 (en) * | 2010-10-29 | 2012-05-03 | Microsoft Corporation | Customized binaries on-the-fly |
US8255869B2 (en) * | 2008-06-30 | 2012-08-28 | Rockwell Automation Technologies, Inc. | Industry template customization and transclusion for use in industrial automation and information solutions |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08320784A (ja) * | 1995-05-26 | 1996-12-03 | Nec Corp | プログラム作成方法 |
US6681383B1 (en) * | 2000-04-04 | 2004-01-20 | Sosy, Inc. | Automatic software production system |
US20020077823A1 (en) | 2000-10-13 | 2002-06-20 | Andrew Fox | Software development systems and methods |
US20030028579A1 (en) | 2001-08-06 | 2003-02-06 | Kulkarni Vinay Vasant | Process for component-based application development |
US7694272B2 (en) * | 2002-10-21 | 2010-04-06 | Sungard (Israel) Ltd | Method, a language and a system for the definition and implementation of software solutions by using a visualizable computer executable modeling language |
WO2004086222A2 (en) | 2003-03-26 | 2004-10-07 | Bizplus Limited | Development of software systems |
US8156469B2 (en) * | 2005-12-29 | 2012-04-10 | Sap Ag | Single composition of pattern modules |
CN100451954C (zh) * | 2005-12-29 | 2009-01-14 | 吉林大学 | 框架定制的模型驱动软件生成方法 |
US20080016176A1 (en) * | 2006-07-13 | 2008-01-17 | Ofir Leitner | System for development of games for mobile devices and distribution thereof |
JP2008052356A (ja) * | 2006-08-22 | 2008-03-06 | Hitachi Software Eng Co Ltd | ソースコード自動生成装置 |
US7734560B2 (en) * | 2006-08-23 | 2010-06-08 | Sap Ag | Loose coupling of pattern components with interface regeneration and propagation |
CN101004680B (zh) * | 2006-11-23 | 2011-06-22 | 福建顶点软件股份有限公司 | 一种以直接对象模型定义为核心的灵活快捷的软件开发方法及支持系统 |
US20100160039A1 (en) * | 2008-12-18 | 2010-06-24 | Microsoft Corporation | Object model and api for game creation |
US8701080B2 (en) * | 2010-04-05 | 2014-04-15 | Accenture Global Services Limited | Template components having constraints representative of best practices in integration software development |
US20120210296A1 (en) | 2011-02-14 | 2012-08-16 | Microsoft Corporation | Automatically creating business applications from description of business processes |
JP2015026139A (ja) * | 2013-07-24 | 2015-02-05 | 富士電機株式会社 | プログラム生成装置、プログラム生成方法、およびプログラム生成用プログラム |
US10303441B2 (en) | 2015-04-28 | 2019-05-28 | Nadia Analía Huebra | Process and system for automatic generation of functional architecture documents and software design and analysis specification documents from natural language |
-
2016
- 2016-05-13 CA CA2985954A patent/CA2985954A1/en active Pending
- 2016-05-13 JP JP2017559053A patent/JP6725535B2/ja active Active
- 2016-05-13 CN CN201680040249.2A patent/CN107851001B/zh active Active
- 2016-05-13 PT PT167922905T patent/PT3296866T/pt unknown
- 2016-05-13 MX MX2017014472A patent/MX2017014472A/es unknown
- 2016-05-13 EP EP16792290.5A patent/EP3296866B1/en active Active
- 2016-05-13 BR BR112017024159-5A patent/BR112017024159B1/pt active IP Right Grant
- 2016-05-13 DK DK16792290.5T patent/DK3296866T3/da active
- 2016-05-13 ES ES16792290T patent/ES2936090T3/es active Active
- 2016-05-13 US US15/154,660 patent/US10379817B2/en active Active
- 2016-05-13 WO PCT/IB2016/052806 patent/WO2016181368A1/es active Application Filing
- 2016-05-13 FI FIEP16792290.5T patent/FI3296866T3/fi active
-
2017
- 2017-11-09 IL IL255563A patent/IL255563B/en active IP Right Grant
- 2017-11-10 CO CONC2017/0011542A patent/CO2017011542A2/es unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6289513B1 (en) * | 1999-06-01 | 2001-09-11 | Isaac Bentwich | Interactive application generation and text processing |
US20090183092A1 (en) * | 2007-10-03 | 2009-07-16 | Britesoft Solutions (M) Sdn Bhd | Customizable application system |
US8255869B2 (en) * | 2008-06-30 | 2012-08-28 | Rockwell Automation Technologies, Inc. | Industry template customization and transclusion for use in industrial automation and information solutions |
US20110088011A1 (en) * | 2009-10-14 | 2011-04-14 | Vermeg Sarl | Automated Enterprise Software Development |
US20120110558A1 (en) * | 2010-10-29 | 2012-05-03 | Microsoft Corporation | Customized binaries on-the-fly |
Non-Patent Citations (1)
Title |
---|
See also references of EP3296866A4 * |
Also Published As
Publication number | Publication date |
---|---|
JP2018514878A (ja) | 2018-06-07 |
DK3296866T3 (da) | 2022-12-19 |
EP3296866B1 (en) | 2022-09-14 |
EP3296866A1 (en) | 2018-03-21 |
IL255563B (en) | 2020-03-31 |
FI3296866T3 (fi) | 2023-01-13 |
IL255563A (en) | 2018-01-31 |
US20170068519A1 (en) | 2017-03-09 |
CO2017011542A2 (es) | 2018-01-31 |
CN107851001B (zh) | 2021-11-23 |
BR112017024159A2 (pt) | 2018-07-17 |
ES2936090T3 (es) | 2023-03-14 |
US10379817B2 (en) | 2019-08-13 |
JP6725535B2 (ja) | 2020-07-22 |
CA2985954A1 (en) | 2016-11-17 |
EP3296866A4 (en) | 2019-01-16 |
CN107851001A (zh) | 2018-03-27 |
BR112017024159B1 (pt) | 2024-02-20 |
PT3296866T (pt) | 2023-01-17 |
MX2017014472A (es) | 2018-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2936090T3 (es) | Método implementado por computador que expone aplicaciones tipo software a partir de especificaciones de diseño | |
US10025565B2 (en) | Integrated software development environments, systems, methods, and memory models | |
US7774745B2 (en) | Mapping of designtime to runtime in a visual modeling language environment | |
US8527943B1 (en) | System and method of application development | |
CA2819008C (en) | Method and system for displaying selectable autocompletion suggestions and annotations in mapping tool | |
TWI577539B (zh) | 用於運行時間系統的電腦實施方法、電腦可讀取儲存記憶體及系統 | |
Lee | Building environment rule and analysis (BERA) language | |
Marin et al. | Generating native user interfaces for multiple devices by means of model transformation | |
Price | C# 10 and. NET 6–Modern Cross-Platform Development: Build apps, websites, and services with ASP. NET Core 6, Blazor, and EF Core 6 using Visual Studio 2022 and Visual Studio Code | |
Günther et al. | Design principles for internal domain-specific languages: A pattern catalog illustrated by ruby | |
Wojszczyk et al. | The process of verifying the implementation of design patterns—used data models | |
Samoylov | Learn Java 12 Programming: A step-by-step guide to learning essential concepts in Java SE 10, 11, and 12 | |
Trivedi | User interface implementation of environmental data integration system with React | |
Priya et al. | CODE PRESENCE USING CODE SENSE. | |
Kimura | Kanji Architectural Pattern | |
FERRERO LIGORRED | Development of a large-scale flutter app | |
Löffelmann et al. | Microsoft Visual Basic 2010 Developer's Handbook | |
Pigula et al. | Unified compile-time and runtime java annotation processing | |
Osenkov | Designing, implementing and integrating a structured C# code editor | |
De Carlos et al. | Runtime translation of model-level queries to persistence-level | |
Soden | Operational semantics for MOF metamodels | |
Meiser | Visualization Techniques for Rule-based Reasoning in Uncertain Knowledge Bases | |
Liang | Automatic generation of software applications: a platform-based MDA approach | |
Ráth et al. | Automated model transformations in domain specific visual languages | |
Lee et al. | Object-oriented design |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 16792290 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 255563 Country of ref document: IL |
|
ENP | Entry into the national phase |
Ref document number: 2017559053 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: NC2017/0011542 Country of ref document: CO Ref document number: MX/A/2017/014472 Country of ref document: MX |
|
ENP | Entry into the national phase |
Ref document number: 2985954 Country of ref document: CA |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2016792290 Country of ref document: EP |
|
REG | Reference to national code |
Ref country code: BR Ref legal event code: B01A Ref document number: 112017024159 Country of ref document: BR |
|
ENP | Entry into the national phase |
Ref document number: 112017024159 Country of ref document: BR Kind code of ref document: A2 Effective date: 20171109 |