IP Library Patent Application 14626872
Patent Application
App. No. 14/626,872

SERVICE MODELING AND VIRTUALIZATION

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
14/626,872
Abstract

The systems and methods described herein can be used to provide virtual service environments. In one embodiment, a virtual service model is generated by detecting one or more transactions, each of which includes a request sent from a requester to a software service and a response sent from the software service to the requester; storing information describing the detected transactions in a virtual service model, where the information describing each transaction includes information identifying a command included in the request and information identifying a response attribute included in the response; and generating information describing an unknown transaction, where the information describing the unknown transaction includes information identifying a first command and information identifying a first response attribute. The first command and the first response attribute are copies of a corresponding command and a corresponding response attribute associated with a corresponding one of the detected transactions.

Claims (62)

1 . A method comprising:

monitoring data traffic between a particular software component and a particular software service;

identifying a particular communication protocol utilized in the data traffic;

interpreting the data traffic, based on the identified particular communication protocol, to identify a request of the particular software service sent from the particular software component and a response to the request sent from the particular software component to the particular software component; and

generating a virtual service model of the particular software service from the identified request and identified response to the request.

2 . The method of claim 1 , further comprising parsing the identified request to identify a command of the identified request, and the virtual service model is generated based on the identified command.

3 . The method of claim 2 , wherein the identified request is further parsed to identify a request attribute of the identified request, and the virtual service model is generated based on the identified request attribute.

4 . The method of claim 3 , wherein the identified response is parsed to identify a response attribute of the identified response, wherein the response attribute is at least partially dependent on the request attribute and the virtual service model is generated based on the identified response attribute.

5 . The method of claim 1 , further comprising:

grouping the identified request with the identified response as a particular transaction; and

recording the particular transaction in the virtual service model of the particular software service.

6 . The method of claim 5 , further comprising interpreting the data traffic, based on the identified communication protocol, to identify transaction characteristics of the particular transaction, wherein the virtual service model is generated based on the identified transaction characteristics of the particular transaction.

7 . The method of claim 6 , wherein the transaction characteristics comprise timing information of the particular transaction and the virtual service model is generated to model responses to requests of the particular software service based on the timing information.

8 . The method of claim 6 , wherein the transaction characteristics comprise one of information identifying bandwidth usage during the particular transaction, information identifying processor usage during the particular transaction, and memory usage during the particular transaction.

9 . The method of claim 5 , further comprising:

identifying a second request of the particular software service sent from the particular software component;

identifying a response to the second request sent from the particular software service to the particular software component;

grouping the second request with the identified response to the second request as a second transaction; and

recording the second transaction in the virtual service model of the particular software service.

10 . The method of claim 9 , wherein the particular transaction is of a first transaction type and the second transaction is of a second, different transaction type.

11 . The method of claim 5 , further comprising determining whether the transaction is a stateful transaction.

12 . The method of claim 1 , wherein the virtual service model is configured to model operation of the particular software service within a virtual service environment.

13 . The method of claim 12 , wherein the virtual service environment is at least one of a development, testing, load testing, integration testing, and training environment.

14 . The method of claim of claim 1 , further comprising:

monitoring second data traffic between the particular software component and a second software service;

identifying a second communication protocol utilized in the second data traffic;

interpreting the second data traffic, based on the second communication protocol, to identify a request of the second software service sent from the particular software component;

interpreting the second data traffic, based on the second communication protocol, to identify a response to the request sent from the second software service to the particular software component; and

generating a second virtual service model of the second software service from the identified request of the second software service and identified response to the request of the second software service, wherein the second software service is different from the particular software service.

15 . The method of claim 14 , wherein the second communication protocol is different from the particular communication protocol.

16 . The method of claim 1 , wherein the particular software service is at least one of a web service, web site, legacy application, data service, order manager, transactional data store, enterprise resource planning (ERP) system, and enterprise application integration (EAI) system.

17 . The method of claim 1 , further comprising:

identifying that an attribute of the identified response is dependent on attributes of the identified request; and

defining a dependency of the attribute of the identified response on the values of the identified request in the virtual service model.

18 . The method of claim 1 , wherein the request comprises one of a method call to an object, a SOAP message, a Java messaging service (JMS) message, a request to access a web page, a request to access a web service, a database query, and packets destined for a particular network socket, and the like.

19 . A computer program product comprising a computer readable storage medium comprising computer readable program code embodied therewith, the computer readable program code comprising:

computer readable program code configured to monitor data traffic between a particular software component and a particular software service;

computer readable program code configured to identify a particular communication protocol utilized in the data traffic;

computer readable program code configured to interpret the data traffic, based on the identified particular communication protocol, to identify a request of the particular software service sent from the particular software component and a response to the request sent from the particular software service to the particular software component; and

computer readable program code configured to generate a virtual service model of the particular software service from the identified request and identified response to the request.

20 . A system comprising:

a processor device;

a memory element; and

a service model generator adapted to:

monitor data traffic between a particular software component and a particular software service;

identify a particular communication protocol utilized in the data traffic;

parse the data traffic, according to the identified particular communication protocol, to identify a particular request of the particular software service sent from the particular software component;

parse the data traffic, according to the identified particular communication protocol, to identify a response to the particular request sent from the particular software service to the particular software component; and

generate a virtual service model of the particular software service from the identified particular request and identified response to the request.

21 . The system of claim 20 , wherein monitoring data traffic comprises receiving transaction information captured by a component intercepting requests intended for and responses sent by the particular software service.

22 . The system of claim 21 , wherein the component is communicatively coupled between the particular software component and the particular software service.

23 . The system of claim 20 , wherein the virtual service model is a first virtual service model and the service model generator is further adapted to:

monitor second data traffic involving another software service;

identify a request of the other software service;

identify a response from the other software service; and

generate a second virtual service model of the other software service from the request of the other software service and the response from the other software service.

24 . The system of claim 20 , wherein a particular transaction comprises the particular request and the response, and the system further comprises a request processing module adapted to:

receive, from a requesting software component, a second request of the particular software service;

identify, from the virtual service model, the particular transaction; and

return, to the requesting software component, a modeled response based on the particular transaction identified from the virtual service model.

25 . The system of claim 24 , wherein the modeled response comprises at least a portion of the response to the particular request.

26 . The system of claim 20 , wherein the service model generator comprises configuration information identifying structure of requests and responses for each of a plurality of communication protocols including the particular communication protocol.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 16, 2015
From: INTERACTIVE TKO, INC.
To: COMPUTER ASSOCIATES THINK, INC.
Reel/Frame 036583/0950 →
MERGER Recorded Sep 16, 2015
From: COMPUTER ASSOCIATES THINK, INC.
To: CA, INC.
Reel/Frame 036584/0010 →