US 11,907,699 B2
System and method for implementing self-driven change detection release automation
Fei Chen, London (GB)
Assigned to JPMORGAN CHASE BANK, N.A., New York, NY (US)
Filed by JPMorgan Chase Bank, N.A., New York, NY (US)
Filed on Mar. 4, 2021, as Appl. No. 17/192,416.
Claims priority of provisional application 62/984,826, filed on Mar. 4, 2020.
Prior Publication US 2021/0279050 A1, Sep. 9, 2021
Int. Cl. G06F 8/65 (2018.01); G06F 8/71 (2018.01); G06F 9/48 (2006.01)
CPC G06F 8/65 (2013.01) [G06F 8/71 (2013.01); G06F 9/4843 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A system that implements a self-driven change detection release automation in software development life cycle, the system comprising:
a memory component that stores change detection data;
a user interface that receives inputs via a communication network;
a system interface that is communicatively coupled to one or more servers in a server environment; and
a computer processor coupled to the memory component, the user interface and the system interface and further programmed to perform:
executing, via the system interface, a software release bot on the server environment, the server environment configured to run a current version of software, wherein the software release bot is configured to wake up at predetermined time intervals for performing a detection of one or more changes on the server environment;
at each of the predetermined time intervals, automatically detecting, via a signal received from the software release bot, the one or more changes on the server environment, wherein the one or more changes on the server environment are automatically detected by the software release bot by comparing a current value to a previous value of at least one of a timestamp, checksum, message digest and hash, and wherein the one or more changes on the server environment include detection of a release of an updated version of the software on the server environment that is different from the current version of the software configured to run on the server environment;
determining whether the current version of the software is currently being run on the server environment, wherein the current version of the software is determined to be currently being run when a series of actions are executed in response to the one or more changes that are automatically detected;
determining a time point at which the one or more changes on the server environment were detected;
determining whether the time point is within a predetermined threshold;
when determining that the current version of the software is currently being run on the server environment and the time point is outside of the predetermined threshold:
initiating a plurality corresponding actions defined in a configuration file, wherein the plurality of corresponding actions comprise:
performing a pre-check process,
executing a stop operation of the current version of the software, and
executing a start operation of the updated version of the software;
automatically saving one or more events as an events log;
performing one or more post-check validations;
generating a notification of one or more release updates; and
communicating, via the communication network, the notification to at least one recipient; and
when determining that the current version of the software is not currently being run on the server environment or that the current version of the software is being run within the predetermined threshold, taking no action, wherein the current version of the software is determined to be currently not being run when no action is executed in response to the one or more changes that are automatically detected.