Method and system for model driven development

US9639333B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9639333-B2
Application numberUS-201514801888-A
CountryUS
Kind codeB2
Filing dateJul 17, 2015
Priority dateSep 25, 2014
Publication dateMay 2, 2017
Grant dateMay 2, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Embodiments of the present invention disclose a system and computer program product for providing a technical solution for model driven development. Program code is analyzed to determine the execution sequence of states of the program code. The program code is generated by performing a first transformation to a model. The model includes an abstract description of a business implemented by the program code. At least part of the statement of the program code is grouped into functional blocks. A visual representation of the program code is created. The visual representation is based on the execution sequence and the functional blocks. A code snipped is determined to be preserved in the program code based on a user's annotation of the visual representation. The code snippety is to be preserved in new program code generated by performing a second transformation to the model. The second transformation is executed after the first transformation.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer system for model driven development, the computer system comprising: one or more computer processors; one or more computer-readable storage media; program instructions stored on the computer-readable storage media for execution by at least one of the one or more processors, the program instructions comprising: instructions to analyze program code to determine execution sequence of statements of the program code, the program code being generated by performing a first transformation to a model, the model including an abstract description of a business implemented by the program code; instructions to group at least a part of the statements of the program code into functional blocks; instructions to create a visual representation of the program code based on the execution sequence and the functional blocks, for display; instructions to determine a code snippet to be preserved in the program code, in response to receiving an annotation input of the visual representation, the code snippet to be preserved in new program code generated by instructions to perform a second transformation to the model, the second transformation being executed after the first transformation; instructions to generate, by the computer, metadata of the code snippet; and instructions to update, by the computer, a transformation policy of the model, wherein the transformation policy is based on the metadata to control the second transformation of the model, and a user selection of the visual representation of the program code based on the execution sequence and the functional blocks. 2. The system of claim 1 , wherein the instructions to group at least a part of the statements of the program code into functional blocks further comprises: instructions to parse a control flow of the program code based on a predefined keyword in the program code to determine the functional blocks. 3. The system of claim 1 , wherein the instructions to create a visual representation of the program code based on the execution sequence and the functional blocks further comprises: instructions to create a graphical representation of the program code based on the execution sequence and the functional blocks. 4. The system of claim 1 , wherein the instructions to create a visual representation of the program code based on the execution sequence and the functional blocks comprises: instructions to determine semantic content of a variable or process in the program code based on a vocabulary associated with at least one of the model and the program code; and instructions to present the semantic content in the visual representation of the program code. 5. The system of claim 1 , wherein the metadata indicates a functional block to which the code snippet belongs and a location of the code snippet in the program code. 6. The system of claim 5 , wherein the location of the code snippet in the program code is indicated by at least one of: a start line number and an end line number of the code snippet in the program code; a start line number and the number of lines of the code snippet in the program code; an end line number and the number of lines of the code snippet in the program code; and at least one previous code snippet and at least one subsequent code snippet of the code snippet in the program code. 7. The system of claim 1 , wherein the metadata and the program code are stored independently. 8. The system of claim 1 , further comprising: instructions to retrieve the code snippet from the program code based on the metadata in response to a node corresponding to the code snippet being absent in the model; and instructions to insert the code snippet into the new program code based on the execution sequence. 9. The system of claim 1 , wherein the metadata indicates a location at which the code snippet is inserted into the new program code. 10. A computer program product for model driven development, the computer program product comprising: one or more computer-readable storage media and program instructions stored on the one or more computer-readable storage media, the program instructions comprising: instructions to analyze program code to determine execution sequence of statements of the program code, the program code being generated by performing a first transformation to a model, the model including an abstract description of a business implemented by the program code; instructions to group at least a part of the statements of the program code into functional blocks; instructions to create a visual representation of the program code based on the execution sequence and the functional blocks, for display; instructions to determine a code snippet to be preserved in the program code, in response to receiving an annotation input of the visual representation, the code snippet to be preserved in new program code generated by instructions to perform a second transformation to the model, the second transformation being executed after the first transformation; instructions to generate, by the computer, metadata of the code snippet; and instructions to update, by the computer, a transformation policy of the model, wherein the transformation policy is based on the metadata to control the second transformation of the model, and a user selection of the visual representation of the program code based on the execution sequence and the functional blocks. 11. The computer program product of claim 10 , wherein the instructions to group at least a part of the statements of the program code into functional blocks further comprises: instructions to parse a control flow of the program code based on a predefined keyword in the program code to determine the functional blocks. 12. The computer program product of claim 10 , wherein the instructions to create a visual representation of the program code based on the execution sequence and the functional blocks further comprises: instructions to create a graphical representation of the program code based on the execution sequence and the functional blocks. 13. The computer program product of claim 10 , wherein the instructions to create a visual representation of the program code based on the execution sequence and the functional blocks comprises: instructions to determine semantic content of a variable or process in the program code based on a vocabulary associated with at least one of the model and the program code; and instructions to present the semantic content in the visual representation of the program code. 14. The computer program product of claim 10 , wherein the metadata indicates a functional block to which the code snippet belongs and a location of the code snippet in the program code. 15. The computer program product of claim 14 , wherein the location of the code snippet in the program code is indicated by at least one of: a start line number and an end line number of the code snippet in the program code; a start line number and the number of lines of the code snippet in the program code; an end line number and the number of lines of the code snippet in the program code; and at least one previous code snippet and at least one subsequent code snippet of the code snippet in the program code. 16. The computer program product of claim 10 , wherein the metadata and the program code are stored independently. 17. The computer program product of claim 10 , further comprising: instructions to retrieve the code snippet from the program code based on the metadata in response to a node corresponding to the code snippet being absent in

Assignees

Inventors

Classifications

  • Visualisation of programs or trace data · CPC title

  • G06F8/35Primary

    model driven · CPC title

  • Graphical or visual programming · CPC title

  • Parsing · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9639333B2 cover?
Embodiments of the present invention disclose a system and computer program product for providing a technical solution for model driven development. Program code is analyzed to determine the execution sequence of states of the program code. The program code is generated by performing a first transformation to a model. The model includes an abstract description of a business implemented by the p…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F8/35. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 02 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).