Model driven development including aspect integration tool
First Claim
1. A software development tool implemented as a program for controlling computing equipment, wherein said program is stored in a non-transitory storage medium, said software development tool comprising:
- a model development interface implemented in a program that controls computing equipment, wherein said program is stored in a non-transitory storage medium, wherein said model development interface is configured to permit a developer to graphically design at least one software model;
an aspect design tool implemented as a program for controlling computing equipment, wherein said program is stored in a non-transitory storage medium, wherein said aspect design is for the model development interface configured to permit a user to specify at least one aspect to be applied to a model of the model development interface;
a model transformation engine implemented as a program for controlling computing equipment, wherein said program is stored in a non-transitory storage medium, wherein said aspect design is configured to transform a model of the model development interface having at least one aspect defined via the aspect design tool into automatically generated aspect code integrated with base language code; and
an invocation specification tool implemented as a program for controlling computing equipment, wherein said program is stored in a non-transitory storage medium, wherein said invocation specification tool is configured to graphically indicate when the aspect specified by the aspect design tool is to be invoked relative to when a model object to which the aspect is integrated is to be invoked, wherein the model transformation engine interweaves the base code and the aspect code based upon selections made via the invocation selection tool.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention discloses a software development tool that includes a model development interface, an aspect design tool, and a model transformation engine. The model development interface can permit a developer to graphically design at least one software model. The aspect design tool for the model development interface can be configured to permit a user to specify at least one aspect to be applied to a model of the model development interface. The model transformation engine can transform a model of the model development interface having at least one aspect defined via the aspect design tool into automatically generated aspect code integrated with base language code.
127 Citations
18 Claims
-
1. A software development tool implemented as a program for controlling computing equipment, wherein said program is stored in a non-transitory storage medium, said software development tool comprising:
-
a model development interface implemented in a program that controls computing equipment, wherein said program is stored in a non-transitory storage medium, wherein said model development interface is configured to permit a developer to graphically design at least one software model; an aspect design tool implemented as a program for controlling computing equipment, wherein said program is stored in a non-transitory storage medium, wherein said aspect design is for the model development interface configured to permit a user to specify at least one aspect to be applied to a model of the model development interface; a model transformation engine implemented as a program for controlling computing equipment, wherein said program is stored in a non-transitory storage medium, wherein said aspect design is configured to transform a model of the model development interface having at least one aspect defined via the aspect design tool into automatically generated aspect code integrated with base language code; and an invocation specification tool implemented as a program for controlling computing equipment, wherein said program is stored in a non-transitory storage medium, wherein said invocation specification tool is configured to graphically indicate when the aspect specified by the aspect design tool is to be invoked relative to when a model object to which the aspect is integrated is to be invoked, wherein the model transformation engine interweaves the base code and the aspect code based upon selections made via the invocation selection tool. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A model driven architecture (MDA) transformation engine comprising:
-
a set of programmatic instructions stored within a non-transitory machine readable storage medium, which when read by the machine cause the machine to perform the steps of; graphically presenting the design model using a software modeling application; identifying a class diagram model that is bound to at least one aspect; graphically indicating, at least one pointcut for the aspect using the software modeling application, wherein the aspect code is automatically interwoven in accordance with the pointcut; and transforming the class diagram model into base code and aspect code, wherein the base code is interwoven with the aspect code, wherein other than binding the aspect to design model using a model development tool, no manual specification of join points or pointcuts for the aspect code occurs. - View Dependent Claims (8, 9, 10)
-
-
11. A method for creating software solutions having interwoven aspect oriented programming (AOP) code comprising:
-
establishing, via computing equipment executing at least one program stored in a non-transitory storage medium, a design model for a software project using a software modeling application; graphically presenting, via computing equipment executing at least one program stored in a non-transitory storage medium, the design model using the software modeling application; annotating, via computing equipment executing at least one program stored in a non-transitory storage medium, a model object as being associated with an aspect using the software modeling application; and graphically indicating, via computing equipment executing at least one program stored in a non-transitory storage medium, at least one pointcut for the aspect using the software modeling application, wherein the aspect code is automatically interwoven in accordance with the pointcut; automatically transforming, via computing equipment executing at least one program stored in a non-transitory storage medium, the design model into source code, said source code comprising base code and aspect code, wherein the aspect code is automatically interwoven with the base code. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
Specification