Automated verification of a software system
US-9536093-B2 · Jan 3, 2017 · US
US9703553B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9703553-B2 |
| Application number | US-201414577296-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 19, 2014 |
| Priority date | Dec 18, 2014 |
| Publication date | Jul 11, 2017 |
| Grant date | Jul 11, 2017 |
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.
The present disclosure relates to managing assertions in program source code in an integrated development environment (IDE) tool. According to one embodiment, the IDE tool receives a request to execute an application built from source code of a development project from a user interacting with an integrated development environment (IDE) tool. The IDE tool identifies changes to one or more of the source code of the development project from a previous version of the one or more source code. Based on the changes to the source code, the IDE tool selectively identifies one or more assertions to insert in the source code based on the identified changes.
Opening claim text (preview).
What is claimed is: 1. A method for managing assertions in program source code in an integrated development environment (IDE), comprising: receiving, from a user interacting with an integrated development environment (IDE) tool, a request to compile and execute an application built from source code of a development project; identifying changes to the source code of the development project from a previous version of the source code; determining code coverage information based on the one or more changes to the source code, wherein the code coverage information includes a set of predecessor code executed before the changed source code and a set of successor code executed after the changed source code; and based on the changes to the source code and the code coverage information, selectively identifying one or more assertions to insert in the source code during source code compilation based on the identified changes and the code coverage information. 2. The method of claim 1 , further comprising: prior to compiling the source code, inserting the identified assertions into the source code, wherein each assertion is inserted at a location in the source code, as specified by the identified assertions. 3. The method of claim 1 , further comprising: launching the application built from the source code; and while executing the application, inserting the identified assertions into the source code when program execution reaches a location specified by one of the identified assertions selectively identified to be included. 4. The method of claim 1 , wherein selectively identifying one or more assertion to insert in the program source code comprises: identifying one or more changes to dependencies based on the changes to the source code; and identifying the one or more assertions to insert based on the identified changes to dependencies. 5. The method of claim 4 , wherein the identifying changes to dependencies comprises: generating a dependency graph, wherein the dependency graph identifies relationships between functions in the source code; determining, based on the dependency graph, a number of changed dependencies; and for each changed dependency, determining the source code associated with the dependency and one or more assertions associated with the source code; identifying the one or more assertions to insert based on the reaching definition information. 6. The method of claim 1 , wherein the selectively identifying comprises: receiving reaching definition information from debug data; and identifying the one or more assertions to insert based on the reaching definition information. 7. The method of claim 1 , wherein the selectively identifying comprises receiving user input identifying assertions to insert into the source code.
Prevention of errors by analysis, debugging or testing of software · CPC title
Creation or generation of source code · CPC title
Version control (security arrangements therefor G06F21/57); Configuration management · CPC title
Program documentation · CPC title
Environments for analysis, debugging or testing of software · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.