Method and apparatus for analyzing correctness of coupling of lower level requirements data based on higher level requirements

CN117453518BActive Publication Date: 2026-08-11AECC COMML AIRCRAFT ENGINE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-07-19
Publication Date
2026-08-11

AI Technical Summary

Benefits of technology

[0029]本发明对比现有技术有如下的有益效果:虽然DO-178C主要关注基于高层需求的软件(或软硬件)集成测试过程中,源代码(函数)模块之间数据耦合关系的正确性,但其实质则是源代码数据耦合关系与高层需求数据耦合关系的一致性。因此,需要开展软件全生命周期数据之间数据耦合关系分解、传递的一致性和正确性。工作范围至少应包括高层需求数据耦合关系分解为低层需求数据耦合关系时的正确性、低层需求数据耦合关系转化为源代码函数模块数据耦合关系时的一致性。为此,本发明的技术实现中包含以下的创新点:

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117453518B_ABST
    Figure CN117453518B_ABST
Patent Text Reader

Abstract

This invention discloses a method and apparatus for analyzing the correctness of data coupling between high-level and low-level requirements based on high-level requirements, solving the problem of analyzing the consistency of data coupling between high-level and low-level requirements throughout the entire lifecycle of airborne software development. The technical solution is as follows: Utilizing the traceability relationship between high-level and low-level requirements, a set of low-level requirement interfaces or their collection indirectly expresses the interfaces between corresponding high-level requirements, thus obtaining the data coupling relationship between high-level requirements expressed by low-level requirement interfaces. Combining the interface correspondence / traceability relationship formed by decomposing high-level requirement interfaces into low-level requirement interfaces, the data coupling relationship between high-level requirements indirectly expressed by low-level requirement interfaces is compared with the data coupling relationship directly expressed by high-level requirement interfaces to determine their consistency and assess whether the data coupling relationship between low-level requirements conforms to high-level requirements.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of software testing and verification, specifically a method and apparatus for correctness analysis of low-level requirement data coupling based on high-level requirements. Background Technology

[0002] According to the requirements of DO-178B / C "Software Considerations in the Certification of Airborne Systems and Equipment", it is necessary to "complete test coverage of the software architecture (data coupling and control coupling)" in order to provide evidence that the interaction and dependencies between modules / components are correct and that the software modules / components interact in the manner that the developers intended to define, avoiding unplanned, abnormal, or erroneous behavior.

[0003] This objective primarily focuses on measuring the degree of data coupling coverage between software function modules through requirements-based software (or hardware / software) integration testing; and inferring the correctness of the data coupling relationships between covered software function modules based on the correctness of the software (or hardware / software) integration test results. If the test results are incorrect, or the data coupling relationships between software function modules are not covered, it is necessary to investigate the consistency and correctness of the data coupling relationships throughout the software lifecycle by relying on information such as the traceability relationships between source code and lower-level requirements, and between lower-level requirements and higher-level requirements (referencing the software architecture if necessary).

[0004] To address this need, a software data coupling analysis scheme was developed that approximates data from both ends of the software development lifecycle (high-level requirements, source code) towards the middle (low-level requirements, software architecture), combining forward and reverse approaches. To fully implement this scheme in airborne software verification practices, it is necessary to further decompose each data coupling analysis sub-process. Among these, how to refine and implement the process for correctness analysis of low-level requirement data coupling based on high-level requirements is a problem that urgently needs to be solved in the industry. Summary of the Invention

[0005] The following provides a brief overview of one or more aspects to offer a basic understanding of them. This overview is not an exhaustive summary of all conceived aspects, nor is it intended to identify key or decisive elements of all aspects, nor to define the scope of any or all aspects. Its sole purpose is to present some concepts of one or more aspects in a simplified form to prepare for the more detailed descriptions that follow.

[0006] The purpose of this invention is to solve the above-mentioned problems and provide a method and apparatus for analyzing the correctness of data coupling between high-level and low-level requirements based on high-level requirements. This solves the problem of analyzing the consistency of data coupling between high-level and low-level requirements throughout the entire lifecycle of airborne software development, that is, how to analyze the correctness of data coupling relationships between high-level requirements and low-level requirements when decomposing them into data coupling relationships between low-level requirements.

