IP Library Granted Patent US 12,450,145
Granted Patent B2
US 12,450,145 · App. 17/324,718 · Granted Oct 21, 2025

Advanced simulation management tool for a medical records system

Inventors: Ranjan Dasgupta (Kolkata, IN); Arindam Das (Kolkata, IN); Suvendu Sekhar Mondal (Howrah, IN); Kanishka Basak (Kolkata, IN); Sudhabindu Sengupta (Kolkata, IN)
Assignee: Cerner Innovation, Inc.
G06F11/3457G06F11/3006G06F11/3428
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 12,450,145
App. No.
17/324,718
Granted
Oct 21, 2025
Kind
B2
Abstract

Systems for testing computing devices of a medical records system using a simulated environment are provided. The simulated environment is generated by identifying transaction traffic over the network, where the transaction traffic comprises messages of different transaction types. A computing device is configured to output a simulated status by extrapolating a performance of the computing devices upon receiving a series of messages indicating the transaction types. The output of the computing device may indicate an error in the simulated environment where the performance of a computing device exceeds a performance threshold. Based on the error indication, transaction traffic can be diverted from the computing device to another computing device having performance capacity.

Claims (93)

1. A computerized method for simulating a computing environment for system testing, the method comprising:

identifying transaction traffic over a network of computing devices of a medical records system during a first timeframe, the transaction traffic comprising medical record transactions being performed within the medical records system and being associated with a plurality of medical record transaction types, wherein each medical record transaction type is associated with a portion of a transaction traffic volume of the transaction traffic;

determining a schedule corresponding to the transaction traffic volume for the first timeframe;

generating a series of messages,

the series of messages imitating at least a first medical record transaction type of the plurality of medical record transaction types,

wherein the series of messages is generated to match at least a first transaction traffic volume associated with the first medical record transaction type and provided by the schedule determined for the first timeframe; and

executing a simulation, the simulation comprising simulating the series of messages during a second timeframe in a simulated environment of the network of computing devices of the medical records system;

based on the simulation:

detecting an error in the simulated environment, and

determining that the error in the simulated environment occurred as a result of at least one message of the series of messages imitating the first medical record transaction type; and

in response to determining that the error in the simulated environment occurred as a result of the at least one message of the series of messages imitating the first medical record transaction type:

selecting, in a live environment, a first computing device that executes medical record transactions of the first medical record transaction type, and

diverting, in the live environment, at least a portion of transaction traffic associated with the first medical record transaction type away from the first computing device to a second computing device,

wherein the method is performed by at least one device including a hardware processor.

2. The method of claim 1 , further comprising:

identifying significant transaction types within the plurality of medical record transaction types, wherein the significant transaction types represent an associated portion of the transaction traffic volume that meets a transaction traffic volume threshold value.

3. The method of claim 2 , wherein generating the series of messages comprises:

generating messages imitating the significant transaction types, wherein the significant transaction types comprises the first medical record transaction type.

4. The method of claim 2 , wherein the transaction traffic volume threshold value is determined based on a defined proportion of the transaction traffic volume of the transaction traffic.

5. The method of claim 1 , wherein the simulation further comprises:

generating for display on a display device, a simulated status of one or more computing devices of the network of computing devices.

6. The method of claim 1 , further comprising:

providing additional messages within the series of messages imitating the first medical record transaction type to increase a message volume and simulate a greater transaction traffic volume than the transaction traffic volume during the first timeframe.

7. The method of claim 6 , further comprising increasing the additional messages until the error is detected in the simulated environment.

8. The method of claim 1 , wherein simulating the series of messages comprises increasing a volume of the series of messages until the error is detected.

9. The method of claim 1 further comprising selecting the second computing device for diverting data traffic away from the first computing device based on a performance capacity determined for the second computing device based on the simulation.

10. The method of claim 1 , wherein the first medical record transaction type comprises modifying medical records.

11. The method of claim 1 , wherein generating the series of messages comprises:

generating a first subset of messages to match a first portion of the transaction traffic volume associated with the first medical record transaction type and provided by the schedule determined for the first timeframe, and

generating a second subset of messages to match a second portion of the transaction traffic volume associated with a second medical record transaction type and provided by the schedule determined for the first timeframe.

12. The method of claim 11 , further comprising:

based on the simulation, detecting an available capacity associated with one or more computing devices that execute the second medical record transaction type in the simulated environment; and

