System and method to measure and verify data and control coupling between software components without code instrumentation

US12399802B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12399802-B2
Application numberUS-202318180751-A
CountryUS
Kind codeB2
Filing dateMar 8, 2023
Priority dateJan 18, 2023
Publication dateAug 26, 2025
Grant dateAug 26, 2025

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method for verifying data and control couplings of software under test comprises obtaining software architecture and design information for the software; extracting expected control coupling information based on an order in which software component calls are in the software architecture; extracting expected data coupling information from one software component to another software component in a sequence diagram; updating the expected control and data coupling information in an expected control and data coupling sequencing table; deriving actual control coupling information from execution trace data obtained from a requirements based test execution; deriving actual data coupling information from data trace information; and updating the actual control and data coupling information in an actual control and data coupling sequencing table. The method then compares the expected and actual control coupling information, and compares the expected and actual data coupling information, to verify whether software components are interacting with each other as expected.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: automatically obtaining software architecture information and design information for a software under test; automatically extracting expected control coupling information based on an order in which software component calls are in a software architecture; automatically extracting expected data coupling information from one software component to another software component in a sequence diagram; automatically updating the expected control coupling information and the expected data coupling information in an expected control coupling and data coupling sequencing table; automatically deriving actual control coupling information in real time from execution trace data obtained from a requirements based test execution, wherein the execution trace data obtained from the requirements based test execution is provided by a target processing system that executes requirements based tests and the software under test, and wherein the target processing system includes a trace control module that generates the execution trace data in real time from the execution of the requirements based test; automatically deriving actual data coupling information in real time from data trace information; automatically updating the actual control coupling information and the actual data coupling information in an actual control coupling and data coupling sequencing table; and automatically comparing the expected control coupling information with the actual control coupling information, and automatically comparing the expected data coupling information with the actual data coupling information, to verify whether software components in the software under test are interacting with each other as expected. 2. The method of claim 1 , wherein the expected control coupling information is extracted, and the actual control coupling information is derived, using a control coupling analysis module that is in operative communication with the target processing system. 3. The method of claim 2 , wherein the control coupling analysis module performs a process comprising: analyzing software architecture files and design files, for the software under test, to build a table of expected control couples, including software component calls and corresponding calling sequence numbers; analyzing source code and disassemble files, for the software under test, to build a table containing a list of software components with corresponding start address and end address mapping information; and analyzing the execution trace data from the requirements based test execution, to build an actual control couples table, using the software components in the software under test with corresponding address mapping information. 4. The method of claim 3 , wherein comparing the expected control coupling information with the actual control coupling information is performed by the control coupling analysis module, which generates an overall control couple coverage report, and outputs the overall control couple coverage report for use in verifying that the software components in the software under test are interacting with each other as expected. 5. The method of claim 1 , wherein the expected data coupling information is extracted, and the actual data coupling information is derived, using a data coupling analysis module that is in operative communication with the target processing system. 6. The method of claim 5 , wherein the data coupling analysis module performs a process comprising: analyzing software architecture files and design files, for the software under test, to build a table of expected data couples, including read and set operations of global variables, and sequence number; analyzing source code files and disassembly files to build a table containing a list of software components, with corresponding start address and end address mapping information, and addresses of global variables that are part of data coupling; updating the trace control module to transmit addresses of all executed instructions, a target memory read/write operations type, and memory target addresses of all read/write operations; and analyzing the execution trace data from the requirements based test execution, to build an actual data couples table using the software components in the software under test and corresponding address mapping information. 7. The method of claim 6 , wherein comparing the expected data coupling information with the actual data coupling information is performed by the data coupling analysis module, which generates an overall data couple coverage report, and outputs the overall data couple coverage report for use in verifying that the software components in the software under test are interacting with each other as expected. 8. The method of claim 1 , wherein the software under test comprises avionics software. 9. The method of claim 8 , wherein the avionics software is subject to certification under DO-178C guidelines. 10. A system for measuring and verifying data and control couplings of a software under test, the system comprising: a target processing system configured to automatically receive and execute requirements based tests and the software under test, wherein the target processing system includes a trace control module operative to generate customized execution trace data in real time from the execution of the requirements based tests, and wherein the target processing system includes a processor hardware; and a data and control coupling analysis system in operative communication with the target processing system, wherein the data and control coupling analysis system is operative to automatically produce actual data and control couples exercised from the execution of the requirements based tests, by a process that comprises: receiving the customized execution trace data from execution of the requirements based tests from the target processing system; parsing and analyzing the customized execution trace data in real time to extract a first set of inputs for creating actual data and control coupling information; parsing and analyzing source code files, map files, and disassembly files for the software under test in real time, to extract a second set of inputs for creating the actual data and control coupling information; and building a list of the actual data and control couples using customized supporting data extracted from the customized execution trace data, the source code files, the map files, and the disassembly files; wherein the data and control coupling analysis system is further operative to automatically produce expected data and control couples exercised from requirements, by a process that comprises: parsing and analyzing software architecture files and design files for the software under test, to extract inputs for creating expected data and control coupling information; correlating the expected data and control coupling information with information extracted from the disassembly files and the map files; and building a table of the expected data and control couples based on the correlated expected data and control coupling information with the information extracted from the disassembly files and the map files; and wherein the target processing system is further configured to automatically compare the actual data and control couples with the expected data and control couples, to generate an overall data and control couples coverage report, to verify whether software components in the software under test are interacting with each other as expected. 11. The system of claim 10 , wherein the first set of inputs for creating the actual data and control coupling information comprises: a

Assignees

Inventors

Classifications

  • by runtime analysis (performance monitoring G06F11/3466) · CPC title

  • for coverage analysis · CPC title

  • by tracing the execution of the program · CPC title

  • for test results analysis · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US12399802B2 cover?
A method for verifying data and control couplings of software under test comprises obtaining software architecture and design information for the software; extracting expected control coupling information based on an order in which software component calls are in the software architecture; extracting expected data coupling information from one software component to another software component in…
Who is the assignee on this patent?
Honeywell Int Inc
What technology area does this patent fall under?
Primary CPC classification G06F11/3636. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 26 2025 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).