[0007] The technical solution of this invention is as follows: This invention discloses a method for analyzing the correctness of low-level requirement data coupling based on high-level requirements, the method comprising:

[0008] Step 1: Based on the traceability relationship between high-level and low-level requirements, establish a table showing the correspondence between high-level and low-level software requirements;

[0009] Step 2: Based on the table of high-level and low-level software requirements, group the low-level requirements that trace back to the same high-level requirement, and supplement the high-level requirement information that the group of low-level requirements traces back to. Taking the high-level software requirement as the object and the low-level requirement input and output interface corresponding to the object as the data element, automatically generate the variables of the low-level requirement input and output interface for each high-level requirement.

[0010] Step 3: Group the variables of the low-level requirement input and output interfaces as objects, according to the definition and use of the objects, and cross-pair them;

[0011] Step 4: Combine control flow analysis to sort out the data flow information between high-level requirements expressed through the interfaces of low-level requirements;

[0012] Step 5: Based on the valid "definition-use" pair table of data between high-level and low-level requirements, expand the input and output information tables of high-level and low-level requirements, supplement the input sources and output destinations, complete the data coupling relationship analysis between related requirement items, and form a data coupling relationship table of high-level and low-level requirements.

[0013] Step 6: Compare the coupling items or their union of high-level demand data indirectly obtained from low-level demand analysis with the data coupling relationships obtained directly from high-level demand analysis to determine the correctness of the results of low-level demand data coupling analysis based on high-level demand.

[0014] According to an embodiment of the correctness analysis method for coupling low-level demand data based on high-level demand of the present invention, in step 2, after supplementing the high-level demand information, a high-level demand low-level demand input and output information table is formed, wherein the low-level demand input is used and the low-level demand output is defined. Finally, step 2 generates a high-level demand low-level demand data definition table and a high-level demand low-level demand data usage table.

[0015] According to an embodiment of the correctness analysis method for coupling low-level requirement data based on high-level requirements of the present invention, in step 3, based on the definition table and usage table of high-level requirement low-level requirement data, all definitions and all uses of each high-level requirement low-level requirement data are cross-paired to form multiple sets of possible high-level requirement low-level requirement data "definition-use" pairs. Then, "definition-use" pairs whose definitions and uses are limited to one high-level requirement are automatically deleted from the pairs, forming "definition-use" pairs between high-level requirement low-level requirement data.

[0016] According to an embodiment of the correctness analysis method for low-level requirement data coupling based on high-level requirements of the present invention, in step 4, based on the effective software high-level requirement low-level requirement data "definition-use" pairs, the source of input variables and the destination of output variables of each software high-level requirement low-level requirement interface are sorted out to generate low-level requirement interface data flow information between the top-level and high-level requirements. In the generated data flow information, only the "definition-use" pairs that are reachable from the control flow are retained, and the "definition-use" pairs that are not reachable from the control flow are deleted to form an effective table of high-level requirement low-level requirement data "definition-use" pairs.

[0017] According to an embodiment of the correctness analysis method for low-level requirement data coupling based on high-level requirements of the present invention, in step 6, the data items or their union in the high-level requirement low-level requirement data coupling relationship table are compared and analyzed to see if they are consistent with the data coupling relationship directly expressed by the high-level requirement interface. If they are inconsistent, the inconsistency is recorded and a defect report is submitted for correction; if they are consistent, the analysis ends, so that the low-level requirement and high-level requirement data coupling relationship are consistent.

[0018] This invention also discloses a device for analyzing the correctness of low-level requirement data coupling based on high-level requirements. The device includes:

[0019] The module for establishing the mapping relationship table is configured to create a mapping relationship table between high-level and low-level software requirements based on the traceability relationship between high-level and low-level requirements.

[0020] The low-level requirement grouping module is configured to group low-level requirements that trace back to the same high-level requirement based on the software high-level requirement and low-level requirement comparison table. For each group of low-level requirements, the module supplements the high-level requirement information that the group traces back to. Taking the software high-level requirement as the object and the low-level requirement input and output interface corresponding to the object as the data element, the module automatically generates the variables of the low-level requirement input and output interface for each high-level requirement.