in response to detecting the available capacity in the simulated environment: diverting, in the live environment, data traffic associated with the first medical record transaction type from the first computing device to the second computing device,

wherein the second computing device processes transaction traffic associated with (I) at least a portion of the second medical record transaction type, and (ii) at least a portion of the first medical record transaction type resulting from diverting the data traffic associated with the first medical record transaction type.

13. The method of claim 1 ,

wherein detecting the error in the simulate environment comprises:

determining that the first transaction traffic volume satisfies a first threshold value associated with the simulated environment;

wherein diverting, in the live environment, at least a portion of transaction traffic associated with the first medical record transaction type away from the first computing device to the second computing device comprises:

decreasing the transaction traffic associated with medical record transactions of the first medical record transaction type executed by the first computing device below a second threshold value associated with the live environment.

14. The method of claim 1 ,

wherein detecting the error in the simulate environment comprises:

determining that the first transaction traffic volume causes a performance degradation in the simulated environment;

wherein diverting, in the live environment, at least a portion of transaction traffic associated with the first medical record transaction type away from the first computing device to the second computing device comprises:

attaining a live performance level at least by decreasing the transaction traffic associated with medical record transactions of the first medical record transaction type executed by the first computing device.

15. The method of claim 1 , further comprising:

in response to determining that the error in the simulated environment occurred as a result of the at least one message of the series of messages imitating the first medical record transaction type:

selecting, in the live environment, the second computing device based at least in part on an available capacity for executing medical record transactions of the first medical record transaction type, and

diverting at least the portion of transaction traffic to the second computing device based at least in part on the available capacity for executing medical record transactions of the first medical record transaction type.

16. The method of claim 1 , further comprising:

determining that the error in the simulated environment occurred as a result of at least a portion of the schedule corresponding to medical record transactions of the first medical record transaction type;

in response to determining that the error in the simulated environment occurred as a result of at least a portion of the schedule corresponding to medical record transactions of the first medical record transaction type:

modifying a live-environment schedule for executing medical record transactions of the first medical record transaction type.

17. One or more non-transitory computer readable media including instructions which, when executed by one or more hardware processors, cause performance of operations comprising:

identifying transaction traffic over a network of computing devices of a medical records system during a first timeframe, the transaction traffic comprising medical record transactions being performed within the medical records system and being associated with a plurality of medical record transaction types, wherein each medical record transaction type is associated with a portion of a transaction traffic volume of the transaction traffic;

determining a schedule corresponding to the transaction traffic volume for the first timeframe;

generating a series of messages,

the series of messages imitating at least a first medical record transaction type of the plurality of medical record transaction types,

wherein a first subset of the series of messages is generated to match at least a first transaction traffic volume associated with the first medical record transaction type and provided by the schedule determined for the first timeframe; and

executing a simulation, the simulation comprising simulating the series of messages during a second timeframe in a simulated environment of the network of computing devices of the medical records system;

based on the simulation:

detecting an error in the simulated environment, and

determining that the error in the simulated environment occurred as a result of at least one message of the series of messages imitating the first medical record transaction type; and

in response to determining that the error in the simulated environment occurred as a result of the at least one message of the series of messages imitating the first medical record transaction type:

selecting, in a live environment, a first computing device that executes medical record transactions of the first medical record transaction type, and

diverting, in the live environment, at least a portion of transaction traffic associated with the first medical record transaction type away from the first computing device to a second computing device.

18. The one or more non-transitory computer readable media of claim 17 , wherein the operations further comprise:

identifying significant transaction types within the plurality of medical record transaction types, wherein the significant transaction types represent an associated portion of the transaction traffic volume that meets a transaction traffic volume threshold value.

19. The one or more non-transitory computer readable media of claim 18 , wherein generating the series of messages comprises:

generating messages imitating the significant transaction types, wherein the significant transaction types comprises the first medical record transaction type.

20. The one or more non-transitory computer readable media of claim 18 , wherein the transaction traffic volume threshold value is determined based on a defined proportion of the transaction traffic volume of the transaction traffic.

21. The one or more non-transitory computer readable media of claim 17 , wherein the simulation further comprises:

generating for display on a display device, a simulated status of one or more computing devices of the network of computing devices.

22. The one or more non-transitory computer readable media of claim 17 , wherein the operations further comprise:

providing additional messages within the series of messages imitating the first medical record transaction type to increase a message volume and simulate a greater transaction traffic volume than the transaction traffic volume during the first timeframe.

