Abstract
In requirement engineering, researchers have proposed various tractability recovery approaches. To the best of our knowledge, all traceability recovery approaches have low precision and recall. Our main claim in this chapter is that there exist factors that impact the traceability approaches’ inputs, in particular source document, target document, and experts’ opinion, that cause low precision and recall. In this chapter, we pursue four objectives: first, to identify and document factors that impact traceability recovery approaches’ inputs; second, to identify metrics/tools to measure/improve the quality of the inputs with respect to the identified factors, third, to provide precautions to control these factors, and, fourth, to empirically prove and quantify the effect of one of these factors–expert’s programming knowledge–on the traceability recovery approaches’ inputs. To achieve the first two objectives, we perform an incremental literature review of traceability recovery approaches and identify and document three key inputs and the seven factors impacting these inputs, out of 12 identified factors. We analyse the reported results in literature for the identified factors to address our third objective. We conduct an empirical study to assess the impact of expert’s programming knowledge, to address our fourth objective. We use the effort, number of correct answers, and time to measure the effect of expert’s programming knowledge on traceability recovery. We conclude that, in the literature, seven factors impacting the inputs of traceability recovery approaches have been identified, documented, and reported along with related metrics/tools and precautions. We suggest that practitioners should be wary of these seven factors and researchers should focus on the five others to improve traceability recovery approaches.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Abadi, A., Nisenson, M., Simionovici, Y.: A traceability technique for specifications. In: The 16th IEEE International Conference on Program Comprehension (ICPC’08), pp. 103–112. Amsterdam, The Netherlands (2008)
Ali, N.: Trustrace: Improving automated trace retrieval through resource trust analysis. In: ICPC ’11: Proceedings of the International Conference on Program Comprehension (ICPC’11), p. 4. IEEE Computer Society, Washington, DC (2011)
Antoniol, G.: Recovery of traceability links in software artifacts and systems. PhD Thesis, Montreal, QC (2003)
Antoniol, G., Canfora, G., Casazza, G., De Lucia, A., Merlo, E.: Recovering traceability links between code and documentation. IEEE Trans. Softw. Eng. 28(10), 970–983. Piscataway, NJ (2002). ISSN:0098-5589
Antoniol, G., Hayes, J., Guéhéneuc, Y.G., di Penta, M.: Reuse or rewrite: Combining textual, static, and dynamic analyses to assess the cost of keeping a system up-to-date. In: IEEE International Conference on Software Maintenance (ICSM’08), Beijing, China (2008)
Bianchi, A., Fasolino, A., Visaggio, G.: An exploratory case study of the maintenance effectiveness of traceability models. In: Proceedings of the 8th International Workshop on Program Comprehension (IWPC 2000), pp. 149–158. IEEE Computer Society, Los Alamitos, CA (2000)
Binkley, D., Feild, H., Lawrie, D., Pighin, M.: Software fault prediction using language processing. In: Testing: Academic and Industrial Conference Practice and Research Techniques- MUTATION, 2007. TAICPART-MUTATION 2007, IEEE, pp. 99–110. Windsor, UK (2007)
Binkley, D., Feild, H., Lawrie, D., Pighin, M.: Increasing diversity: Natural language measures for software fault prediction. J. Syst. Softw. 82(11), 1793–1803 (2009)
Butler, S., Wermelinger, M., Yu, Y., Sharp, H.: Relating identifier naming flaws and code quality: An empirical study. IEEE Comput. Soc. 0, pp. 31–35, Los Alamitos, CA (2009)
Chan, T.: Impact of programming and application-specific knowledge on maintenance effort: A hazard rate model. In: IEEE International Conference on Software Maintenance (ICSM’08), pp. 47–56. IEEE, Orlando, FL (2008)
Chantree, F., Nuseibeh, B., de Roeck, A., Willis, A.: Identifying nocuous ambiguities in natural language requirements. In: 14th IEEE International Conference Requirements Engineering, pp. 59–68. Minneapolis, MN (2006)
Cleland-Huang, J., Chang, C.K., Christensen, M.: Event-based traceability for managing evolutionary change. IEEE Trans. Softw. Eng. 29(9), 796–810 (2003)
Cleland-Huang, J., Berenbach, B., Clark, S., Settimi, R., Romanova, E.: Best practices for automated traceability. Computer 40, 27–35 (2007)
Cuddeback, D., JHH, Dekhtyar, A.: Automated Requirements Traceability: The Study of Human Analysts. IEEE Computer Society, Los Alamitos, CA (2010)
De Lucia, A., Oliveto, R., Tortora, G.: Assessing IR-based traceability recovery tools through controlled experiments. Empirical Softw. Eng. 14, 57–92 (2009)
Deissenboeck, F., Pizka, M.: Concise and consistent naming. Softw. Qual. J. 14, 261–282 (2006)
Dekhtyar, A., Hayes, J., Larsen, J.: Make the most of your time: How should the analyst work with automated traceability tools? In: International Workshop on Predictor Models in Software Engineering (PROMISE’07: ICSE Workshops 2007), pp. 1–4. Minneapolis, MN (2007)
Eder, J., Panagos, E., Rabinovich, M.: Time constraints in workflow systems. In: Proceedings of the 11th International Conference on Advanced Information Systems Engineering, pp. 286–300. Springer, London, CAiSE ’99 (1999)
Egyed, A.: A scenario-driven approach to traceability. In: Proceedings of the 23rd International Conference on Software Engineering (ICSE’01), pp. 123–132. Toronto, ON (2001)
Egyed, A., Grünbacher, P.: Automating requirements traceability: Beyond the record & replay paradigm. In: ASE’02: Proceedings of the 17th IEEE international conference on Automated software engineering, p. 163. IEEE Computer Society, Washington, DC (2002)
Egyed, A., Grünbacher, P.: Identifying requirements conflicts and cooperation: How quality attributes and automated traceability can help. Softw. IEEE 21(6), 50–58 (2004)
Egyed, A., Biffl, S., Heindl, M., Grünbacher, P.: A value-based approach for understanding costbenefit trade-offs during automated software traceability. In: Proceedings of the 3rd International Workshop on Traceability in Emerging Forms of Software Engineering, pp. 2–7. ACM, New York, NY, TEFSE ’05 (2005)
Egyed, A., Graf, F., Grünbacher, P.: Effort and quality of recovering requirements-to-code traces: Two exploratory experiments. In: IEEE International Conference on Requirements Engineering, pp. 221–230. IEEE Computer Society, Los Alamitos, CA (2010)
Fabbrini, F., Fusani, M., Gnesi, S., Lami, G.: The linguistic approach to the natural language requirements quality: Benefit of the use of an automatic tool. In: Proceedings of the 26th Annual NASA Goddard, Software Engineering Workshop, pp. 97–105. IEEE Computer Society, Los Alamitos, CA (2001)
Gervasi, V., Zowghi, D.: On the role of ambiguity in requirement engineering. In: REFSQ, pp. 248–254.Springer, Berlin/Heidelberg (2010)
Ghazarian, A.: A design-rule-based constructive approach to building traceable software. PhD Thesis, Toronto, ON (2009)
Gibson, M.D., Conheeney, K.: Domain knowledge reuse during requirements engineering. In: Proceedings of the 7th International Conference on Advanced Information Systems Engineering, pp. 283–296. Springer, London (1995)
Gleich, B., Creighton, O., Kof, L.: Ambiguity Detection: Towards a Tool Explaining Ambiguity Sources. Requirements Engineering: Foundation for Software Quality, pp. 218–232. Essen, Germany (2010)
Gregorc, A.: An Adultâs Guide to Style. Gregorc Associates, Inc., Columbia, CT (1982)
Grünbacher, P., Briggs, R.: Surfacing tacit knowledge in requirements negotiation: Experiences using easywinwin. In: Proceedings of the 34th Annual Hawaii International Conference on System Sciences, 2001, p. 8 (2001)
Haiduc, S., Marcus, A.: On the use of domain terms in source code. In: The 16th IEEE International Conference on Program Comprehension (ICPC’08), pp. 113–122 (2008)
Hall, T., Beecham, S., Rainer, A.: Requirements problems in twelve software companies: an empirical analysis. Softw. IEE Proc. 149(5), 153–160 (2002)
Hart, S.G., Stavenland, L.E.: Development of NASA-TLX (Task Load Index): Results of empirical and theoretical research. In: Hancock, P.A., Meshkati, N. (eds) Human Mental Workload, chap. 7, pp. 139–183. Elsevier, Amsterdam (1988)
Hausmann, J., Heckel, R., Taentzer, G.: Detection of conflicting functional requirements in a use case-driven approach. In: Proceedings of the 24rd International Conference on Software Engineering (ICSE’02), pp. 105–115. IEEE, Washington, DC (2005)
Hayes, J.: Building a requirement fault taxonomy: Experiences from a NASA verification and validation research project. In: 14th International Symposium on Software Reliability Engineering, (ISSRE’03). pp. 49–59. Denver, CO (2003a)
Hayes, J.H.: Building a requirement fault taxonomy: Experiences from a NASA verification and validation research project. In: Proceedings of the 14th International Symposium on Software Reliability Engineering. IEEE Computer Society, Washington, DC, ISSRE ’03 (2003b)
Hayes, J.H., Dekhtyar, A.: Humans in the traceability loop: Can’t live with ’em, can’t live without ’em. In: Proceedings of the 3rd International Workshop on Traceability in Emerging Forms of Software Engineering, pp. 20–23. ACM, New York, NY. TEFSE ’05, doi: http://doi.acm.org/10.1145/1107656.1107661 (2005)
Hayes, J.H., Dekhtyar, A., Osborne, J.: Improving requirements tracing via information retrieval. In: RE ’03: Proceedings of the 11th IEEE International Conference on Requirements Engineering, p. 138. IEEE Computer Society, Washington, DC (2003)
Hayes, J.H., Dekhtyar, A., Sundaram, S.: Text mining for software engineering: how analyst feedback impacts final results. In: Proceedings of the 2005 International Workshop on Mining Software Repositories, pp. 1–5. ACM, New York, NY, MSR ’05 (2005)
Hayes, J.H., Antoniol, G., Guéhéneuc, Y.G.: Prereqir: Recovering pre-requirements via cluster analysis, vol. 0, pp. 165–174. IEEE Computer Society, Los Alamitos, CA (2008)
Jirapanthong, W., Zisman, A.: Xtraque: Traceability for product line systems. Softw. Syst. Model. 8(1), 117–144 (2007)
Joseph, J.C.: Requirements engineering and management: The key to designing quality complex systems. In: The TQM Magazine, vol. 12, pp. 400–407. MCB UP Ltd., Bradford, West Yorkshire (2000)
Kamsties, E., Hormann, K., Schlich, M.: Requirements engineering in small and medium enterprises. Req. Eng. 3(2), 84–90 (1998)
Kamsties, E., Berry, D., Paech, B.: Detecting ambiguities in requirements documents using inspections. In: Workshop on Inspections in Software Engineering, pp. 68–80. Paris, France (2001)
Kasser, J.: The first requirements elucidator demonstration (FRED) Tool. Syst. Eng. 7(3), 243–256 (2004)
Kitchenham, B., Brereton, O., Budgen, D., Turner, M., Bailey, J., Linkman, S.: Systematic literature reviews in software engineering – A systematic literature review. Inform. Softw. Technol. 51, 7–15 (2009)
Lau, W., Yuen, A.: Exploring the effects of gender and learning styles on computer programming performance: Implications for programming pedagogy. Brit. J. Educat. Technol. 40(4), 696–712 (2009)
Lawrie, D., Feild, H., Binkley, D.: Quantifying identifier quality: An analysis of trends. Empirical Softw. Eng. 12, 359–388 (2007a)
Lawrie, D., Morrell, C., Feild, H., Binkley, D. : What’s in a name? A study of identifiers. In: Proceedings of the 14th IEEE International Conference on Program Comprehension, pp. 3–12. IEEE Computer Society, Washington, DC (2006)
Lawrie, D., Morrell, C., Feild, H., Binkley, D.: Effective identifier names for comprehension and memory. Innov. Syst. Softw. Eng. 3, 303–318 (2007b)
Lee, J., Kuo, J.: New approach to requirements trade-off analysis for complex systems. Knowl. Data Eng. IEEE Trans. 10(4), 551–562 (2002)
Lucia, A.D., Fasano, F., Oliveto, R., Tortora, G.: Adams Re-Trace: A Traceability Recovery Tool, vol. 0, pp. 32–41. IEEE Computer Society, Los Alamitos, CA (2005)
Lucia, A.D., Fasano, F., Oliveto, R., Tortora, G.: Recovering traceability links in software artifact management systems using information retrieval methods. ACM Trans. Softw. Eng. Methodol. 16, 1301–1350 (2007)
Lucia, A.D., Penta, M.D., Oliveto, R.: Improving source code lexicon via traceability and information retrieval. IEEE Trans. Softw. Eng. 99, 205–227 (2010)
Lucia, A.D., Penta, M.D., Oliveto, R., Zurolo, F.: Coconut: Code Comprehension Nurturant Using Traceability, pp. 274–275. IEEE Computer Society, Los Alamitos, CA (2006)
Madani, N., Guerrouj, L., Di Penta, M., Guéhéneuc, Y.G., Antoniol, G.: Recognizing words from source code identifiers using speech recognition techniques. In: Proceeding of the Conference on Software Maintenance and Reengineering, pp. 69–78. IEEE, Madrid, Spain (2010)
Maletic, J., Munson, E., Marcus, A., Nguyen, T.: Using a hypertext model for traceability link conformance analysis. In: Proceedings of the 2nd International Workshop on Traceability in Emerging Forms of Software Engineering, pp. 47–54. Montreal, Canada (2003)
Marcus, A., Maletic, J.I.: Recovering documentation-to-source-code traceability links using latent semantic indexing. In: ICSE ’03: Proceedings of the 25th International Conference on Software Engineering, pp. 125–135. IEEE Computer Society, Washington, DC (2003)
Marcus, A., Poshyvanyk, D.: The conceptual cohesion of classes. In: Proceedings of the 21st IEEE International Conference on Software Maintenance, pp. 133–142. IEEE Computer Society, Washington, DC (2005)
Moha, N., Guéhéneuc, Y.G., Duchien, L., Le Meur, A.F.: Decor: A method for the specification and detection of code and design smells. Softw. Eng. IEEE Trans. 36(1), 20–36 (2010)
Oliveto, R., Gethers, M., Poshyvanyk, D., De Lucia, A.: On the equivalence of information retrieval methods for automated traceability link recovery. In: Proceedings of the 2010 IEEE 18th International Conference on Program Comprehension, pp. 68–71. IEEE Computer Society, Washington, DC, ICPC ’10 (2010)
Park, Y., Black, J.: Identifying the impact of domain knowledge and cognitive style on webbased information search behavior. J. Educat. Comput. Res. 36(1), 15–37 (2007)
Rajlich, V., Wilde, N.: The role of concepts in program comprehension. In: Proceedings of the 10th International Workshop on Program Comprehension, p. 271. IEEE Computer Society, Washington, DC, IWPC ’02 (2002)
Sherba, S.A.: Towards automating traceability: An incremental and scalable approach. PhD Thesis, Boulder, CO (2005)
Sheskin, D.J.: Handbook of Parametric and Nonparametric Statistical Procedures, 4th edn. Chapman & Hall/CRC, London (2007)
Soloway, E., Ehrlich, K.: Empirical Studies of Programming Knowledge, pp. 235–267. ACM, New York, NY (1989)
Spanoudakis, G., Zisman, A., Pérez-Minana, E., Krause, P.: Rule-based generation of requirements traceability relations. J. Syst. Softw. 72(2), 105–127 (2004)
Sundaram, S.K., Hayes, J.H., Dekhtyar, A.: Baselines in requirements tracing. In: Proceedings of the 2005 Workshop on Predictor Models in Software Engineering, pp. 1–6, ACM, New York, NY (2005)
Taira, M.: The influence of domain knowledge and task requirement on the selection of learning strategies in the internet. Int. J. Creativ. Probl. Solv. 18(1), 45–53 (2008)
Takang, A.A., Grubb, P.A., Macredie, R.D.: The effects of comments and identifier names on program comprehensibility: An experimental investigation. J. Program. Lang. 4(3), 143–167 (1996)
Wake, W.C.: Refactoring Workbook. Addison-Wesley Longman Publishing Co. Inc., Boston, MA (2003)
Zisman, A., Spanoudakis, G., Pérez-Miñana, E., Krause, P.: Towards a traceability approach for product families requirements. In: Proceedings of 3rd ICSE Workshop on Software Product Lines: Economics, Architectures, and Implications, Orlando, FL (2002)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag London Limited
About this chapter
Cite this chapter
Ali, N., Guéhéneuc, YG., Antoniol, G. (2012). Factors Impacting the Inputs of Traceability Recovery Approaches. In: Cleland-Huang, J., Gotel, O., Zisman, A. (eds) Software and Systems Traceability. Springer, London. https://doi.org/10.1007/978-1-4471-2239-5_5
Download citation
DOI: https://doi.org/10.1007/978-1-4471-2239-5_5
Published:
Publisher Name: Springer, London
Print ISBN: 978-1-4471-2238-8
Online ISBN: 978-1-4471-2239-5
eBook Packages: Computer ScienceComputer Science (R0)