US 11,836,072 B2
Risk-based root cause identification methods and related autobuild systems
Hemali Majithia, Pleasanton, CA (US); Seth Tager, San Francisco, CA (US); Chinmoy Samant, San Francisco, CA (US); Stacy Gordon, San Francisco, CA (US); Peng Zhao, San Ramon, CA (US); Kailin Huang, San Francisco, CA (US); Shaun Phillips, Austin, TX (US); Lauren Valdivia, Lewistown, PA (US); and Fabrice Medio, San Francisco, CA (US)
Assigned to salesforce.com, inc.
Filed by salesforce.com, inc., San Francisco, CA (US)
Filed on Aug. 23, 2021, as Appl. No. 17/445,714.
Prior Publication US 2023/0055527 A1, Feb. 23, 2023
Int. Cl. G06F 11/07 (2006.01); G06F 11/36 (2006.01)
CPC G06F 11/3688 (2013.01) [G06F 11/079 (2013.01); G06F 11/0772 (2013.01); G06F 11/3684 (2013.01); G06F 11/3692 (2013.01); G06F 11/368 (2013.01); G06F 11/3616 (2013.01); G06F 11/3664 (2013.01)] 17 Claims
OG exemplary drawing
 
1. A method of identifying a change associated with an update to executable code resulting in failure of one or more tests, the method comprising:
for each change of a plurality of changes associated with the update:
identifying one or more characteristics associated with the change; and
calculating a respective value for a risk score associated with the respective change based on the one or more characteristics associated with the change;
identifying a first change from among the plurality of changes based on the respective values for the risk score associated with the respective changes;
generating a modified update to the executable code including the first change by excluding remaining changes of the plurality of changes from the modified update;
executing the one or more tests with respect to a compiled version of the modified update to the executable code;
obtaining test result data associated with the one or more tests executed against the compiled version of the modified update to the executable code; and
in response to validating the first change when the test result data indicates the one or more tests executed successfully:
identifying a second change from among the plurality of changes having a next highest value for the risk score based on the respective values for the risk score associated with the respective changes;
generating a second modified update to the executable code including the second change by excluding remaining changes of the plurality of changes from the modified update; and
executing the one or more tests with respect to a second compiled version of the second modified update to the executable code.