[0021] The cross-pairing module is configured to group variables from low-level requirement input and output interfaces as objects, and cross-pair them according to the definition and use of the objects;

[0022] The data flow analysis module is configured to combine control flow analysis to analyze the data flow information between high-level requirements expressed through low-level requirement interfaces.

[0023] The coupling relationship table creation module is configured to define and use a table based on valid high-level and low-level requirement data, expand the high-level and low-level requirement input and output information tables, supplement the input sources and output destinations, complete the data coupling relationship analysis between related requirement items, and form a high-level and low-level requirement data coupling relationship table.

[0024] The coupling relationship determination module is configured to compare the coupling items or their union of high-level demand data indirectly obtained based on low-level demand analysis with the data coupling relationship obtained directly through high-level demand analysis to determine the correctness of the coupling analysis results of low-level demand data based on high-level demand.

[0025] According to an embodiment of the correctness analysis device for low-level requirement data coupling based on high-level requirements of the present invention, the low-level requirement grouping module is further configured to form a high-level requirement low-level requirement input and output information table after supplementing high-level requirement information, wherein the low-level requirement input is used and the low-level requirement output is defined, and the low-level requirement grouping module finally generates a high-level requirement low-level requirement data definition table and a high-level requirement low-level requirement data usage table.

[0026] According to an embodiment of the correctness analysis device for coupling low-level requirement data based on high-level requirements of the present invention, the cross-pairing module is further configured to cross-pair all definitions and all uses of each high-level requirement low-level requirement data based on a high-level requirement low-level requirement data definition table and a high-level requirement low-level requirement data usage table, forming multiple sets of possible high-level requirement low-level requirement data "definition-use" pair tables, and automatically deleting "definition-use" pairs whose definitions and uses are limited to one high-level requirement from the pair tables, forming a "definition-use" pair table between high-level requirement low-level requirement data.

[0027] According to an embodiment of the correctness analysis device for low-level requirement data coupling based on high-level requirements of the present invention, the data flow sorting module is further configured to sort out the source of input variables and the destination of output variables of each high-level requirement low-level requirement interface based on effective software high-level requirement low-level requirement data "definition-use" pairs, and generate low-level requirement interface data flow information between the top-level and high-level requirements. In the generated data flow information, only the "definition-use" pairs reachable from the control flow are retained, and the "definition-use" pairs that are not reachable from the control flow are deleted, so as to form an effective table of high-level requirement low-level requirement data "definition-use" pairs.

[0028] According to an embodiment of the correctness analysis device for low-level requirement data coupling based on high-level requirements of the present invention, the coupling relationship determination module is further configured to compare and analyze whether the data items or their union in the high-level requirement low-level requirement data coupling relationship table are consistent with the data coupling relationship directly expressed by the high-level requirement interface. If they are inconsistent, the inconsistency is recorded and a defect report is submitted for correction; if they are consistent, the analysis ends, so that the low-level requirement and high-level requirement data coupling relationship are consistent.

[0029] Compared with existing technologies, this invention offers the following advantages: Although DO-178C primarily focuses on the correctness of data coupling relationships between source code (function) modules during software (or hardware / software) integration testing based on high-level requirements, its essence lies in the consistency between source code data coupling relationships and high-level requirement data coupling relationships. Therefore, it is necessary to ensure the consistency and correctness of data coupling relationship decomposition and transmission throughout the software lifecycle. The scope of work should at least include the correctness of high-level requirement data coupling relationships decomposed into low-level requirement data coupling relationships, and the consistency of low-level requirement data coupling relationships transformed into source code function module data coupling relationships. To this end, the technical implementation of this invention includes the following innovative points:

[0030] (1) By utilizing the traceability relationship between high-level requirements and low-level requirements, a set of low-level requirement interfaces or their collection can be used to indirectly express the interfaces between the corresponding high-level requirements, thereby obtaining the data coupling relationship between high-level requirements expressed by low-level requirement interfaces.

