Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/3412841.3442021acmconferencesArticle/Chapter ViewAbstractPublication PagessacConference Proceedingsconference-collections
research-article
Open access

On the effect of incompleteness to check requirement-to-method traces

Published: 22 April 2021 Publication History

Abstract

Requirement-to-method traces reveal the code location(s) where a requirement is implemented. This is helpful to software engineers when they have to perform tasks such as software maintenance or bug fixing. Indeed, being aware of the method(s) that implement a requirement saves engineers' time, as it pinpoints the exact code region that needs to be edited to perform a bug fix or a maintenance task. Engineers produce traces manually as well as automatically. Nevertheless, traces are incomplete. This limits the amount of information that could be used by an automated technique to check further traces. Therefore, since traces are incomplete, we would like to study the effect of incompleteness on the automated assessment of requirement-to-method traces. In this paper, we apply machine learning on either incomplete or complete tracing information and we evaluate the effect of incompleteness on checking trace information. We demonstrate that the use of complete traces might yield a higher precision but yields a lower recall. Also, the use of incomplete traces yields a higher recall but a lower precision.

References

[1]
[n. d.]. https://github.com/warpwe/java-chess.
[2]
[n. d.]. https://sourceforge.net/projects/ganttproject.
[3]
[n. d.]. https://sourceforge.net/projects/itrust.
[4]
[n. d.]. https://sourceforge.net/projects/jhotdraw.
[5]
N. Aizenbud-Reshef, B. T. Nolan, J. Rubin, and Y. Shaham-Gafni. 2006. Model Traceability. IBM Syst. J. 45, 3 (July 2006), 515--526.
[6]
N. Ali, Y. Guéhéneuc, and G. Antoniol. 2013. Trustrace: Mining Software Repositories to Improve the Accuracy of Requirement Traceability Links. IEEE Transactions on Software Engineering 39, 5 (May 2013), 725--741.
[7]
Giuliano Antoniol, Gerardo Canfora, Gerardo Casazza, Andrea De Lucia, and Ettore Merlo. 2002. Recovering Traceability Links Between Code and Documentation. IEEE Trans. Softw. Eng. 28, 10 (Oct. 2002), 970--983.
[8]
Leo Breiman. 2001. Random Forests. Mach. Learn. 45, 1 (Oct. 2001), 5--32.
[9]
Lionel C. Briand, Yvan Labiche, and Tao Yue. 2009. Automated Traceability Analysis for UML Model Refinements. Inf. Softw. Technol. 51, 2 (Feb. 2009), 512--527.
[10]
J. Cleland-Huang, A. Czauderna, M. Gibiec, and J. Emenecker. 2010. A machine learning approach for tracing regulatory codes to product specific requirements. In 2010 ACM/IEEE 32nd International Conference on Software Engineering, Vol. 1. 155--164.
[11]
M. Eaddy, A. V. Aho, G. Antoniol, and Y. Guéhéneuc. 2008. CERBERUS: Tracing Requirements to Source Code Using Information Retrieval, Dynamic Analysis, and Program Analysis. In 2008 16th IEEE International Conference on Program Comprehension. 53--62.
[12]
A. Egyed, F. Graf, and P. Grünbacher. 2010. Effort and Quality of Recovering Requirements-to-Code Traces: Two Exploratory Experiments. In 2010 18th IEEE International Requirements Engineering Conference. 221--230.
[13]
A. Ghabi and A. Egyed. 2012. Code patterns for automatically validating requirements-to-code traces. In 2012 Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering. 200--209.
[14]
Arda Goknil, Ivan Kurtev, and Klaas van den Berg. 2010. Tool Support for Generation and Validation of Traces Between Requirements and Architecture. In Proceedings of the 6th ECMFA Traceability Workshop (ECMFA-TW '10). ACM, New York, NY, USA, 39--46.
[15]
Jin L.C. Guo, Jinghui Cheng, and Jane Cleland-Huang. 2018. Semantically Enhanced Software Traceability Using Deep Learning Techniques. (04 2018).
[16]
Wei-Keat Kong, Jane Huffman Hayes, Alex Dekhtyar, and Jeff Holden. 2011. How Do We Trace Requirements: An Initial Study of Analyst Behavior in Trace Validation Tasks. In Proceedings of the 4th International Workshop on Cooperative and Human Aspects of Software Engineering (CHASE '11). ACM, New York, NY, USA, 32--39.
[17]
Patrick Mader and Alexander Egyed. 2015. Do developers benefit from requirements traceability when evolving and maintaining a software system? Empirical Software Engineering 20, 2 (01 Apr 2015), 413--441.
[18]
Marius Marin, Arie Van Deursen, and Leon Moonen. 2007. Identifying Crosscutting Concerns Using Fan-In Analysis. ACM Trans. Softw. Eng. Methodol. 17, 1, Article 3 (Dec. 2007), 37 pages.
[19]
M. Mirakhorli and J. Cleland-Huang. 2016. Detecting, Tracing, and Monitoring Architectural Tactics in Code. IEEE Transactions on Software Engineering 42, 3 (March 2016), 205--220.
[20]
P. Mäder and A. Egyed. 2011. Do software engineers benefit from source code navigation with traceability? --- An experiment in software change management. In 2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011). 444--447.
[21]
A. Panichella, C. McMillan, E. Moritz, D. Palmieri, R. Oliveto, D. Poshyvanyk, and A. De Lucia. 2013. When and How Using Structural Information to Improve IR-Based Traceability Recovery. In 2013 17th European Conference on Software Maintenance and Reengineering. 199--208.
[22]
David Lorge Parnas. 1994. Software Aging. In Proceedings of the 16th International Conference on Software Engineering (ICSE '94). IEEE Computer Society Press, Los Alamitos, CA, USA, 279--287. http://dl.acm.org/citation.cfm?id=257734.257788
[23]
Renaud Pawlak, Martin Monperrus, Nicolas Petitprez, Carlos Noguera, and Lionel Seinturier. 2015. Spoon: A Library for Implementing Analyses and Transformations of Java Source Code. Software: Practice and Experience 46 (2015), 1155--1179.
[24]
Mona Rahimi and Jane Cleland-Huang. 2018. Evolving software trace links between requirements and source code. Empirical Software Engineering 23, 4 (01 Aug 2018), 2198--2231.
[25]
M. Rahimi, W. Goss, and J. Cleland-Huang. 2016. Evolving Requirements-to-Code Trace Links across Versions of a Software System. In 2016 IEEE International Conference on Software Maintenance and Evolution (ICSME). 99--109.
[26]
M. P. Robillard, W. Coelho, and G. C. Murphy. 2004. How effective developers investigate source code: an exploratory study. IEEE Transactions on Software Engineering 30, 12 (Dec 2004), 889--903.
[27]
Martin P. Robillard and Gail C. Murphy. 2002. Concern Graphs: Finding and Describing Concerns Using Structural Program Dependencies. In Proceedings of the 24th International Conference on Software Engineering (ICSE '02). ACM, New York, NY, USA, 406--416.
[28]
Bonita Sharif, John Meinken, Timothy Shaffer, and Huzefa Kagdi. 2017. Eye movements in software traceability link recovery. Empirical Software Engineering 22, 3 (01 Jun 2017), 1063--1102.
[29]
Yonghee Shin and L. Williams. 2006. Work in Progress: Exploring Security and Privacy Concepts through the Development and Testing of the iTrust Medical Records System. In Frontiers in Education 36th Annual Conference. IEEE Computer Society, Los Alamitos, CA, USA, 30--31.
[30]
Paolo Tonella. 2003. Using a Concept Lattice of Decomposition Slices for Program Understanding and Impact Analysis. IEEE Trans. Softw. Eng. 29, 6 (June 2003), 495--509.
[31]
Braden Walters, Timothy Shaffer, Bonita Sharif, and Huzefa Kagdi. 2014. Capturing Software Traceability Links from Developers' Eye Gazes. In Proceedings of the 22Nd International Conference on Program Comprehension (ICPC 2014). ACM, New York, NY, USA, 201--204.

Cited By

View all
  • (2024)MLTracer: An Approach Based on Multi-Layered Gradient Boosting Decision Trees for Requirements Traceability Recovery2024 International Joint Conference on Neural Networks (IJCNN)10.1109/IJCNN60899.2024.10651499(1-8)Online publication date: 30-Jun-2024
  • (2023)A Systematic Mapping Study of Machine Learning Techniques Applied to Software Traceability2023 IEEE International Conference on Systems, Man, and Cybernetics (SMC)10.1109/SMC53992.2023.10394446(623-628)Online publication date: 1-Oct-2023
  • (2023)An Empirical Study on Data Balancing in Machine Learning Based Software Traceability Methods2023 International Joint Conference on Neural Networks (IJCNN)10.1109/IJCNN54540.2023.10191386(1-8)Online publication date: 18-Jun-2023
  • Show More Cited By

Index Terms

  1. On the effect of incompleteness to check requirement-to-method traces

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    SAC '21: Proceedings of the 36th Annual ACM Symposium on Applied Computing
    March 2021
    2075 pages
    ISBN:9781450381048
    DOI:10.1145/3412841
    This work is licensed under a Creative Commons Attribution-ShareAlike International 4.0 License.

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 22 April 2021

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. machine learning
    2. requirement-to-method traces
    3. traceability

    Qualifiers

    • Research-article

    Funding Sources

    • Austrian Science Fund (FWF)
    • Federal Ministry of Transport, Innovation and Technology
    • Provinces of Upper Austria and Styria
    • Austrian Federal Ministry for Digital and Economic Affairs

    Conference

    SAC '21
    Sponsor:
    SAC '21: The 36th ACM/SIGAPP Symposium on Applied Computing
    March 22 - 26, 2021
    Virtual Event, Republic of Korea

    Acceptance Rates

    Overall Acceptance Rate 1,650 of 6,669 submissions, 25%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)87
    • Downloads (Last 6 weeks)19
    Reflects downloads up to 20 Sep 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)MLTracer: An Approach Based on Multi-Layered Gradient Boosting Decision Trees for Requirements Traceability Recovery2024 International Joint Conference on Neural Networks (IJCNN)10.1109/IJCNN60899.2024.10651499(1-8)Online publication date: 30-Jun-2024
    • (2023)A Systematic Mapping Study of Machine Learning Techniques Applied to Software Traceability2023 IEEE International Conference on Systems, Man, and Cybernetics (SMC)10.1109/SMC53992.2023.10394446(623-628)Online publication date: 1-Oct-2023
    • (2023)An Empirical Study on Data Balancing in Machine Learning Based Software Traceability Methods2023 International Joint Conference on Neural Networks (IJCNN)10.1109/IJCNN54540.2023.10191386(1-8)Online publication date: 18-Jun-2023
    • (2022)IRRT: An Automated Software Requirements Traceability Tool based on Information Retrieval Model2022 IEEE 22nd International Conference on Software Quality, Reliability, and Security Companion (QRS-C)10.1109/QRS-C57518.2022.00084(525-532)Online publication date: Dec-2022
    • (2021)A Traceability Dataset for Open Source Systems2021 IEEE/ACM 18th International Conference on Mining Software Repositories (MSR)10.1109/MSR52588.2021.00073(555-559)Online publication date: May-2021
    • (2021)TraceRefiner: An Automated Technique for Refining Coarse-Grained Requirement-to-Class Traces2021 28th Asia-Pacific Software Engineering Conference (APSEC)10.1109/APSEC53868.2021.00009(12-21)Online publication date: Dec-2021

    View Options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Get Access

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media