skip to main content
10.1145/1287624.1287640acmconferencesArticle/Chapter ViewAbstractPublication PagesfseConference Proceedingsconference-collections
Article

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

Published: 07 September 2007 Publication History

Abstract

Use case diagrams (UCDs) are widely used to describe requirements and desired functionality of software products. However, UCDs are loosely linked to source code, and maintaining traces between the source code and elements of UCDs is a manual, tedious, and laborious process. These traces help programmers to understand code that they maintain and evolve.
Our contribution is twofold. First, we offer a novel approach for automating part of the process of recovering traceability links (TLs) between types and variables in Java programs and elements of UCDs. We evaluate our prototype implementation on open-source and commercial software, and the results suggest that our approach can recover many TLs with a high degree of automation and precision.
Second, we developed an Eclipse plugin that enables programmers to trace program types and variables to elements of UCDs and vice versa using recovered TLs. We conducted a case study that shows that programmers could maintain and evolve software more efficiently with our plugin. These 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.

References

[1]
Private conversations with IBM Rational, ETrade, GE, Bank of New York, and Bank of America employees.
[2]
B. C. D. Anda, K. Hansen, I. Gullesen, and H. K. Thorsen. Experiences from using a UML-based development method in a large safety-critical project. Empirical Software Engineering, 2005.
[3]
N. Anquetil and T. C. Lethbridge. Assessing the relevance of identifier names in a legacy software system. In CASCON, page 4, 1998.
[4]
G. Antoniol, G. Canfora, G. Casazza, A. D. Lucia, and E. Merlo. Recovering traceability links between code and documentation. IEEE Trans. Software Eng., 28(10):970--983, 2002.
[5]
T.J.Biggerstaff, B.G.Mitbander, and D.E.Webster.The concept assignment problem in program understanding. In ICSE, pages 482--498, 1993.
[6]
K. Chen and V. Rajlich. Case study of feature location using dependence graph. Proceedings of the 8th IWPC, page 241, 2000.
[7]
J. Cleland-Huang, R. Settimi, O. B. Khadra, E. Berezhanskaya, and S. Christina. Goal-centric traceability for managing non-functional requirements. In ICSE, pages 362--371, 2005.
[8]
W. W. Cohen and H. Hirsh. Joins that generalize: Text classification using WHIRL. In KDD, pages 169--173, 1998.
[9]
M. Dorfman and R. F. Flynn. ARTS - an automated requirements traceability system. Journal of Systems and Software, 4(1):63--74, 1984.
[10]
A. Egyed. A scenario-driven approach to traceability. In ICSE, pages 123--132, 2001.
[11]
A. Egyed and P. Grünbacher. Automating requirements traceability: Beyond the record & replay paradigm. In ASE, pages 163--171, 2002.
[12]
I. Jacobson. Object oriented development in an industrial environment. In OOPSLA, pages 183--191, 1987.
[13]
A. Marcus and J. I. Maletic. Recovering documentation-to-source-code traceability links using latent semantic indexing. In ICSE, pages 125--137, 2003.
[14]
R. Michalski and G. Tecuci. Machine Learning: A Multistrategy Approach. Morgan Kaufmann, February 1994.
[15]
G. C. Murphy, D. Notkin, and K. J. Sullivan. Software reflexion models: Bridging the gap between source and high-level models. In SIGSOFT FSE, pages 18--28, 1995.
[16]
F. A. C. Pinheiro and J. A. Goguen. An object-oriented tool for tracing requirements. IEEE Software, 13(2):52--64, 1996.
[17]
D. Poshyvanyk, Y. Gueheneuc, A. Marcus, G. Antoniol, and V. Rajlich. Combining Probabilistic Ranking and Latent Semantic Indexing for Feature Identification. Proceedings of 14th IEEE ICPC, Athens, Greece, pages 137--148, 2006.
[18]
J. Sillito, G. C. Murphy, and K. D. Volder. Questions programmers ask during software evolution tasks. In SIGSOFT FSE, pages 23--34, 2006.
[19]
G. Spanoudakis. Plausible and adaptive requirement traceability structures. In SEKE, pages 135--142, 2002.
[20]
L. Tan, D. Yuan, and Y. Zhou. Hotcomments: How to make program comments more useful? In HotOS, pages 49--54, 2007.
[21]
I. H. Witten and E. Frank. Data Mining: Practical Machine Learning Tools and Techniques. Morgan Kaufmann, 2005.

Cited By

View all
  • (2025)Automatic code generation based on Abstract Syntax-based encoding. Application on malware detection code generation based on MITRE ATT&CK techniquesExpert Systems with Applications10.1016/j.eswa.2024.125821264(125821)Online publication date: Mar-2025
  • (2023)A Comprehensive Taxonomy for Prediction Models in Software EngineeringInformation10.3390/info1402011114:2(111)Online publication date: 10-Feb-2023
  • (2022)Enhancing Traceability Link Recovery with Unlabeled Data2022 IEEE 33rd International Symposium on Software Reliability Engineering (ISSRE)10.1109/ISSRE55969.2022.00050(446-457)Online publication date: Oct-2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ESEC-FSE '07: Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
September 2007
638 pages
ISBN:9781595938114
DOI:10.1145/1287624
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 07 September 2007

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. LeanArt
  2. machine learning
  3. program analysis
  4. traceability links
  5. use case diagram

Qualifiers

  • Article

Conference

ESEC/FSE07
Sponsor:

Acceptance Rates

Overall Acceptance Rate 112 of 543 submissions, 21%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)57
  • Downloads (Last 6 weeks)2
Reflects downloads up to 17 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2025)Automatic code generation based on Abstract Syntax-based encoding. Application on malware detection code generation based on MITRE ATT&CK techniquesExpert Systems with Applications10.1016/j.eswa.2024.125821264(125821)Online publication date: Mar-2025
  • (2023)A Comprehensive Taxonomy for Prediction Models in Software EngineeringInformation10.3390/info1402011114:2(111)Online publication date: 10-Feb-2023
  • (2022)Enhancing Traceability Link Recovery with Unlabeled Data2022 IEEE 33rd International Symposium on Software Reliability Engineering (ISSRE)10.1109/ISSRE55969.2022.00050(446-457)Online publication date: Oct-2022
  • (2021)Knowledge Incorporation in Requirements Traceability RecoveryInformation Science and Applications10.1007/978-981-33-6385-4_24(253-264)Online publication date: 3-Apr-2021
  • (2021)Security risks in cyber physical systems—A systematic mapping studyJournal of Software: Evolution and Process10.1002/smr.234633:9Online publication date: 12-Sep-2021
  • (2020)An Automated Hybrid Approach for Generating Requirements Trace LinksInternational Journal of Software Engineering and Knowledge Engineering10.1142/S021819402050027830:07(1005-1048)Online publication date: 26-Aug-2020
  • (2019)Mining traces between source code and textual documentsInternational Journal of Computer Applications in Technology10.5555/3302625.330263059:1(43-52)Online publication date: 1-Jan-2019
  • (2019)Recovering semantic traceability between requirements and design for change impact analysisInnovations in Systems and Software Engineering10.1007/s11334-019-00330-w15:2(101-115)Online publication date: 1-Jun-2019
  • (2018)DCTracVisAutomated Software Engineering10.5555/3288647.328871525:4(703-741)Online publication date: 1-Dec-2018
  • (2018)Traceability in Systems Engineering: An Avionics Case Study2018 IEEE 42nd Annual Computer Software and Applications Conference (COMPSAC)10.1109/COMPSAC.2018.10345(818-823)Online publication date: Jul-2018
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media