[0031] (2) Combining the interface correspondence / traceability relationship formed by decomposing the high-level requirement interface into the low-level requirement interface, the data coupling relationship between the high-level requirements indirectly expressed by the low-level requirement interface is compared with the data coupling relationship directly expressed by the high-level requirement interface to determine the consistency between the two and to evaluate whether the data coupling relationship between the low-level requirements conforms to the high-level requirements.

[0032] In summary, the data coupling correctness analysis method based on high-level requirements and low-level requirements of this invention can support the evaluation of the correctness of data coupling analysis results based on low-level requirements from the perspective of high-level requirements, thus bridging the gap for data coupling structure coverage analysis of software source code based on high-level requirements. Simultaneously, it provides a reference for the correctness of interface data decomposition from high-level requirements to low-level requirements.

[0033] By using the method of this invention, more supporting data can be provided on the basis of traditional software integration testing to measure the coverage of source code data coupling and control coupling structure, thereby enhancing the sufficiency of the evidence chain for expressing the compliance of DO-178C "Data Coupling and Control Coupling (DC / CC) Structure Coverage Analysis Objective". Attached Figure Description

[0034] The above-described features and advantages of the present invention will be better understood after reading the following detailed description of embodiments of the present disclosure in conjunction with the accompanying drawings. In the drawings, components are not necessarily drawn to scale, and components having similar related characteristics or features may have the same or similar reference numerals.

[0035] Figure 1 A flowchart of an embodiment of the correctness analysis method for coupling low-level requirement data based on high-level requirements of the present invention is shown.

[0036] Figure 2 A schematic diagram of an embodiment of the correctness analysis device for coupling low-level requirements with high-level requirements of the present invention is shown. Detailed Implementation

[0037] The present invention will now be described in detail with reference to the accompanying drawings and specific embodiments. It should be noted that the aspects described below with reference to the accompanying drawings and specific embodiments are merely exemplary and should not be construed as limiting the scope of protection of the present invention in any way.

[0038] According to DO-178C, low-level requirements refer to software requirements that originate from high-level requirements, derived requirements, and design constraints; the software source code can be compiled without further information. As required by DO-178C, low-level software requirements should satisfy high-level software requirements and correctly define derived requirements and their design basis; low-level requirements should be traceable back to high-level requirements, meaning that high-level and derived requirements have been developed into low-level requirements.

[0039] Figure 1 The flowchart illustrates an embodiment of the correctness analysis method for coupling low-level requirement data based on high-level requirements according to the present invention. Please refer to... Figure 1 The implementation steps of the analysis method in this embodiment are detailed below.

[0040] Step 1: Based on the traceability relationship between high-level and low-level requirements, establish a table 6-0 showing the correspondence between high-level and low-level software requirements (mainly for low-level requirements decomposed from high-level requirements; derived low-level requirements are only for reference and not for the correctness analysis of data coupling relative to high-level requirements).

[0041] Table 1. Comparison of High-Level and Low-Level Software Requirements (Table 6-0)

[0042]

[0043] Step 2: Based on the traceability relationship between high-level and low-level requirements, group the low-level requirements that trace back to the same high-level requirement; supplement the high-level requirement information traced by the low-level requirements in the low-level requirement data coupling analysis results. Then, taking the software high-level requirement as the object and the corresponding low-level requirement input (use) and output (definition) interfaces as data elements, automatically generate the low-level requirement input (use) and output (definition) interface variables for each high-level requirement.

[0044] Specifically, based on Table 6-0, which maps high-level and low-level software requirements, low-level requirements that trace back to the same high-level requirement are grouped together. High-level requirement entries (UIDs) are added to Table 3-1, which is then equivalently converted into Table 6-1, which contains high-level and low-level requirement input and output information. In Table 6-1, taking the high-level requirement as the object, output and input information / data are extracted from the corresponding group of low-level requirements to generate Table 6-2, which defines the high-level and low-level requirement data, and Table 6-3, which shows the usage of the high-level and low-level requirement data.

[0045] Table 2 Input and Output Information for High-Level Demand and Low-Level Demand (Table 6-1)

[0046]

[0047]

[0048] Table 3 High-level demand and low-level demand data "definition" Table 6-2

[0049]

[0050] Table 4 High-level demand and low-level demand data "Using" Table 6-3

[0051]

