US 12,393,506 B2
Validation of system functionality subsequent to modification using parallel regression testing
Kfir Fuksbrumer, Rishon-LeZion (IL); Haya Miller, Petah-Tikva (IL); Avigail Gofman, Rishon-LeZion (IL); Ariel Weill, Yakir (IL); Arkady Mishiev, Ramat Gan (IL); and Ifat Berenstein, Hod Hasharon (IL)
Assigned to Chicago Mercantile Exchange Inc., Chicago, IL (US)
Filed by Chicago Mercantile Exchange Inc., Chicago, IL (US)
Filed on Dec. 16, 2019, as Appl. No. 16/715,320.
Prior Publication US 2021/0182247 A1, Jun. 17, 2021
Int. Cl. G06F 11/3668 (2025.01); G06F 11/3698 (2025.01)
CPC G06F 11/3688 (2013.01) [G06F 11/3684 (2013.01); G06F 11/3692 (2013.01); G06F 11/3698 (2025.01)] 25 Claims
OG exemplary drawing
 
1. A computer implemented method for validating a modified computer implemented transaction processing system using containerized application services, wherein the transaction processing system comprises a first microprocessor that implements a containerized application service connector that includes a transformer including executable software code executable by the first microprocessor that causes the transformer to process a plurality of incoming transactions, each comprising a data object containing data in a first format, and, for each of the plurality of incoming transactions, process each data object to convert the data therein from the first format to a second format based on a format specification and generate a processed output, the method comprising:
receiving, by a second microprocessor separate from the transaction processing system, a format modification to the format specification;
deploying, automatically, by the second microprocessor, into a containerized system, a first containerized application service connector including a first version of the transformer comprising the transformer prior to a modification, wherein the deploying of the first containerized application service connector including the first version of the transformer comprises instantiating an instance of the first containerized application service connector including the first version of the transformer;
deploying, automatically, by the second microprocessor into the containerized system, a second containerized application service connector including a second version of the transformer comprising the transformer as modified by the modification, wherein the deploying of the second containerized application service connector including the second version of the transformer comprises instantiating an instance of the second containerized application service connector including the second version of the transformer, wherein the deploying of the first containerized application service connector including the first version of the transformer occurs in parallel with the deploying of the second containerized application service connector including the second version of the transformer;
providing a database coupled with the second microprocessor and which stores copies of a plurality of historical transactions which include incoming transactions previously received and processed by the first version of the transformer which have previously produced valid results;
selecting, automatically by the second microprocessor, a subset of the plurality of historical transactions which have previously produced valid results stored in the database;
for each historical transaction of the selected subset of the plurality of historical transactions stored in the database:
causing, automatically by the second microprocessor, the first version of the transformer to re-process the historical transaction and generate, based thereon, a first re-processed output;
causing, automatically by the second microprocessor, the second version of the transformer to re-process the historical transaction and, based thereon, generate a second re-processed output, wherein the causing of the first version of the transformer to re-process the historical transaction and generate, based thereon, the first re-processed output occurs in parallel with the causing of the second version of the transformer to re-process the historical transaction and, based thereon, generate the second re-processed output;
comparing, automatically by the second microprocessor, the first re-processed output to the second re-processed output to identify any differences therebetween; and
presenting, by the second microprocessor on a display coupled therewith, data indicative of the identified differences; and
destroying, by the second microprocessor, the first and second containerized application service connectors.