Synchronizing an abstract model and source code
US-8996349-B2 · Mar 31, 2015 · US
US2016239295A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2016239295-A1 |
| Application number | US-201514624955-A |
| Country | US |
| Kind code | A1 |
| Filing date | Feb 18, 2015 |
| Priority date | Feb 18, 2015 |
| Publication date | Aug 18, 2016 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Implementations of the disclosure provide for a self-amending software builder. A method of the disclosure includes performing at least one test on an application having source code that is stored in a source code repository and has incurred a plurality of code changes by a plurality of users; detecting a failure of the application during the test; identifying, using a processing device, an offending code change of the plurality of code changes corresponding to the failure and at least one dependent code change of the plurality of code changes that depends on the offending code change; and updating, using the processing device, a master copy of the application in view of at least one of the offending code change or the dependent code change.
Opening claim text (preview).
What is claimed is: 1 . A method, comprising: performing at least one test on an application having source code that is stored in a source code repository and has incurred a plurality of code changes by a plurality of users; detecting a failure of the application during the test; identifying, using a processing device, an offending code change of the plurality of code changes that corresponds to the failure and at least one dependent code change of the plurality of code changes that depends on the offending code change; and updating, using the processing device, a master copy of the application in view of at least one of the offending code change or the dependent code change. 2 . The method of claim 1 , further comprising: revising the source code of the application in view of the offending code change to generate a first revised code; and initiating a code review process for the first revised code. 3 . The method of claim 2 , wherein the first revised code includes at least one code change that undoes changes to the application introduced by the offending code change. 4 . The method of claim 2 , wherein updating the master copy of the application further comprises: performing the test on the first revised code; and updating the master copy of the application in view of the first revised code in response to determining that the first revised code passes the test. 5 . The method of claim 1 , wherein updating the master copy of the application comprises: revising the source code of the application in view of the offending code change and the dependent code change to generate a second revised code; and updating the master copy of the application using the second revised code. 6 . The method of claim 5 , wherein the second revised code comprises at least one code change that undoes changes to the application introduced by the offending code change and the dependent code change. 7 . The method of claim 1 , wherein the offending code change is identified using a binary search algorithm. 8 . A system, comprising: a memory; and a processing device operatively coupled to the memory to: perform at least one test on an application having source code that is stored in a source code repository and has incurred a plurality of code changes by a plurality of users; detect a failure of the application during the test; identify an offending code change of the plurality of code changes that corresponds to the failure and at least one dependent code change of the plurality of code changes that depends on the offending code change; and update a master copy of the application in view of at least one of the offending code change or the dependent code change. 9 . The system of claim 8 , wherein the processing device is further to: revise the source code of the application in view of the offending code change to generate a first revised code; and initiate a code review process for the first revised code. 10 . The system of claim 9 , wherein the first revised code includes at least one code change that undoes changes to the application introduced by the offending code change. 11 . The system of claim 9 , wherein the processing device is further to: perform the test on the first revised code; and update the master copy of the application in view of the first revised code in response to determining that the first revised code passes the test. 12 . The system of claim 8 , wherein the processing device is further to: revise the source code of the application in view of the offending code change and the dependent code change to generate a second revised code; and update the master copy of the application using the second revised code. 13 . The system of claim 12 , wherein the second revised code comprises at least one code change that undoes changes to the application introduced by the offending code change and the dependent code change. 14 . The system of claim 8 , wherein the offending code change is identified using a binary search algorithm. 15 . A non-transitory machine-readable storage medium including instructions that, when accessed by a processing device, cause the processing device to: perform at least one test on an application having source code that is stored in a source code repository and has incurred a plurality of code changes by a plurality of users; detect a failure of the application during the test; identify, using the processing device, an offending code change of the plurality of code changes that corresponds to the failure and at least one dependent code change of the plurality of code changes that depends on the offending code change; and update, using the processing device, a master copy of the application in view of at least one of the offending code change or the dependent code change, wherein, to update the master copy of the application, the processing device is further to: revise the source code of the application in view of the offending code change to generate a first revised code. 16 . The non-transitory machine-readable storage medium of claim 15 , wherein the first revised code includes at least one code change that undoes changes to the application introduced by the offending code change. 17 . The non-transitory machine-readable storage medium of claim 15 , wherein the processing device is further to: perform the test on the first revised code; and update the master copy of the application in view of the first revised code in response to determining that the first revised code passes the test. 18 . The non-transitory machine-readable storage medium of claim 15 , wherein the processing device is further to: revise the source code of the application in view of the offending code change and the dependent code change to generate a second revised code; and update the master copy of the application using the second revised code. 19 . The non-transitory machine-readable storage medium of claim 18 , wherein the second revised code comprises at least one code change that undoes changes to the application introduced by the offending code change and the dependent code change. 20 . The non-transitory machine-readable storage medium of claim 15 , wherein the offending code change is identified using a binary search algorithm.
Test management · CPC title
Creation or generation of source code · CPC title
Version control (security arrangements therefor G06F21/57); Configuration management · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.