[0052] Low-level requirement input and output information table 3-1

[0053]

[0054] Step 3: Group the variables of the low-level requirement input and output interfaces into objects according to their definition and usage, and cross-pair them.

[0055] Specifically, based on Tables 6-2 and 6-3, all definitions (e.g., at m) and all uses (e.g., at n) of each high-level requirement and low-level requirement data are cross-paired to form (m*n groups) of possible high-level requirement and low-level requirement data "definition-use" pairs (draft Table 6-4-0). From this, "definition-use" pairs whose definitions and uses are limited to one high-level requirement (within) are automatically deleted, forming an initial "definition-use" pair of high-level requirement and low-level requirement data (draft Table 6-4-1).

[0056] Table 5 defines and uses the data on high-level and low-level demand in the draft table 6-4-0; defines and uses the data on the relationship between high-level and low-level demand in the initial table 6-4-1; and defines and uses the data on the relationship between valid high-level and low-level demand in Table 6-4.

[0057]

[0058]

[0059] Step 4: Combining control flow analysis, analyze the data flow information between high-level requirements expressed through low-level requirement interfaces. Specifically, based on valid "definition-use" pairs of high-level and low-level software requirement data, analyze the source of input variables and the destination of output variables for each high-level and low-level requirement interface, generating data flow information between high-level and low-level requirements.

[0060] Specifically, by reviewing the control flow relationships between all high-level requirement items, analyzing the validity of the "definition-use" pairs in Table 6-4-1 item by item, only retaining the "definition-use" pairs that are reachable from the control flow (representing validity), and deleting the "definition-use" pairs that are not reachable from the control flow (representing invalidity), a valid table of "definition-use" pairs of data between high-level and low-level requirements is formed in Table 6-4.

[0061] Step 5: Based on the valid data "definition-use" between high-level and low-level requirements, expand Table 6-1, the input and output information table for high-level and low-level requirements, by adding "input source" and "output destination", and complete the data coupling relationship analysis between related requirement items to form Table 6-5, which shows the data coupling relationship between high-level and low-level requirements.

[0062] Table 6. Data Coupling Relationship Between High-Level Demand and Low-Level Demand (Table 6-5)

[0063]

[0064] Step 6: Compare the coupling items (name, input / output direction, quantity) or their union obtained indirectly from the low-level requirement analysis with the data coupling relationship obtained directly from the high-level requirement analysis to determine the correctness of the low-level requirement data coupling analysis results based on the high-level requirements.

[0065] Specifically, the data items (name, input / output direction, quantity) or their union (i.e., the high-level requirement data coupling relationship expressed by the low-level requirement interface) in Table 6-5, which compares and analyzes their consistency with the data coupling relationship directly expressed by the high-level requirement interface (Table 1-5, Software High-Level Requirement Data Coupling Relationship). If they are inconsistent, the inconsistencies are recorded, and a defect report is submitted for correction. If they are consistent, the analysis ends, and the low-level requirement and high-level requirement data coupling relationship is determined to be consistent.

[0066] Table 7. Software High-Level Requirements Data Coupling Relationships (Table 1-5)

[0067]

[0068] Figure 2 The principle of one embodiment of the correctness analysis device for data coupling between high-level and low-level requirements according to the present invention is illustrated. Please refer to... Figure 2 The device in this embodiment includes the following modules connected in sequence: a relation table establishment module, a low-level requirement grouping module, a cross-pairing module, a data flow sorting module, a coupling relation table establishment module, and a coupling relation determination module. Figure 2 The various tables involved in the illustrated embodiments and Figure 1 The same applies to the embodiments shown above, therefore the specific contents of the table will not be repeated.

[0069] The module for establishing the mapping relationship table is configured to create a mapping relationship table between high-level and low-level software requirements based on the traceability relationship between high-level and low-level requirements.

[0070] The low-level requirement grouping module is configured to group low-level requirements that trace back to the same high-level requirement based on a table showing the relationship between high-level and low-level requirements. For each group of low-level requirements, it supplements the high-level requirement information that the group traces back to. Taking the high-level requirement as the object and the corresponding low-level requirement input and output interface as the data element, it automatically generates variables for the low-level requirement input and output interface of each high-level requirement.

