QUALIFYING IMPACTS OF CODE CHANGES ON DEPENDENT SOFTWARE
A method for creating a learning model that evaluates risks of applying commits in a third-party product to a dependent product is disclosed. The method includes collecting data on past commits; training the learning model using the collected data; and using the learning model to determine if future commits are problematic.
1 . A method for creating a learning model that evaluates risks of applying a commit from a third-party product into a dependent product, the method comprising:
collecting historical data;
training the learning model using the collected data; and
using the learning model to determine if a future commit is problematic, and if the future commit is problematic, sending the future commit for review before implementation;
wherein stability and security is improved while reducing the occurrence and severity of performance regressions.
2 . The method according to claim 1 , further comprising if the future commit is not problematic, implementing the future commit, wherein manual review time by a person is reduced.
3 . The method of claim 2 , wherein implementing the future commit includes copying a pre-built version of the library rather than applying changes to an existing library.
4 . The method of claim 1 , wherein sending the future commit for review includes sending the future commit for review before implementation along with a report of the level of risk for the future commit.
5 . The method of claim 4 , wherein sending the report also includes the reason for the level of risk.
6 . The method of claim 5 , wherein a reason includes commit complexity, author experience, author's name or which component the commit affects.
7 . The method of claim 1 , wherein historical data includes an author experience and components that are most problematic.
8 . The method of claim 1 , wherein training the learning model includes determining which historical data is useful for predicting a negative impact to the instruction processor emulator.
9 . The method of claim 9 , wherein which historical data includes complexity of the commit and author experience.
10 . The method of claim 9 , wherein historical data further includes an author's name and a component affected by the commit.
11 . A non-transitory machine readable memory medium including instructions when executed to cause a processor to perform the following actions:
collecting historical data;
training the learning model using the collected data; and
using the learning model to determine if a future commit is problematic, and if the future commit is problematic, sending the future commit for review before implementation;
wherein stability and security is improved while reducing the occurrence and severity of performance regressions.
12 . The non-transitory machine readable memory medium according to claim 11 , further comprising if the future commit is not problematic, implementing the future commit, wherein manual review time by a person is reduced.
13 . The non-transitory machine readable memory medium of claim 12 , wherein implementing the future commit includes copying a pre-built version of the library rather than applying changes to an existing library.
14 . The non-transitory machine readable memory medium of claim 11 , wherein sending the future commit for review includes sending the future commit for review before implementation along with a report of the level of risk for the future commit.
15 . The non-transitory machine readable memory medium of claim 14 , wherein sending the report also includes a reason for the level of risk.
16 . The non-transitory machine readable memory medium of claim 15 , wherein the reason includes commit complexity, author experience, author's name or which component the commit affects.
17 . The non-transitory machine readable memory medium of claim 11 , wherein historical data includes an author experience and components that are most problematic.
18 . The non-transitory machine readable memory medium of claim 11 , wherein training the learning model includes determining which historical data is useful for predicting a negative impact to the instruction processor emulator.
19 . The non-transitory machine readable memory medium of claim 18 , wherein which historical data includes complexity of the commit and author experience.
20 . The non-transitory machine readable memory medium of claim 11 , wherein historical data further includes an author's name and a component affected by the commit.