IP Library › Granted Patent US 10,324,772
Granted Patent B2
US 10,324,772 · App. 15/341,867 · Granted Jun 18, 2019

Method and system for data instance-based automatic message map construction

Inventors: Christoph Bussler (Morgan Hill, CA); Herbert Stiel (San Francisco, CA); Edward Macosky (Livermore, CA)
Assignee: Oracle International Corporation
G06F9/541
View Patent ↗
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 10,324,772
App. No.
15/341,867
Granted
Jun 18, 2019
Kind
B2
Abstract

A system and method for facilitating integrating software systems. An example method includes generating a test dataset (also called instance dataset herein); inputting the test dataset to a first software system and a second software system that are to be integrated; triggering a first set of one or more source messages (also called target messages herein) from the first software system and a second set of one or more source messages from the second output message based on the test dataset; receiving the first set of one or more source messages and the second set of one or more source messages; and analyzing the message sets to determine a mapping sufficient to translate messages exchanged between the first and second software systems, such that the messages are readable thereby.

Claims (42)

1. A method for facilitating integrating software systems, the method comprising:

using a message instance dataset generator to generate a test dataset in accordance with one or more instantiation rules and a test dataset template, wherein the test dataset template includes a fixed portion describing one or more message schemas and a variable portion describing one or more data values, and wherein the one or more instantiation rules include one or more of:

(i) a first instantiation rule that specifies that each value in the test dataset must be unique;

(ii) a second instantiation rule that specifies that values in different test datasets generated from a same test dataset template must differ to enable differentiating test datasets; and

(iii) a third instantiation rule that specifies that test datasets for each combination of mandatory and optional data items must be created;

inputting the test dataset to a first software system and a second software system that are to be integrated;

triggering a first set of one or more source messages from the first software system and a second set of one or more source messages from the second software system based on the test dataset;

receiving the first set of one or more source messages and the second set of one or more source messages; and

automatically analyzing data values in the first set of one or more source messages and the second set of one or more source messages to derive, at least in part, a first transformation and a second transformation, respectively, wherein the first transformation specifies a mapping sufficient to transform one or more messages output from the first software system into a format readable by the second software system, and wherein the second transformation specifies a mapping sufficient to transform one or more messages output from the second software system into a format readable by the first software system.

2. The method of claim 1 , further including:

sending a first message of the first set of one or more source messages to the second software system, thereby triggering a first response message from the second software system;

sending a second message of the second set of one or more source messages to the first software system, thereby triggering a second response message from the first software system; and

analyzing the first response message and the second response message to determine a third transformation and a fourth transformation, respectively, wherein the third transformation specifies a mapping sufficient to transform one or more response messages from the second software system into one or more corresponding response messages readable by the first software system, and wherein the fourth transformation specifies a mapping sufficient to transform one or more response messages from the first software system into one or more corresponding response messages readable by the second software system.

3. The method of claim 2 , further including employing a message transformation map generator to facilitate performing the method of claim 1 .

4. The method of claim 3 , wherein inputting includes using the message transformation map generator to provide the test dataset to a first driver for the first software system and to a second driver for the second software system to enable generation of the first set of one or more source messages and the second set of one or more source messages, respectively.

5. A non-transitory computer readable medium including instructions executable by one or more processors for:

using a message instance dataset generator to generate a test dataset in accordance with one or more instantiation rules and a test dataset template, wherein the test dataset template includes a fixed portion describing one or more message schemas and a variable portion describing one or more data values, and wherein the one or more instantiation rules include one or more of:

(i) a first instantiation rule that specifies that each value in the test dataset must be unique;

(ii) a second instantiation rule that specifies that values in different test datasets generated from a same test dataset template must differ to enable differentiating test datasets; and

(iii) a third instantiation rule that specifies that test datasets for each combination of mandatory and optional data items must be created;

inputting the test dataset to a first software system and a second software system that are to be integrated;

triggering a first set of one or more source messages from the first software system and a second set of one or more source messages from the second software system based on the test dataset;

receiving the first set of one or more source messages and the second set of one or more source messages; and

automatically analyzing data values in the first set of one or more source messages and the second set of one or more source messages to derive, at least in part, a first transformation and a second transformation, respectively, wherein the first transformation specifies a mapping sufficient to transform one or more messages output from the first software system into a format readable by the second software system, and wherein the second transformation specifies a mapping sufficient to transform one or more messages output from the second software system into a format readable by the first software system.

6. The non-transitory computer readable medium of claim 5 , further including:

sending a first message of the first set of one or more source messages to the second software system, thereby triggering a first response message from the second software system;

sending a second message of the second set of one or more source messages to the first software system, thereby triggering a second response message from the first software system; and

analyzing the first response message and the second response message to determine a third transformation and a fourth transformation, respectively, wherein the third transformation specifies a mapping sufficient to transform one or more response messages from the second software system into one or more corresponding response messages readable by the first software system, and wherein the fourth transformation specifies a mapping sufficient to transform one or more response messages from the first software system into one or more corresponding response messages readable by the second software system.

7. The non-transitory computer readable medium of claim 6 , further including employing a message transformation map generator to facilitate performing the non-transitory computer readable medium of claim 6 .

8. The non-transitory computer readable medium of claim 7 , wherein inputting includes using the message transformation map generator to provide the test dataset to a first driver for the first software system and to a second driver for the second software system to enable generation of the first set of one or more source messages and the second set of one or more source messages, respectively, and wherein the first driver communicates with one or more first native interfaces of the first software system, and wherein the second driver communicates with one or more second native interfaces of the second software system, and wherein the first driver and the second driver further communicate with the message transformation map generator.

9. The non-transitory computer readable medium of claim 8 , wherein the first driver communicates with one or more first native interfaces of the first software system, and wherein the second driver communicates with one or more second native interfaces of the second software system, and wherein the first driver and the second driver further communicate with the message transformation map generator.

10. An apparatus for facilitating integrating software systems, the apparatus comprising:

one or more processors;

a tangible processor-readable storage device including instructions for:

using a message instance dataset generator to generate a test dataset in accordance with one or more instantiation rules and a test dataset template, wherein the test dataset template includes a fixed portion describing one or more message schemas and a variable portion describing one or more data values, and wherein the one or more instantiation rules include one or more of:

(i) a first instantiation rules that specifies that each value in the test dataset must be unique:

(ii) a second instantiation rule that specifies that values in different test datasets generated from a same test dataset template must differ to enable differentiating test datasets; and

(iii) a third instantiation rules that specifies that test datasets for each combination of mandatory and optional data items must be created;

inputting the test dataset to a first software system and a second software system that are to be integrated;

triggering a first set of one or more source messages from the first software system and a second set of one or more source messages from the second software system based on the test dataset;

receiving the first set of one or more source messages and the second set of one or more source messages; and

automatically analyzing data values in the first set of one or more source messages and the second set of one or more source messages to derive, at least in part, a first transformation and a second transformation, respectively, wherein the first transformation specifies a mapping sufficient to transform one or more messages output from the first software system into a format readable by the second software system, and wherein the second transformation specifies a mapping sufficient to transform one or more messages output from the second software system into a format readable by the first software system.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 2, 2016
From: BUSSLER, CHRISTOPH; STIEL, HERBERT; MACOSKY, EDWARD
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 040201/0750 →
Continuity (1)
Related Publication 20180121259A1 · May 3, 2018