[0071] In the low-level requirement grouping module, it is further configured to form a high-level requirement low-level requirement input and output information table after supplementing high-level requirement information. The low-level requirement input is used, and the low-level requirement output is defined. Finally, the low-level requirement grouping module generates a high-level requirement low-level requirement data definition table and a high-level requirement low-level requirement data usage table.

[0072] The cross-pairing module is configured to group variables of low-level requirement input and output interfaces as objects, and cross-pair them according to the definition and use of the objects.

[0073] In the cross-pairing module, it is further configured to cross-pair all definitions and all uses of each high-level and low-level requirement data based on the high-level requirement low-level requirement data definition table and the high-level requirement low-level requirement data usage table, forming multiple sets of possible high-level and low-level requirement data "definition-use" pairs. Then, it automatically deletes "definition-use" pairs whose definitions and uses are limited to a single high-level requirement from these pairs, forming "definition-use" pairs between high-level and low-level requirement data.

[0074] The data flow analysis module is configured to combine control flow analysis to analyze the data flow information between high-level requirements expressed through low-level requirement interfaces.

[0075] In the data flow analysis module, it is further configured to analyze the source of input variables and the destination of output variables of each software high-level requirement and low-level requirement interface based on effective software high-level requirement and low-level requirement data "definition-use" pairs, and generate data flow information of low-level requirement interfaces between the top-level and high-level requirements. In the generated data flow information, only the "definition-use" pairs that are reachable from the control flow are retained, and the "definition-use" pairs that are not reachable from the control flow are deleted, so as to form an effective data "definition-use" pair table between high-level and low-level requirements.

[0076] The coupling relationship table creation module is configured to expand the input and output information tables of high-level and low-level requirements based on the "definition-use" pair table of valid high-level and low-level requirements data, supplement the input sources and output destinations, complete the data coupling relationship analysis between related requirement items, and form a high-level and low-level requirement data coupling relationship table.

[0077] In the coupling relationship determination module, it is further configured to compare and analyze the data items or their union in the high-level and low-level requirement data coupling relationship table to see if they are consistent with the data coupling relationship directly expressed by the high-level requirement interface. If they are inconsistent, the inconsistency is recorded and a defect report is submitted for correction; if they are consistent, the analysis ends to make the low-level requirement and high-level requirement data coupling relationship consistent.

[0078] The coupling relationship determination module is configured to compare the coupling items or their union of high-level demand data indirectly obtained based on low-level demand analysis with the data coupling relationship obtained directly through high-level demand analysis to determine the correctness of the coupling analysis results of low-level demand data based on high-level demand.

[0079] Although the methods described above are illustrated and depicted as a series of actions for the sake of simplicity, it should be understood and appreciated that these methods are not limited by the order of the actions, as some actions may occur in a different order and / or concurrently with other actions from the illustrations and descriptions herein or not illustrated and described herein but which may be understood by those skilled in the art, according to one or more embodiments.

[0080] Those skilled in the art will further appreciate that the various illustrative logic blocks, modules, circuits, and algorithm steps described in conjunction with the embodiments disclosed herein can be implemented as electronic hardware, computer software, or a combination of both. To clearly illustrate this interchangeability between hardware and software, the various illustrative components, blocks, modules, circuits, and steps are described above in a generalized manner in terms of their functionality. Whether such functionality is implemented as hardware or software depends on the specific application and the design constraints imposed on the overall system. Those skilled in the art may implement the described functionality in different ways for each specific application, but such implementation decisions should not be construed as departing from the scope of the invention.

[0081] The various illustrative logic blocks, modules, and circuits described in conjunction with the embodiments disclosed herein can be implemented or performed using a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. The general-purpose processor may be a microprocessor, but in alternatives, it may be any conventional processor, controller, microcontroller, or state machine. The processor may also be implemented as a combination of computing devices, such as a combination of a DSP and a microprocessor, multiple microprocessors, one or more microprocessors cooperating with a DSP core, or any other such configuration.

