Automation of software verification
AssigneeBlackBerry Limited
InventorsAndrew James MALTON, Daniel Lewis NEVILLE
Life of this patent
Estimating the term…
Abstract
Systems, methods, and software can be used to automate software verifications. In some aspects, one or more application program interface (API) call pairs are generated based on a source code of a user module that invokes an API. Each of the one or more API call pairs comprises a first API call that invokes the API followed by a second API call that invokes the API. One or more fragments are generated based on the one or more API calls pairs. Each of the one or more fragments represents an execution sequence that includes at least one of the one or more API call pairs. The one or more fragments are verified.
Claims20
A method, comprising:
- generating, by a hardware processor, one or more application program interface (API) call pairs based on a source code of a user module that invokes an API, wherein each of the one or more API call pairs comprises a first API call that invokes the API followed by a second API call that invokes the API;
- generating, by the hardware processor, one or more fragments based on the one or more API call pairs, wherein each of the one or more fragments represents an execution sequence that includes at least one of the one or more API call pairs;
- and
- verifying, by the hardware processor, the one or more fragments.
A device, comprising:
- at least one hardware processor;
- and
- a non-transitory computer-readable storage medium coupled to the at least one hardware processor and storing programming instructions for execution by the at least one hardware processor, wherein the programming instructions, when executed, cause the at least one hardware processor to perform operations comprising:
- generating one or more application program interface (API) call pairs based on a source code of a user module that invokes an API, wherein each of the one or more API call pairs comprises a first API call that invokes the API followed by a second API call that invokes the API;
- generating one or more fragments based on the one or more API call pairs, wherein each of the one or more fragments represents an execution sequence that includes at least one of the one or more API call pairs;
- and
- verifying the one or more fragments.
A non-transitory computer-readable medium storing instructions which, when executed, cause a computing device to perform operations comprising:
- generating one or more application program interface (API) call pairs based on a source code of a user module that invokes an API, wherein each of the one or more API call pairs comprises a first API call that invokes the API followed by a second API call that invokes the API;
- generating one or more fragments based on the one or more API call pairs, wherein each of the one or more fragments represents an execution sequence that includes at least one of the one or more API call pairs;
- and
- verifying the one or more fragments.
Dependencies are inferred from the claim text.