Automation of Software Application Engineering Using Machine Learning and Reasoning
First Claim
1. A computer implemented method in a data processing system for automatically creating a desired software application design, the computer implemented method comprising computer implemented steps of:
- responsive to an input to create a desired software application design, retrieving functional requirements for the desired software application design from a requirement module;
retrieving non-functional requirements associated with each retrieved functional requirement from the requirement module;
retrieving software models associated with the retrieved functional requirements from an industry model repository;
retrieving software patterns associated with the retrieved non-functional requirements from a pattern asset adviser;
transforming the retrieved software models into software code for the desired software application design;
applying the retrieved software patterns to associated code sequences in the software code to automatically create an architecture for the desired software application design; and
outputting the architecture for the desired software application design for use by a user.
1 Assignment
0 Petitions
Accused Products
Abstract
A system for automatically creating a desired software application design. In response to an input to create a desired software application design, functional requirements for the desired software application design are retrieved. Then, non-functional requirements associated with each retrieved functional requirement are retrieved. In addition, software models associated with the retrieved functional requirements are retrieved. Further, software patterns associated with the retrieved non-functional requirements are retrieved. Then, the retrieved software models are transformed into software code for the desired software application design. Also, the retrieved software patterns are applied to associated code sequences in the software code to automatically create an architecture for the desired software application design. Finally, the architecture for the desired software application design is outputted for use by a user. The decisions made during the software application design process are also captured for analysis for future improvement of the desired software application design.
133 Citations
20 Claims
-
1. A computer implemented method in a data processing system for automatically creating a desired software application design, the computer implemented method comprising computer implemented steps of:
-
responsive to an input to create a desired software application design, retrieving functional requirements for the desired software application design from a requirement module; retrieving non-functional requirements associated with each retrieved functional requirement from the requirement module; retrieving software models associated with the retrieved functional requirements from an industry model repository; retrieving software patterns associated with the retrieved non-functional requirements from a pattern asset adviser; transforming the retrieved software models into software code for the desired software application design; applying the retrieved software patterns to associated code sequences in the software code to automatically create an architecture for the desired software application design; and outputting the architecture for the desired software application design for use by a user. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A data processing system for automatically creating a software application design, comprising:
-
a bus system; a storage device connected to the bus system, wherein the storage device includes a set of instructions; and a processing unit connected to the bus system, wherein the processing unit executes the set of instructions to retrieve functional requirements for a desired software application design from a requirement module in response to an input to create the desired software application design;
retrieve non-functional requirements associated with each retrieved functional requirement from the requirement module;
retrieve software models associated with the retrieved functional requirements from an industry model repository;
retrieve software patterns associated with the retrieved non-functional requirements from a pattern asset adviser;
transform the retrieved software models into software code for the desired software application design;
apply the retrieved software patterns to associated code sequences in the software code to automatically create an architecture for the desired software application design; and
output the architecture for the desired software application design for use by a user.
-
-
17. A computer program product stored in a computer usable medium having computer usable program code embodied therein for automatically creating a software application design, the computer program product comprising:
-
computer usable program code configured to retrieve functional requirements for a desired software application design from a requirement module in response to an input to create the desired software application design; computer usable program code configured to retrieve non-functional requirements associated with each retrieved functional requirement from the requirement module; computer usable program code configured to retrieve software models associated with the retrieved functional requirements from an industry model repository; computer usable program code configured to retrieve software patterns associated with the retrieved non-functional requirements from a pattern asset adviser; computer usable program code configured to transform the retrieved software models into software code for the desired software application design; computer usable program code configured to apply the retrieved software patterns to associated code sequences in the software code to automatically create an architecture for the desired software application design; and computer usable program code configured to output the architecture for the desired software application design for use by a user. - View Dependent Claims (18, 19, 20)
-
Specification