[0082] The steps of the methods or algorithms described in conjunction with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of both. The software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, removable disk, CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to a processor such that the processor can read and write information to / from the storage medium. In an alternative, the storage medium may be integrated into the processor. The processor and storage medium may reside in an ASIC. The ASIC may reside in a user terminal. In an alternative, the processor and storage medium may reside as discrete components in the user terminal.

[0083] In one or more exemplary embodiments, the described functionality may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software as a computer program product, the functionality may be stored or transmitted as one or more instructions or code on or through a computer-readable medium. A computer-readable medium includes both computer storage media and communication media, encompassing any medium that facilitates the transfer of a computer program from one location to another. A storage medium may be any available medium accessible to a computer. By way of example and not limitation, such a computer-readable medium may include RAM, ROM, EEPROM, CD-ROM or other optical disc storage, disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and is accessible to a computer. Any connection is also legitimately referred to as a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of a medium. As used in this article, disk and disc include compact discs (CDs), laser discs, optical discs, digital multi-purpose discs (DVDs), floppy disks, and Blu-ray discs. Disks typically reproduce data magnetically, while discs reproduce data optically using lasers. Combinations of these should also be included within the scope of computer-readable media.

[0084] The prior description of this disclosure is provided to enable any person skilled in the art to make or use this disclosure. Various modifications to this disclosure will be apparent to those skilled in the art, and the general principles defined herein may be applied to other variations without departing from the spirit or scope of this disclosure. Therefore, this disclosure is not intended to be limited to the examples and designs described herein, but should be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A method for analyzing the correctness of data coupling between high-level and low-level requirements, characterized in that: The methods include: Step 1: Based on the traceability relationship between high-level and low-level requirements, establish a table showing the correspondence between high-level and low-level software requirements; Step 2: Based on the table of high-level and low-level software requirements, group the low-level requirements that trace back to the same high-level requirement, and supplement the high-level requirement information that the group of low-level requirements traces back to. Taking the high-level software requirement as the object and the low-level requirement input and output interface corresponding to the object as the data element, automatically generate the variables of the low-level requirement input and output interface for each high-level requirement. Step 3: Group the variables of the low-level requirement input and output interfaces as objects, according to the definition and use of the objects, and cross-pair them; Step 4: Combine control flow analysis to sort out the data flow information between high-level requirements expressed through the interfaces of low-level requirements; Step 5: Based on the valid "definition-use" pair table of data between high-level and low-level requirements, expand the input and output information tables of high-level and low-level requirements, supplement the input sources and output destinations, complete the data coupling relationship analysis between related requirement items, and form a data coupling relationship table of high-level and low-level requirements. Step 6: Compare the coupling items or their union of high-level demand data indirectly obtained from low-level demand analysis with the data coupling relationships obtained directly from high-level demand analysis to determine the correctness of the results of low-level demand data coupling analysis based on high-level demand.

2. The method for correctness analysis of low-level requirement data coupling based on high-level requirements according to claim 1, characterized in that, In step 2, after supplementing the high-level requirement information, a high-level requirement low-level requirement input and output information table is formed. The low-level requirement input is used, and the low-level requirement output is defined. Finally, step 2 generates a high-level requirement low-level requirement data definition table and a high-level requirement low-level requirement data usage table.

3. The method for correctness analysis of low-level requirement data coupling based on high-level requirements according to claim 2, characterized in that, In step 3, based on the high-level requirement low-level requirement data definition table and the high-level requirement low-level requirement data usage table, all definitions and all uses of each high-level requirement low-level requirement data are cross-paired to form multiple sets of possible high-level requirement low-level requirement data "definition-use" pairs. Then, "definition-use" pairs whose definitions and uses are limited to a single high-level requirement are automatically deleted from these pairs, forming "definition-use" pairs between high-level requirement low-level requirement data.

4. The method for correctness analysis of low-level requirement data coupling based on high-level requirements according to claim 3, characterized in that, In step 4, based on the valid "definition-use" pairs of high-level and low-level software requirements, the source of input variables and the destination of output variables for each high-level and low-level software requirement interface are sorted out to generate data flow information of low-level requirement interfaces between the top-level and high-level requirements. In the generated data flow information, only the "definition-use" pairs that are reachable from the control flow are retained, and the "definition-use" pairs that are not reachable from the control flow are deleted to form a valid table of "definition-use" pairs between high-level and low-level requirements.

