Test Case Traceability in Source Code for Requirement Conformity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The inefficiency in software development due to the manual and labor-intensive process of testing software conformity to requirements, particularly in large-scale systems, where identifying and correcting source code changes is cumbersome and time-consuming.

Innovation Solution

A method that involves executing specific test cases and adding test results to the source code, using test object location information and markers to identify routines and associate test results directly with the relevant code sections, facilitating efficient tracking of software conformity to requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual testing methods are used to check software conformity to requirements, then testing thoroughness can be maintained, but development efficiency deteriorates due to labor-intensive processes

Engineering Contradiction:
Improvesoftware conformity verificationVSAvoidsoftware development efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

Test cases are prepared in advance with predetermined test objects and expected results. The test management tool automatically associates these pre-prepared test cases with source code routines, eliminating the need for manual test creation during development and improving efficiency while maintaining thoroughness.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

A test management tool is introduced as an intermediary between testers and source code. This tool automatically identifies routines, executes test cases, and records results, replacing manual testing processes and significantly improving development efficiency while maintaining comprehensive verification.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If comprehensive test cases are executed to ensure software meets requirements, then quality assurance is improved, but time consumption increases

Engineering Contradiction:
Improvesoftware quality assuranceVSAvoidtesting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Test cases are prepared beforehand with all necessary test objects and expected results defined. This preliminary preparation allows the test management tool to automatically execute comprehensive tests without requiring manual setup during the testing phase, reducing time consumption while ensuring thorough quality assurance.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The test management tool automatically performs test case selection, execution, and result recording without manual intervention. The system self-manages the entire testing process, significantly reducing the time required for comprehensive quality assurance while maintaining thorough verification.

Inventive Principle:
Principle #25Self-service

3Reliability

If test results are manually recorded and tracked, then testing completeness can be maintained, but operational efficiency deteriorates

Engineering Contradiction:
Improvetesting completenessVSAvoidtest result tracking
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The test management tool serves as an intermediary that automatically records and tracks test results. It retrieves expected results from test case definitions, compares them with actual test outcomes, and maintains comprehensive test records automatically, ensuring testing completeness while dramatically improving ease of operation.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system automatically performs test result recording, comparison, and tracking without manual intervention. The test management tool self-manages the entire result documentation process, maintaining complete test records while eliminating the operational burden of manual tracking.

Inventive Principle:
Principle #25Self-service

4Adaptability or versatility

If source code changes are made to meet requirements, then software functionality is improved, but the complexity of tracking and re-testing increases

Engineering Contradiction:
Improvesoftware functionalityVSAvoidchange tracking complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The test management tool provides automatic feedback by comparing actual test results with expected results from test case definitions. When source code changes are made, the system automatically identifies affected routines, re-executes relevant test cases, and reports whether the changes meet requirements, simplifying the tracking and re-testing process while improving adaptability.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8875105B2Efficiently developing software using test cases to check the conformity of the software to the requirements
Publication Date: 2014.10.28 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8875105B2 patent drawing
  • US8875105B2 patent drawing
  • US8875105B2 patent drawing

AI summary

A method for efficiently developing software and supporting creation of source code so as to develop software that meets the requirements. A plurality of test cases defining a plurality of respective tests to be executed to check the conformity of the software to the requirements are used. In a test execution step, one or more specific test cases selected from the plurality of test cases are executed or the specific test cases are caused to be executed. Furthermore, a test result of a test case executed or caused to be executed in the test case execution step is added to the source code.