Can method data dependencies support the assessment of traceability between requirements and source code?

@article{Kuang2015CanMD,
  title={Can method data dependencies support the assessment of traceability between requirements and source code?},
  author={Hongyu Kuang and Patrick M{\"a}der and Hao Hu and Achraf Ghabi and LiGuo Huang and Jian L{\"u} and Alexander Egyed},
  journal={Journal of Software: Evolution and Process},
  year={2015},
  volume={27},
  pages={838 - 866}
}
Requirements traceability benefits many software engineering activities, such as change impact analysis and risk assessment. However, these activities require complete and correct traceability links which is not trivial, making traceability assessment an important field of study. In recent years, requirements traceability research has focused on using call dependencies within source code to understand how code properties contribute to the implementation of a requirement and to assess whether… 

Preventing Defects: The Impact of Requirements Traceability Completeness on Software Quality

The strong impact of traceability completeness on the defect rate suggests that traceability is of great practical value for any kind of software development project, even if it is not mandated by a standard or regulation.

Traceability in the Wild: Automatically Augmenting Incomplete Trace Links

This paper addresses the fundamental problem of missing links between commits and issues by leveraging a combination of process and text-related features characterizing issues and code changes to train a classifier to identify missing issue tags in commit messages, thereby generating the missing links.

Analyzing Requirements and Traceability Information to Improve Bug Localization

  • M. RathD. LoPatrick Mäder
  • Computer Science
    2018 IEEE/ACM 15th International Conference on Mining Software Repositories (MSR)
  • 2018
This paper proposes a novel approach TraceScore that also utilizes projects' requirements information and explicit dependency trace links to further close the gap in order to relate a new bug report to defective source code files.

Improving Traceability Link Recovery Using Fine-grained Requirements-to-Code Relations

This work proposes to overcome the limitation of low precision at reasonable recall levels by leveraging fine-grained, method and sentence level, similarities between the artifacts for traceability link recovery by leveraging word embeddings and a Word Mover's Distance-based similarity to bridge the semantic gap.

Propagating frugal user feedback through closeness of code dependencies to improve IR-based traceability recovery

This paper proposes to improve IR-based traceability recovery by propagating a small amount of user feedback through the closeness analysis on call and data dependencies in the code through the quantified functional similarity for each code dependency and the generated IR values to improve the ranking of unverified links.

Analyzing closeness of code dependencies for improving IR-based Traceability Recovery

  • Hongyu KuangJia Nie Patrick Mäder
  • Computer Science
    2017 IEEE 24th International Conference on Software Analysis, Evolution and Reengineering (SANER)
  • 2017
This paper quantifies and utilize the “closeness” for each call and data dependency between two classes to improve rankings of traceability candidate lists and suggests that this approach outperforms three baseline approaches.

Towards Consistency Checking Between Software Architecture and Informal Documentation

  • Jan KeimA. Koziolek
  • Computer Science
    2019 IEEE International Conference on Software Architecture Companion (ICSA-C)
  • 2019
This paper presents a long-term vision, where all information from any sources are persisted to avoid losing crucial information about a system, and plans to address checking the consistency between models and textual natural language artefacts using natural language understanding.

Combining Machine Learning and Logical Reasoning to Improve Requirements Traceability Recovery

This paper proposes a novel traceability link recovery approach, which comprehensively measures the similarity between use cases and source code by exploring their particular properties and uses a classification algorithm to train the classifier.

Using Frugal User Feedback with Closeness Analysis on Code to Improve IR-Based Traceability Recovery

This paper proposes to improve IR-based traceability recovery by introducing only a small amount of user feedback into the closeness analysis on call and data dependencies in code by iteratively asking users to verify a chosen candidate link based on the quantified functional similarity for each code dependency and the generated IR values.

Towards Consistency Analysis between Formal and Informal Software Architecture Artefacts

  • Jan KeimYves SchneiderA. Koziolek
  • Computer Science
    2019 IEEE/ACM 2nd International Workshop on Establishing the Community-Wide Infrastructure for Architecture-Based Software Engineering (ECASE)
  • 2019
This paper presents their long-term vision, where they plan to persist information from any sources, e.g. from whiteboard discussions, to avoid losing crucial information about a system, and addresses consistency analyses between models and textual natural language artefacts using natural language understanding.

References

SHOWING 1-10 OF 37 REFERENCES

Do data dependencies in source code complement call dependencies for understanding requirements traceability?

The findings are that data relationships are roughly equally relevant to understanding the relationship to requirements traces than calling dependencies, and most interestingly, the analyses show that data dependencies complement call dependencies.

Understanding where requirements are implemented

This paper demonstrates that reasoning about requirements-to-code traces can be done, in part, by considering the calling relationships within the source code (call graph).

Assessing the effect of requirements traceability for software maintenance

Results show that subjects with traceability performed on average 21% faster on a task and created on average 60% more correct solutions - suggesting that traceability not only saves downstream cost but can profoundly improve software maintenance quality.

Code patterns for automatically validating requirements-to-code traces

  • Achraf GhabiAlexander Egyed
  • Computer Science
    2012 Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering
  • 2012
A novel approach for validating requirements-to-code traces through calling relationships within the code and is able to handle traces of varying levels of correctness and completeness.

Observations on the connectedness between requirements-to-code traces and calling relationships for trace validation

  • Achraf GhabiAlexander Egyed
  • Computer Science
    2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011)
  • 2011
Observations on the connectedness between requirements-to-code traces and calling relationships within the source code found that certain patterns of connectedness have high or low likelihoods of occurring.

Recovering and using use-case-diagram-to-source-code traceability links

The results demonstrate that modest programmer effort to create TLs together with automated program mining and analysis is a promising approach than can increase program understanding while reducing programmer burden.

Value-Based Requirements Traceability: Lessons Learned

Software development standards demand requirements traceability without being explicit about the appropriate level of quality of trace links. Unfortunately, long-term trace utilizations are typically

Recovering Traceability Links between Code and Documentation

A probabilistic and a vector space information retrieval model is applied in two case studies to trace C++ source code onto manual pages and Java code to functional requirements to recover traceability links between source code and free text documents.

How do we trace requirements: an initial study of analyst behavior in trace validation tasks

This paper examines a research version of the traceability tool REquirements TRacing On target (RETRO) that logs analyst actions that examines the user logs in order to understand how analysts work on traceability recovery tasks.

Combining textual and structural analysis of software artifacts for traceability link recovery

A preliminary case study indicates that the combined approach improves the precision and recall of recovering relevant links among documents as compared to stand-alone methods based solely on analyzing textual similarities.