5. The method for correctness analysis of low-level requirement data coupling based on high-level requirements according to claim 4, characterized in that, In step 6, the data items or their union in the high-level and low-level requirement data coupling relationship table are compared and analyzed to see if they are consistent with the data coupling relationship directly expressed by the high-level requirement interface. If they are inconsistent, the inconsistency is recorded and a defect report is submitted for correction. If they are consistent, the analysis ends to ensure that the low-level requirement and high-level requirement data coupling relationship is consistent.

6. A device for analyzing the correctness of data coupling between high-level and low-level requirements, characterized in that: The device includes: The module for establishing the mapping relationship table is configured to create a mapping relationship table between high-level and low-level software requirements based on the traceability relationship between high-level and low-level requirements. The low-level requirement grouping module is configured to group low-level requirements that trace back to the same high-level requirement based on the software high-level requirement and low-level requirement comparison table. For each group of low-level requirements, the module supplements the high-level requirement information that the group traces back to. Taking the software high-level requirement as the object and the low-level requirement input and output interface corresponding to the object as the data element, the module automatically generates the variables of the low-level requirement input and output interface for each high-level requirement. The cross-pairing module is configured to group variables from low-level requirement input and output interfaces as objects, and cross-pair them according to the definition and use of the objects; The data flow analysis module is configured to combine control flow analysis to analyze the data flow information between high-level requirements expressed through low-level requirement interfaces. The coupling relationship table creation module is configured to define and use a table based on valid high-level and low-level requirement data, expand the high-level and low-level requirement input and output information tables, supplement the input sources and output destinations, complete the data coupling relationship analysis between related requirement items, and form a high-level and low-level requirement data coupling relationship table. The coupling relationship determination module is configured to compare the coupling items or their union of high-level demand data indirectly obtained based on low-level demand analysis with the data coupling relationship obtained directly through high-level demand analysis to determine the correctness of the coupling analysis results of low-level demand data based on high-level demand.

7. The correctness analysis device for low-level requirement data coupling based on high-level requirements according to claim 6, characterized in that, In the low-level requirement grouping module, it is further configured to form a high-level requirement low-level requirement input and output information table after supplementing high-level requirement information. The low-level requirement input is used, and the low-level requirement output is defined. Finally, the low-level requirement grouping module generates a high-level requirement low-level requirement data definition table and a high-level requirement low-level requirement data usage table.

8. The correctness analysis device for low-level requirement data coupling based on high-level requirements according to claim 6, characterized in that, In the cross-pairing module, it is further configured to cross-pair all definitions and all uses of each high-level and low-level requirement data based on the high-level requirement low-level requirement data definition table and the high-level requirement low-level requirement data usage table, forming multiple sets of possible high-level and low-level requirement data "definition-use" pairs. Then, it automatically deletes "definition-use" pairs whose definitions and uses are limited to a single high-level requirement from these pairs, forming "definition-use" pairs between high-level and low-level requirement data.

9. The correctness analysis device for low-level requirement data coupling based on high-level requirements according to claim 6, characterized in that, In the data flow analysis module, it is further configured to analyze the source of input variables and the destination of output variables of each software high-level requirement and low-level requirement interface based on effective software high-level requirement and low-level requirement data "definition-use" pairs, and generate data flow information of low-level requirement interfaces between the top-level and high-level requirements. In the generated data flow information, only the "definition-use" pairs that are reachable from the control flow are retained, and the "definition-use" pairs that are not reachable from the control flow are deleted, so as to form an effective table of "definition-use" pairs between high-level and low-level requirements.

10. The correctness analysis device for low-level requirement data coupling based on high-level requirements according to claim 6, characterized in that, In the coupling relationship determination module, it is further configured to compare and analyze the data items or their union in the high-level and low-level requirement data coupling relationship table to see if they are consistent with the data coupling relationship directly expressed by the high-level requirement interface. If they are inconsistent, the inconsistency is recorded and a defect report is submitted for correction; if they are consistent, the analysis ends to make the low-level requirement and high-level requirement data coupling relationship consistent.