23. The one or more non-transitory computer readable media of claim 22 , wherein the operations further comprise increasing the additional messages until the error is detected in the simulated environment.

24. The one or more non-transitory computer readable media of claim 17 , wherein simulating the series of messages comprises increasing a volume of the series of messages until the error is detected.

25. The one or more non-transitory computer readable media of claim 17 , wherein the operations further comprise selecting the second computing device for diverting data traffic away from the first computing device based on a performance capacity determined for the second computing device based on the simulation.

26. A system comprising:

at least one device including a hardware processor;

the system being configured to perform operations comprising:

identifying transaction traffic over a network of computing devices of a medical records system during a first timeframe, the transaction traffic comprising medical record transactions being performed within the medical records system and being associated with a plurality of medical record transaction types, wherein each medical record transaction type is associated with a portion of a transaction traffic volume of the transaction traffic;

determining a schedule corresponding to the transaction traffic volume for the first timeframe;

generating a series of messages,

the series of messages imitating at least a first medical record transaction type of the plurality of medical record transaction types,

wherein the series of messages is generated to match at least a first transaction traffic volume associated with the first medical record transaction type and provided by the schedule determined for the first timeframe; and

executing a simulation, the simulation comprising simulating the series of messages during a second timeframe in a simulated environment of the network of computing devices of the medical records system;

based on the simulation:

detecting an error in the simulated environment, and

determining that the error in the simulated environment occurred as a result of at least one message of the series of messages imitating the first medical record transaction type; and

in response to determining that the error in the simulated environment occurred as a result of the at least one message of the series of messages imitating the first medical record transaction type:

selecting, in a live environment, a first computing device that executes medical record transactions of the first medical record transaction type, and

diverting, in the live environment, at least a portion of transaction traffic associated with the first medical record transaction type away from the first computing device to a second computing device.

27. The system of claim 26 , wherein the operations further comprise selecting the second computing device for diverting data traffic away from the first computing device based on a performance capacity determined for the second computing device based on the simulation.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 31, 2025
From: MONDAL, SUVENDU SEKHAR
To: CERNER INNOVATION, INC.
Reel/Frame 072753/0703 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 21, 2021
From: DASGUPTA, RANJAN; DAS, ARINDAM; MONDAL, SUVENDU SEKAR; BASAK, KANISHKA; SENGUPTA, SUDHABINDU
To: CERNER INNOVATION, INC.
Reel/Frame 056935/0514 →
Continuity (1)
Related Publication 20220374328A1 · Nov 24, 2022
References Cited (15)
US 9465548B1 · Hrischuk · 2016 [cited by examiner]
US 10558507B1 · Das · 2020 [cited by examiner]
US 10915437B1 · Arguelles · 2021 [cited by examiner]
US 11561889B2 · De Sousa Bispo · 2023 [cited by examiner]
US 11640349B2 · Ho · 2023 [cited by examiner]
US 20160352822A1 · Takatsu · 2016 [cited by examiner]
US 20170068608A1 · Covell · 2017 [cited by examiner]
US 20180373580A1 · Ertl · 2018 [cited by examiner]
US 20200050537A1 · Schmalz, Jr. · 2020 [cited by examiner]
US 20200099773A1 · Myers · 2020 [cited by examiner]
Kiernan, A. ““Migration Through Value Added Services”—A Viable Approach to a Service Orientated Architecture for the medical domain?” [Thesis] University of Dublin, MS in Health Informatics [retrieved on Jun. 23, 2023] … [cited by examiner]
Halili, E. “Apache JMeter: A practical beginner's guide to automated testing and performance measurement for your websites” Packt Publishing; ISBN 978-1-847192-95-0 [retrieved on Jul. 12, 2023] (Year: 2008). [cited by examiner]
Ragupathy, M. “Long Short Term Memory Based Total Traffic Prediction for Container Load Balancing” Technical Disclosure Commons, Defensive Publications Series [retrieved on May 10, 2024]. Retrieved from <<https://www.td… [cited by examiner]
Munonye et al. “Evaluation of Data Storage Patterns in Microservices Archicture” 2020 IEEE 15th International Conference of System of Systems Engineering [retrieved on Dec. 28, 2024] (Year: 2020). [cited by examiner]
Wang et al. “Design and Optimization of Traffic Balance Broker for Cloud-Based Telehealth Platform” 2013 IEEE/ACM 6th International Conference on Utility and Cloud Computing [retrieved on Jun. 27, 2025] (Year: 2013). [cited by examiner]