Traceability information extraction device and traceability information verification device
The traceability information extraction device automates the creation of test case-design document traceability information by analyzing execution paths, addressing manual registration errors and reducing maintenance efforts, thereby enhancing software development efficiency and quality.
Patent Information
- Application Number
- JP2025508195
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2023-03-23
- Filing Date
- 2024-02-07
- Publication Date
- 2025-11-14
- Estimated Expiration
- 2044-02-07
AI Technical Summary
Existing methods for software traceability management require manual keyword registration and frequent database updates, leading to potential human errors and increased maintenance efforts.
A traceability information extraction device that analyzes execution paths from test logs and design documents to automatically create test case-design document traceability information, reducing manual effort and improving software quality.
Automated extraction of traceability information reduces the number of steps required for software development, enabling easier detection of inconsistencies and improving software quality by minimizing manual review efforts.
Smart Images

Figure 0007770613000001 
Figure 0007770613000002 
Figure 0007770613000003
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to extracting traceability information for software development. [Background technology]
[0002] In software development, deliverables such as design documents, source code, test design documents, and test report documents are created. When specifications or features are changed in software, some of the deliverables that have already been created must be changed. Inconsistencies between multiple deliverables can cause software defects. Therefore, when a deliverable is changed, the developer must review it and verify that there is consistency between multiple deliverables. If the correspondence between deliverables is clearly defined, developers can easily identify the deliverables to be reviewed, which is expected to reduce the review effort. The correspondence between deliverables is called traceability. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2011-253345 Summary of the Invention [Problem to be solved by the invention]
[0004] Patent Document 1 discloses a method for associating deliverables from multiple processes by registering keywords for which traceability management is desired in a database and extracting deliverables containing the keywords.
[0005] The method of Patent Document 1 requires the work of registering keywords in a database in advance, which carries the risk of forgetting to register them due to human error. In addition, the registered keywords must be updated whenever the deliverable is updated, which requires database maintenance.
[0006] The present disclosure has been made to solve the above-mentioned problems, and aims to reduce the amount of work required to extract traceability information in software development. [Means for solving the problem]
[0007] The traceability information extraction device disclosed herein includes an execution path analysis unit that analyzes an execution path that indicates the execution order of the execution portions of source code executed in testing of the target software, based on a test log of the target software, which is an operation log when the target software is tested in accordance with test cases described in a test specification; an execution path mapping unit that associates test cases with the execution portions; and a design information mapping unit that associates the execution portions with the design document, based on design document-source code traceability information that indicates the correspondence between the design document and source code in the target software, and creates test case-design document traceability information that associates test cases that correspond to common execution portions with the design document. [Effects of the Invention]
[0008] According to the traceability information extraction device of the present disclosure, test case-design document traceability information is automatically created, thereby reducing the number of steps required to extract traceability information for software development. [Brief explanation of the drawings]
[0009] [Figure 1] 1 is a block diagram showing a configuration of a traceability information extraction device according to a first embodiment. [Figure 2] 4 is a flowchart showing the operation of the traceability information extraction device according to the first embodiment. [Figure 3] FIG. 10 is a diagram illustrating the execution path of the target software in test case 1. [Figure 4] FIG. 1 is a diagram illustrating a correspondence relationship between an execution path of target software and a design document. [Figure 5]It is a block diagram showing the configuration of the traceability information extraction device according to Embodiment 2. [Figure 6] It is a flowchart showing the operation of the traceability information extraction device according to Embodiment 2. [Figure 7] It is a diagram showing the correspondence between the difference part of the execution path of the target software and the design document. [Figure 8] It is a block diagram showing the configuration of the traceability information extraction device according to Embodiment 3. [Figure 9] It is a flowchart showing the operation of the traceability information extraction device according to Embodiment 3. [Figure 10] It is a diagram showing the correspondence between the difference part of the execution path of the target software and the design document. [Figure 11] It is a block diagram showing the configuration of the traceability information verification device according to Embodiment 4. [Figure 12] It is a diagram showing an example of test case - design document traceability information created by a designer. [Figure 13] An example of test case - design document traceability information is shown. [Figure 14] It is a diagram showing an example of traceability information verification results. [Figure 15] It is a block diagram showing the configuration of the traceability information verification device according to Embodiment 5. [Figure 16] It is a block diagram showing the configuration of the traceability information verification device according to Embodiment 6. [Figure 17] It is a diagram showing the hardware configuration of the traceability information extraction device etc. [Figure 18] It is a diagram showing the hardware configuration of the traceability information extraction device etc.
Modes for Carrying Out the Invention
[0010] <A. Embodiment 1> 1 is a block diagram showing the configuration of a traceability information extraction device 101 according to embodiment 1. A test specification 21, a test log (dynamic analysis result) 22, and design document-source code traceability information 23 are input to the traceability information extraction device 101.
[0011] The test specification 21 describes test cases for software including the software from which traceability information is to be extracted (hereinafter referred to as the target software). The test cases include prerequisites for testing the software, test methods, expected results, etc.
[0012] The test log 22 is an operation log of the target software when the target software is tested in accordance with the test cases described in the test specification 21. For example, if log output code is embedded in the source code of the target software, the test log 22 can be obtained when the software is tested. The test log 22 includes information that can identify the source code that was executed when the target software was tested. This information may also be information that can identify a list of executed functions. For example, if log output code is embedded in each function included in the source code of the target software, the traceability information extraction device 101 can obtain a list of functions that were executed during testing. The list of functions that were executed during testing is also referred to as information on the execution paths of the functions.
[0013] The test log 22 may be not only information about the execution path of a function, but also information about a file in which an executed function is written, or information about a module such as a class in an object-oriented programming environment. The log output code for acquiring the test log 22 may be embedded in a specific function, file, or module. For example, if the log output code is embedded in a function that is estimated to have many defect locations, the traceability information extraction device 101 can extract traceability information about the function and effectively check the traceability results.
[0014] The design document-source code traceability information 23 is traceability information that indicates the correspondence between the design document and the source code in the target software. The design document includes, for example, a specification. The design document-source code traceability information 23 is linked to the test log 22. For example, if the source code associated with the design document in the design document-source code traceability information 23 is in function units, the test log 22 is also output in function units. This embodiment does not depend on the programming language, so there are no restrictions on the programming language. Furthermore, each of the test specification document 21, the test log 22, and the design document-source code traceability information 23 is not limited to a single file, and may be multiple files.
[0015] The traceability information extraction device 101 outputs test case-design document traceability information 31. The test case-design document traceability information 31 is traceability information that associates test cases described in the test specification 21 with the design document described in the design document-source code traceability information 23. A software developer or designer can refer to the test case-design document traceability information 31 and check the consistency of the correspondence between the test cases and the design document to detect software defects, and correcting the defects can improve the quality of the software. Furthermore, if the test execution results indicate a defect, the software developer or designer can identify items in the design document that are candidates for correction.
[0016] The traceability information extraction device 101 includes an execution path analysis unit 11, an execution path mapping unit 12, and a design information mapping unit 13.
[0017] 2 is a flowchart showing the operation of the traceability information extraction device 101. The operation of the traceability information extraction device 101 will be described below along the flow of FIG.
[0018] First, the execution path analysis unit 11 distributes the test log 22 for each process or thread in preparation for the case where the target software is processed in parallel (step S101).
[0019] Thereafter, the execution path analysis unit 11 identifies an execution portion of the source code from the distributed test log 22 (step S102). The execution portion of the source code corresponds to file information describing the executed function name or the function to be executed, or module information such as a class in object-oriented programming.
[0020] Then, the execution path analysis unit 11 derives an execution path that indicates the execution order of the execution portions of the source code by linking the execution portions of the source code (step S103). The execution path analysis unit 11 performs the processing of this step for all processes or threads included in the test log 22, and outputs the processing result to the execution path mapping unit 12.
[0021] Next, the execution path mapping unit 12 associates the output result of the execution path analysis unit 11 with the test case described in the test specification 21, thereby associating the test case with the execution path, and outputs the result to the design information mapping unit 13 (step S104).
[0022] Thereafter, the design information mapping unit 13 associates the execution paths with the design information based on the design document-source code traceability information 23 and the execution paths derived in step S103 (step S105). Furthermore, the design information mapping unit 13 associates the test cases corresponding to the common execution paths (execution portions) with the design information based on the association information between the execution paths and design information obtained in step S105 and the association information between the test cases and execution paths obtained from the execution path mapping unit 12 (step S106), and outputs the result as test case-design document traceability information 31 (step S107).
[0023] 3 shows the execution path of the source code (functions) in test case 1. This execution path is extracted from the test log 22 by the execution path mapping unit 12. FIG. 3 shows that in test case 1, the functions are executed in the order of Func A, Func B, Func C, and Func D.
[0024] 4 shows the correspondence between the design document-source code traceability information 23 and the execution path of the source code in test case 1 shown in FIG. 3. This correspondence is performed by the design information mapping unit 13. In FIG. 4, the Func A function is associated with section 5.1(1) of specification A. The Func B function is associated with section 5.3 of specification A. The Func C function is associated with section 5.6 of specification A. The Func D function is associated with section 5.9 of specification A. From this information, the design information mapping unit 13 can extract test case-design document traceability information 31 indicating that test case 1 corresponds to sections 5.1(1), 5.3, 5.6, and 5.9 of specification A.
[0025] In the examples shown in Figures 3 and 4, functions are called sequentially by the processing of the target software. However, the traceability information extraction device 101 is also applicable when the target software processes programs in parallel. In this case, the test log 22 includes the process ID or thread ID at the time of execution. Then, the execution path analysis unit 11 outputs the execution path of the function for each process or thread based on the process ID or thread ID included in the test log 22. Here, the execution path of the function is in multiple columns, unlike in Figure 3. The execution path mapping unit 12 can associate each execution path with a specification, as in Figure 4.
[0026] In the example of Fig. 4, one specification is associated with one function, but multiple specifications may be associated with one function.
[0027] In FIGS. 3 and 4, it is shown that test case 1 is associated with the design document. The design information mapping unit 13 similarly extracts test case - design document traceability information 31 by associating other test cases included in the test specification 21 with the design document.
[0028] As described above, the traceability information extraction device 101 according to Embodiment 1 includes an execution path analysis unit 11, an execution path mapping unit 12, and a design information mapping unit 13. The execution path analysis unit 11 analyzes an execution path representing the execution order of the execution parts of the source code executed in the test for the target software based on the test log 22 of the target software, which is an operation log when the target software is tested according to the test cases described in the test specification 21. The execution path mapping unit 12 associates the test case with the execution part. The design information mapping unit 13 associates the execution part with the design document based on the design document - source code traceability information 23 representing the correspondence between the design document and the source code in the target software, and creates the test case - design document traceability information 31 by associating the test case and the design document corresponding to the common execution part. As a result, the extraction work of the traceability information representing the correspondence between the test case and the design document is automated, so the work man - hours for extracting the traceability information are reduced. By referring to the test case - design document traceability information 31 by the software developer or designer and confirming the consistency between the test case and the corresponding design document, software defects can be easily detected, and the quality of the software can be improved by correcting the defects.
[0029] <B. Embodiment 2> FIG. 5 is a block diagram showing the configuration of the traceability information extraction device 102 according to Embodiment 2.
[0030] The traceability information extraction device 102 includes a source code difference extraction unit 14 in addition to the configuration of the traceability information extraction device 101 according to the first embodiment. The traceability information extraction device 102 is mainly applied to software development for a model similar to a specific model, or differential development for developing the next version of software from the previous version.
[0031] The traceability information extraction device 102 receives a test log (dynamic analysis result) 22, design document-source code traceability information 23, as well as source code A 24 and source code B 25.
[0032] Source code A24 is the source code of the target software from which the traceability information extraction device 102 extracts traceability information. Source code B25 is the source code of other software that is a different version or a similar model to the target software. For example, source code A24 is the source code of a new version, and source code B25 is the source code of an older version. Alternatively, source code A24 and source code B25 are source code for models that are similar to each other. Therefore, source code A24 was created by changing part of the source code of source code B25.
[0033] The traceability information extracting device 102 outputs test case-design document traceability information limited to the difference portion of the source code A24 of the target software relative to the source code B25 of the other software as difference portion limited test case-design document traceability information 32.
[0034] The traceability information extraction device 102 does not perform programming language-dependent processing on the source code A24 and the source code B25, so there are no restrictions on the programming language. Furthermore, each of the test specification 21, the test log 22, the design document-source code traceability information 23, the source code A24, and the source code B25 is not limited to a single file, and may be multiple files.
[0035] The traceability information extraction device 101 according to the first embodiment outputs the test case-design document traceability information 31. However, as the scale of software increases, the test case-design document traceability information 31, in which all source code related to test cases is associated with the design document, becomes enormous, and therefore the man-hours required for a developer to check the test case-design document traceability information 31 also increase.
[0036] Therefore, the traceability information extraction device 102 outputs difference part limited test case-design document traceability information 32. The difference part limited test case-design document traceability information 32 is traceability information between the test case and the design document, limited to the difference parts between the source code A 24 and the source code B 25. The difference part limited test case-design document traceability information 32 has less information volume than the test case-design document traceability information 31, so the man-hours required for the developer to check it are reduced.
[0037] 6 is a flowchart showing the operation of the traceability information extraction device 102. The operation of the traceability information extraction device 102 will be described below along the flow of FIG.
[0038] The operations (steps S101 to S103) until the traceability information extraction device 102 derives the execution path of the source code are the same as those in the first embodiment.
[0039] After the execution path mapping unit 12 derives the execution path, the source code difference extraction unit 14 extracts the difference parts of the source code (step S103A). For example, in the case of differential development, the source code difference extraction unit 14 extracts the parts of the source code A24 that have been changed from the source code B25 as the difference parts.
[0040] The subsequent steps S104 to S107 are the same as those in the first embodiment. However, in the processing of each step, only the differential execution parts corresponding to the differential parts among the execution paths (execution parts) of the target software are used. Therefore, in step S104, the test cases and the differential execution parts are associated with each other. In step S105, the differential execution parts are associated with the design information. In step S106, the test cases corresponding to the common differential execution parts are associated with the design information, and in step S107, the result is output as differential part limited test case-design document traceability information 32.
[0041] FIG. 7 shows the correspondence between the execution path of source code A24 in test case 1 and the design document. This execution path is extracted from the test log 22 by the execution path mapping unit 12. FIG. 7 shows that in test case 1, functions are executed in the order of Func A, Func B', Func X, and Func D. In this example, the functions are called sequentially by software processing. However, the traceability information extraction device 102 is also applicable to cases where software processes programs in parallel.
[0042] The source code difference extraction unit 14 extracts the difference between the source code A 24 and the source code B 25. It is assumed that the function Func B' and the function Func X are the difference portions among the execution paths shown in FIG.
[0043] The design information mapping unit 13 grasps the correspondence between the Func B´ function and the Func X function and the design information by using the design document-source code traceability information 23. As shown in FIG. 7, the Func B´ function corresponds to Section 5.3(2) of Specification A, and the Func X function corresponds to Section 5.6(2) of Specification A. Through this process, the design information mapping unit 13 can extract traceability information limited to the difference that the test case 1 corresponds to Section 5.3(2) and Section 5.6(2) of Specification A. The design information mapping unit 13 performs the same process for other test cases included in the test specification 21 and associates them with the design document, thereby extracting the difference location limited test case-design document traceability information 32.
[0044] As described above, the traceability information extraction device 102 according to the second embodiment includes a source code difference extraction unit 14 in addition to the configuration of the traceability information extraction device 101 according to the first embodiment. The source code difference extraction unit 14 extracts the difference locations of the source code of the target software with respect to the source code of other software related to the target software with a version difference or a similar model. The execution path mapping unit 12 associates the difference execution sites corresponding to the difference locations among the execution sites of the target software with test cases. The design information mapping unit 13 creates difference location limited test case-design document traceability information 32 by associating test cases corresponding to common difference execution sites with the design document.
[0045] The difference location limited test case-design document traceability information 32 is traceability information limited to the difference locations of the target software with respect to other software, and has less information volume than the test case-design document traceability information 31 of the first embodiment. Therefore, even if the scale of the target software increases, designers or developers can easily detect and correct software defects by referring to the difference location limited test case-design document traceability information 32.
[0046] <C. Embodiment 3> FIG. 8 is a block diagram showing a configuration of the traceability information extraction device 103 according to the third embodiment.
[0047] Compared to the configuration of the traceability information extraction device 101 according to the first embodiment, the traceability information extraction device 103 has an execution path analysis unit 11 that includes a first execution path analysis unit 111 and a second execution path analysis unit 112, and further includes an execution path difference extraction unit 15. The traceability information extraction device 103 is primarily intended for application to software development for a model similar to a specific model, or differential development for developing the next version of software from the previous version.
[0048] The traceability information extraction device 103 receives the test specification 21, the test log A 221, the test log B 222, and the design document-source code traceability information 23 as input.
[0049] Test log A221 is an operation log of the target software when the target software is tested according to the test cases described in test specification 21. Test log B222 is an operation log of other software that is a different version or a similar model to the target software when the other software is tested according to the test cases described in test specification 21. For example, test log A221 is a test log of a new version of software, and test log B222 is a test log of an old version of software. Alternatively, test log A221 and test log B222 are test logs of software of similar models.
[0050] The traceability information extracting device 103 outputs test case-design document traceability information limited to difference portions of the execution path of the target software relative to the execution path of the other software as difference portion limited test case-design document traceability information 33.
[0051] Since this embodiment does not depend on a programming language, there are no restrictions on the programming language. Furthermore, each of the test specification 21, test log A 221, test log B 222, and design document-source code traceability information 23 is not limited to a single file, but may be multiple files.
[0052] The traceability information extraction device 101 according to the first embodiment outputs the test case-design document traceability information 31. However, as the scale of software increases, the test case-design document traceability information 31, in which all source code related to test cases is associated with the design document, becomes enormous, and therefore the man-hours required for a developer to check the test case-design document traceability information 31 also increase.
[0053] Therefore, the traceability information extraction device 103 outputs difference part limited test case-design document traceability information 33. The difference part limited test case-design document traceability information 33 is traceability information between a test case and a design document, limited to the difference parts between the execution path obtained from the test log A 221 and the execution path obtained from the test log B 222. The difference part limited test case-design document traceability information 33 has less information volume than the test case-design document traceability information 31, so the man-hours required for the developer to check it are reduced.
[0054] 9 is a flowchart showing the operation of the traceability information extraction device 103. The operation of the traceability information extraction device 103 will be described below along the flow of FIG.
[0055] First, the first execution path analysis unit 111 derives an execution path of the source code of the target software based on the test log A (steps S101, S102, S103) in the same manner as in embodiment 1. Similarly, the second execution path analysis unit 112 derives an execution path of the source code of another software based on the test log B (steps S101, S102, S103).
[0056] The execution path difference extraction unit 15 acquires the execution path of the target software based on the test log A from the first execution path analysis unit 111, and acquires the execution path of the other software based on the test log B from the second execution path analysis unit 112. Then, the execution path difference extraction unit 15 extracts the difference points of the execution path of the target software with respect to the execution path of the other software (step S103B).
[0057] The subsequent steps S104 to S107 are the same as those in the first embodiment. However, in the processing of each step, only the difference parts extracted in step S103B from the execution paths of the target software are used. Therefore, in step S104, the test cases are associated with the difference parts of the execution paths. In step S105, the difference parts of the execution paths are associated with the design information. In step S106, the test cases corresponding to the difference parts of the common execution paths are associated with the design information, and in step S107, the result is output as difference part limited test case-design document traceability information 33.
[0058] FIG. 10 shows execution paths extracted from the test logs of two pieces of software before and after the version upgrade. When the old version of the software is tested, the functions are executed in the order of Func A, Func B, Func C, and Func D. When the new version of the software is tested, the functions are executed in the order of Func A, Func B', Func X, and Func D. In this example, the functions are called sequentially by the software processing. However, the traceability information extraction device 103 can also be applied when the software processes programs in parallel.
[0059] The execution path difference extraction unit 15 extracts the difference between two execution paths before and after the version. In the example of Fig. 10, the change from function Func B to function Func B' and the change from function Func C to function Func X are extracted as difference information.
[0060] By using the design document-source code traceability information 23, the design information mapping unit 13 grasps the correspondence between the Func B´ function and the Func X function, which are the differential parts, and the design information. As shown in FIG. 10, the Func B´ function corresponds to Section 5.3(2) of Specification A, and the Func X function corresponds to Section 5.6(2) of Specification A. Through this process, the design information mapping unit 13 can extract the traceability information limited to the differential part that the test case 1 corresponds to Section 5.3(2) and Section 5.6(2) of Specification A. The design information mapping unit 13 performs the same process for other test cases included in the test specification 21 and associates them with the design document, thereby extracting the differential part limited test case-design document traceability information 33.
[0061] As described above, in the traceability information extraction device 103 according to Embodiment 3, the execution path analysis unit 11 analyzes the execution path of other software based on the test log 222 of other software, which is the operation log when other software related to the target software in terms of version difference or similar models is tested according to the test cases described in the test specification 21. The traceability information extraction device 103 includes an execution path difference extraction unit 15 that extracts the differential parts of the execution path of the target software with respect to the execution path of other software. The execution path mapping unit 12 associates the differential parts of the execution path of the target software with the test cases. The design information mapping unit 13 creates the differential part limited test case-design document traceability information 33, which is the test case-design document traceability information that associates the test cases corresponding to the common differential parts of the target software with the design document.
[0062] <D. Embodiment 4> FIG. 11 is a block diagram showing the configuration of the traceability information verification device 201 according to Embodiment 4.
[0063] The traceability information verification device 201 includes the traceability information extraction device 101 according to the first embodiment and a traceability information difference extraction unit 16. In addition to the test specification 21, test log 22, and design document-source code traceability information 23 that are input to the traceability information extraction device 101, the traceability information verification device 201 also receives test case-design document traceability information 26 created by the designer.
[0064] The test case-design document traceability information 26 created by the designer is traceability information that indicates the correspondence between the test case and the design document that the designer assumed when creating the test case, that is, pre-prepared traceability information between the test case and the design document. To distinguish the test case-design document traceability information 26 created by the designer from the test case-design document traceability information 31 created by the traceability information extraction device 101, the latter is also referred to as first test case-design document traceability information, and the former is also referred to as second test case-design document traceability information.
[0065] The traceability information difference extraction unit 16 extracts the difference between the test case-design document traceability information 31 created by the traceability information extraction device 101 and the test case-design document traceability information 26 created by the designer, and outputs the extracted difference as a traceability information verification result 34. This traceability information verification result 34 is an output of the traceability information verification device 201.
[0066] 12 shows an example of test case-design document traceability information 26 created by a designer. In this example, traceability information is shown for each combination of a test case and a function described in a design document. This example shows that test case 1 tests function XX, test case 2 tests function YY and function ZZ, test case 3 tests function XX and function YY, and test case 4 tests function XX, function YY, and function ZZ.
[0067] Figure 13 shows an example of test case - design document traceability information 31. Since the description of this figure is the same as that of Figure 12, it is omitted.
[0068] Figure 14 shows a traceability information verification result 34 representing the difference between the test case - design document traceability information 26 created by the designer in Figure 12 and the test case - design document traceability information 31 in Figure 13.
[0069] As described above, the traceability information verification device 201 according to Embodiment 4 includes the traceability information extraction device 101 according to Embodiment 1 and a traceability information difference extraction unit 16. The traceability information difference extraction unit 16 extracts the difference between the first test case - design document traceability information, which is the test case - design document traceability information created by the traceability information extraction device 101, and the second test case - design document traceability information, which is the traceability information between a test case and a design document prepared in advance, as the traceability information verification result 34. Thereby, the designer can improve the quality of the product.
[0070] For example, by looking at the traceability information verification result 34 in Figure 14, the designer recognizes that there is a difference between the test case - design document traceability information 26 and the test case - design document traceability information 26 created by the designer regarding the YY function of test case 4. Then, the designer can perform a cause analysis such as that the YY function that should be tested due to a defect (bug, etc.) during design / implementation is not executed for test case 4, or that test case 4 is not a test case for testing the YY function due to a mistake in the designer's test case design. By taking countermeasures, the quality of the manufactured product is improved.
[0071] <E. Embodiment 5> Figure 15 is a block diagram showing the configuration of the traceability information verification device 202 according to Embodiment 5.
[0072] The traceability information verification device 202 includes the traceability information extraction device 102 according to the second embodiment and a traceability information difference extraction unit 16. In addition to the test specification 21, test log 22, design document-source code traceability information 23, source code A 24, and source code B 25 that are input to the traceability information extraction device 102, the traceability information verification device 202 also receives test case-design document traceability information 27 created by the designer.
[0073] The test case-design document traceability information 27 created by the designer is traceability information that indicates the correspondence between the test case and the design document that the designer assumed when creating the test case. However, unlike the test case-design document traceability information 26 created by the designer, the test case-design document traceability information 27 created by the designer is traceability information that is limited to the differences between the source code A24 of the target software and the source code B25 of the other software. To distinguish the test case-design document traceability information 27 created by the designer from the test case-design document traceability information 32 created by the traceability information extraction device 102, the latter is also referred to as first test case-design document traceability information, and the former is also referred to as second test case-design document traceability information.
[0074] The traceability information difference extraction unit 16 extracts the differences between the difference part limited test case-design document traceability information 32 created by the traceability information extraction device 102 and the test case-design document traceability information 27 created by the designer, and outputs the extracted differences as the traceability information verification result 35. This traceability information verification result 35 is output by the traceability information verification device 202, and is the verification result of the traceability information limited to the difference parts of the source code A24 of the target software with respect to the source code B25 of the other software.
[0075] In this embodiment, the test case - design document traceability information 27 and the traceability information verification result 35 created by the designer are the same as the test case - design document traceability information 26 and the traceability information verification result 34 created by the designer in Embodiment 4, except that the information is limited to the difference between the source code A24 of the target software and the source code B25 of other software.
[0076] As described above, the traceability information verification apparatus 202 according to Embodiment 5 includes the traceability information extraction apparatus 102 according to Embodiment 2 and the traceability information difference extraction unit 16. The traceability information difference extraction unit 16 extracts the difference between the first test case - design document traceability information, which is the test case - design document traceability information created by the traceability information extraction apparatus 102, and the second test case - design document traceability information, which is the traceability information between the test case and the design document prepared in advance, as the traceability information verification result 35. Thereby, the designer can improve the quality of the product.
[0077] <F. Embodiment 6> FIG. 16 is a block diagram showing the configuration of the traceability information verification apparatus 203 according to Embodiment 6.
[0078] The traceability information verification apparatus 203 includes the traceability information extraction apparatus 103 according to Embodiment 3 and the traceability information difference extraction unit 16. In addition to the test specification 21, the test log A221, the test log B222, and the design document - source code traceability information 23, which are inputs to the traceability information extraction apparatus 103, the test case - design document traceability information 28 created by the designer is input to the traceability information verification apparatus 203.
[0079] The test case-design document traceability information 28 created by the designer is traceability information that indicates the correspondence between the test case and the design document that the designer assumed when creating the test case. However, the test case-design document traceability information 28 created by the designer is traceability information that is limited to the differences in the execution path of the target software relative to the execution path of other software. To distinguish the test case-design document traceability information 28 created by the designer from the test case-design document traceability information 33 created by the traceability information extraction device 103, the latter is also referred to as first test case-design document traceability information, and the former is also referred to as second test case-design document traceability information.
[0080] The traceability information difference extraction unit 16 extracts the differences between the difference part limited test case-design document traceability information 33 created by the traceability information extraction device 103 and the test case-design document traceability information 28 created by the designer, and outputs the extracted differences as a traceability information verification result 36. This traceability information verification result 36 is output by the traceability information verification device 203, and is the verification result of the traceability information limited to the difference parts of the execution path of the target software relative to the execution path of the other software.
[0081] In this embodiment, the test case-design document traceability information 28 and traceability information verification result 36 created by the designer are the same as the test case-design document traceability information 26 and traceability information verification result 34 created by the designer in embodiment 4, except that the information is limited to the differences in the execution path of the target software relative to the execution paths of other software.
[0082] As described above, the traceability information verification device 203 according to Embodiment 6 includes the traceability information extraction device 103 according to Embodiment 3 and a traceability information difference extraction unit 16. The traceability information difference extraction unit 16 extracts the difference between the first test case-design document traceability information, which is the test case-design document traceability information created by the traceability information extraction device 103, and the second test case-design document traceability information, which is the traceability information between a test case and a design document prepared in advance, as the traceability information verification result 36. Thereby, the designer can improve the quality of the product.
[0083] <G. Hardware Configuration> In the traceability information extraction devices 101, 102, 103, 104, and 105, the execution path analysis unit 11, the execution path mapping unit 12, the design information mapping unit 13, the source code difference extraction unit 14, and the execution path difference extraction unit 15 are realized by the processing circuit 81 shown in FIG. 17. Also, the traceability information difference extraction unit 16 in the traceability information verification devices 201, 202, and 203 is also realized by the processing circuit 81 shown in FIG. 17. That is, the processing circuit 81 includes the execution path analysis unit 11, the execution path mapping unit 12, the design information mapping unit 13, the source code difference extraction unit 14, the execution path difference extraction unit 15, and the traceability information difference extraction unit 16 (hereinafter, the execution path analysis unit 11, etc.). Dedicated hardware may be applied to the processing circuit 81, or a processor that executes a program stored in a memory may be applied. The processor is, for example, a central processing unit, a processing device, an arithmetic device, a microprocessor, a microcomputer, a DSP (Digital Signal Processor), or the like.
[0084] When the processing circuit 81 is dedicated hardware, the processing circuit 81 may be, for example, a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or a combination of these. Each function of the execution path analysis unit 11 and other units may be realized by a plurality of processing circuits 81, or the functions of each unit may be realized together by a single processing circuit.
[0085] When the processing circuit 81 is a processor, the functions of the execution path analysis unit 11 and the like are realized by a combination of software, etc. (software, firmware, or software and firmware). The software, etc. is written as a program and stored in memory. As shown in FIG. 18, the processor 82 applied to the processing circuit 81 realizes the functions of each unit by reading and executing a program stored in the memory 83. That is, the traceability information extraction devices 101, 102, 103 include a memory 83 for storing a program that, when executed by the processing circuit 81, results in the processing of the execution path analysis unit 11 and the like. In other words, this program can be said to cause a computer to execute the procedure or method of the execution path analysis unit 11 and the like. Here, the memory 83 may be, for example, a non-volatile or volatile semiconductor memory such as RAM (Random Access Memory), ROM (Read Only Memory), flash memory, EPROM (Erasable Programmable Read Only Memory), EEPROM (Electrically Erasable Programmable Read Only Memory), HDD (Hard Disk Drive), magnetic disk, flexible disk, optical disk, compact disk, mini disk, DVD (Digital Versatile Disk) and its drive device, or any storage medium that will be used in the future.
[0086] The above describes a configuration in which each function of the execution path analysis unit 11 and the like is realized either by hardware or software, etc. However, the present invention is not limited to this, and a configuration in which part of the execution path analysis unit 11 and the like is realized by dedicated hardware and another part is realized by software, etc. For example, the function of the execution path analysis unit 11 can be realized by a processing circuit as dedicated hardware, and the other functions can be realized by the processing circuit 81 as the processor 82 reading and executing a program stored in the memory 83.
[0087] As described above, the processing circuit can realize each of the above functions by hardware, software, or a combination of these.
[0088] Although the preferred embodiments have been described in detail above, the present invention is not limited to the above embodiments, and various modifications and substitutions can be made to the above embodiments without departing from the scope of the claims. [Explanation of symbols]
[0089] 11 Execution path analysis unit, 12 Execution path mapping unit, 13 Design information mapping unit, 14 Source code difference extraction unit, 15 Execution path difference extraction unit, 16 Traceability information difference extraction unit, 21 Test specification, 22 Test log, 23 Design document-source code traceability information, 24 Source code A, 25 Source code B, 26, 27, 28 Test case created by designer-design document traceability information, 31 Test case-design document traceability information, 32, 33 Difference location limited test case-design document traceability information, 34, 35, 36 Traceability information verification result, 81 Processing circuit, 82 Processor, 83 Memory, 101, 102, 103 Traceability information extraction device, 111 First execution path analysis unit, 112 Second execution path analysis unit, 201, 202, 203 Traceability information verification device, 221 Test log A, 222 Test Log B.
Claims
1. an execution path analysis unit that analyzes an execution path representing an execution order of execution portions of source code executed in a test of the target software based on a test log of the target software, which is an operation log when the target software is tested in accordance with a test case described in a test specification; an execution path mapping unit that associates the test cases with the execution portions; a design information mapping unit that associates the execution parts with the design document based on design document-source code traceability information that indicates the correspondence between the design document and the source code in the target software, and creates test case-design document traceability information that associates the test cases corresponding to the common execution parts with the design document; Traceability information extraction device.
2. a source code difference extraction unit that extracts differences in the source code of the target software from source code of other software that is a different version or a similar model to the target software; the execution path mapping unit associates a difference execution portion corresponding to the difference portion among the execution portions of the target software with the test case; the design information mapping unit creates the test case-design document traceability information that associates the test cases corresponding to the common differential execution portions with the design documents; The traceability information extraction device according to claim 1 .
3. the execution path analysis unit analyzes the execution path of the other software based on a test log of the other software, which is an operation log when the other software, which is a different version or a similar model to the target software, is tested in accordance with the test case described in the test specification; further comprising an execution path difference extraction unit that extracts a difference portion of the execution path of the target software relative to the execution path of the other software; the execution path mapping unit associates the difference portion of the execution path of the target software with the test case; the design information mapping unit creates the test case-design document traceability information that associates the test cases corresponding to the common difference parts of the target software with the design documents; The traceability information extraction device according to claim 1 .
4. The traceability information extraction device according to claim 1; a traceability information difference extraction unit that extracts a difference between first test case-design document traceability information, which is test case-design document traceability information created by the traceability information extraction device, and second test case-design document traceability information, which is pre-prepared traceability information between the test case and the design document; Traceability information verification device.
5. The traceability information extraction device according to claim 2; a traceability information difference extraction unit that extracts a difference between first test case-design document traceability information, which is test case-design document traceability information created by the traceability information extraction device, and second test case-design document traceability information, which is pre-prepared traceability information between the test case and the design document; Traceability information verification device.
6. The traceability information extraction device according to claim 3; a traceability information difference extraction unit that extracts a difference between first test case-design document traceability information, which is test case-design document traceability information created by the traceability information extraction device, and second test case-design document traceability information, which is pre-prepared traceability information between the test case and the design document; Traceability information verification device.
Citation Information
Patent Citations
Test case generation system and method
JP1999306046A
Result management device, result management method and result management program
JP2011253345A
Test data generation device, program and method
JP2014021686A
Test support apparatus, test support method, and test support program
JP2017054217A