Abstract
The coverage of requirements is a fundamental need throughout the software life cycle. It gives project managers an indication how well the software meets expected requirements. A precondition for the process is to link requirements with project artifacts, like test cases. There are various (semi-) automated methods deriving traceable relations between requirements and test scenarios aiming to counteract time consuming and error-prone manual approaches. However, even if traceability links are correctly established coverage is calculated based on passed test scenarios without taking into account the overall code base written to realize the requirement in the first place.
In this paper the “Requirements-Testing-Coverage” (ReTeCo) approach is described that establishes links between requirements and test cases by making use of knowledge available in software tools supporting the software engineering process and are part of the software engineering tool environment. In contrast to traditional approaches ReTeCo generates traceability links indirectly by gathering and analyzing information from version control system, ticketing system and test coverage tools. Since the approach takes into account a larger information base it is able to calculate coverage reports on a fine-grained contextual level rather than on the result of high-level artifacts.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
download available at https://github.com/mindpixel/requirementsCoverage.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
an example on message structure: https://confluence.atlassian.com/fisheye/using-smart-commits-298976812.html.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
References
Abbors, F., Truscan, D., Lilius, J.: Tracing requirements in a model-based testing approach. In: 2009 First International Conference on Advances in System Testing and Validation Lifecycle, pp. 123–128, September 2009
Ahn, S., Chong, K.: A feature-oriented requirements tracing method: a study of cost-benefit analysis. In: 2006 International Conference on Hybrid Information Technology, vol. 2, pp. 611–616, November 2006
Ali, N., Guhneuc, Y.G., Antoniol, G.: Trustrace: mining software repositories to improve the accuracy of requirement traceability links. IEEE Trans. Softw. Eng. 39(5), 725–741 (2013)
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 (2002). https://doi.org/10.1109/TSE.2002.1041053
Blei, D.M., Ng, A.Y., Jordan, M.I.: Latent Dirichlet allocation. J. Mach. Learn. Res. 3, 993–1022 (2003). http://dl.acm.org/citation.cfm?id=944919.944937
Bouquet, F., Jaffuel, E., Legeard, B., Peureux, F., Utting, M.: Requirements traceability in automated test generation: application to smart card software validation. SIGSOFT Softw. Eng. Notes 30(4), 1–7 (2005). https://doi.org/10.1145/1082983.1083282
Burgstaller, B., Egyed, A.: Understanding where requirements are implemented. In: 2010 IEEE International Conference on Software Maintenance, pp. 1–5, September 2010
Capobianco, G., Lucia, A.D., Oliveto, R., Panichella, A., Panichella, S.: Improving IR-based traceability recovery via noun-based indexing of software artifacts. J. Softw. Evol. Process 25(7), 743–762 (2013). https://doi.org/10.1002/smr.1564
Cilibrasi, R.L., Vitanyi, P.M.B.: The Google similarity distance. IEEE Trans. Knowl. Data Eng. 19(3), 370–383 (2007). https://doi.org/10.1109/TKDE.2007.48
Cleland-Huang, J., Chang, C.K., Christensen, M.: Event-based traceability for managing evolutionary change. IEEE Trans. Softw. Eng. 29(9), 796–810 (2003)
Cockburn, A.: Agile Software Development. Addison-Wesley Longman Publishing Co. Inc., Boston (2002)
De Lucia, A., Oliveto, R., Tortora, G.: Assessing IR-based traceability recovery tools through controlled experiments. Empir. Softw. Eng. 14(1), 57–92 (2009). https://doi.org/10.1007/s10664-008-9090-8
Deerwester, S., Dumais, S.T., Furnas, G.W., Landauer, T.K., Harshman, R.: Indexing by latent semantic analysis. J. Am. Soc. Inf. Sci. 41(6), 391–407 (1990). https://doi.org/10.1002/(SICI)1097-4571(199009)41:6<391::AID-ASI1>3.0.CO;2-9
Delgado, S.: Next-generation techniques for tracking design requirements coverage in automatic test software development. In: 2006 IEEE Autotestcon, pp. 806–812, September 2006
Delligatti, L.: SysML Distilled: A Brief Guide to the Systems Modeling Language, 1st edn. Addison-Wesley Professional, Boston (2013)
Egyed, A., Grunbacher, P.: Automating requirements traceability: beyond the record replay paradigm. In: Proceedings of 17th IEEE International Conference on Automated Software Engineering, pp. 163–171 (2002)
Fockel, M., Holtmann, J., Meyer, J.: Semi-automatic establishment and maintenance of valid traceability in automotive development processes. In: 2012 Second International Workshop on Software Engineering for Embedded Systems (SEES), pp. 37–43, June 2012
Gabrilovich, E., Markovitch, S.: Computing semantic relatedness using wikipedia-based explicit semantic analysis. In: Proceedings of the 20th International Joint Conference on Artifical Intelligence, IJCAI 2007, pp. 1606–1611. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA (2007). http://dl.acm.org/citation.cfm?id=1625275.1625535
Ghabi, A., Egyed, A.: Code patterns for automatically validating requirements-to-code traces. In: 2012 Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering, pp. 200–209, September 2012
Gittens, M., Romanufa, K., Godwin, D., Racicot, J.: All code coverage is not created equal: a case study in prioritized code coverage. In: Proceedings of the 2006 Conference of the Center for Advanced Studies on Collaborative Research, CASCON 2006. IBM Corp., Riverton, NJ, USA (2006). http://dx.doi.org/10.1145/1188966.1188981
Goknil, A., Kurtev, I., Van Den Berg, K.: Generation and validation of traces between requirements and architecture based on formal trace semantics. J. Syst. Softw. 88, 112–137 (2014). https://doi.org/10.1016/j.jss.2013.10.006
Gotel, O.C.Z., Finkelstein, C.W.: An analysis of the requirements traceability problem. In: Proceedings of IEEE International Conference on Requirements Engineering, pp. 94–101, April 1994
Grechanik, M., McKinley, K.S., Perry, D.E.: Recovering and using use-case-diagram-to-source-code traceability links. In: Proceedings of the the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering, ESEC-FSE 2007, pp. 95–104. ACM, New York (2007). http://doi.acm.org/10.1145/1287624.1287640
Guo, J., Monaikul, N., Cleland-Huang, J.: Trace links explained: an automated approach for generating rationales. In: 2015 IEEE 23rd International Requirements Engineering Conference (RE), pp. 202–207, August 2015
Hayes, J.H., Dekhtyar, A., Sundaram, S.K.: Advancing candidate link generation for requirements tracing: the study of methods. IEEE Trans. Softw. Eng. 32(1), 4–19 (2006). https://doi.org/10.1109/TSE.2006.3
Heindl, M., Biffl, S.: A case study on value-based requirements tracing. In: Proceedings of the 10th European Software Engineering Conference Held Jointly with 13th ACM SIGSOFT International Symposium on Foundations of Software Engineering, ESEC/FSE-13, pp. 60–69. ACM, New York (2005). http://doi.acm.org/10.1145/1081706.1081717
Krishnamoorthi, R., Mary, S.S.A.: Factor oriented requirement coverage based system test case prioritization of new and regression test cases. Inf. Softw. Technol. 51(4), 799–808 (2009). http://www.sciencedirect.com/science/article/pii/S0950584908001286
Lago, P., Muccini, H., van Vliet, H.: A scoped approach to traceability management. J. Syst. Softw. 82(1), 168–182 (2009). https://doi.org/10.1016/j.jss.2008.08.026
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(4) 2007. http://doi.acm.org/10.1145/1276933.1276934
Mahmoud, A., Niu, N.: On the role of semantics in automated requirements tracing. Requir. Eng. 20(3), 281–300 (2015). https://doi.org/10.1007/s00766-013-0199-y
Marcus, A., Maletic, J.I.: Recovering documentation-to-source-code traceability links using latent semantic indexing. In: Proceedings of the 25th International Conference on Software Engineering, ICSE 2003, pp. 125–135. IEEE Computer Society, Washington, DC, USA (2003). http://dl.acm.org/citation.cfm?id=776816.776832
Maro, S., Anjorin, A., Wohlrab, R., Steghfer, J.P.: Traceability maintenance: factors and guidelines. In: 2016 31st IEEE/ACM International Conference on Automated Software Engineering (ASE), pp. 414–425, September 2016
Ni, D.C., Martinez, J., Eccles, J., Thomas, D., Lai, P.K.M.: Process automation with enumeration and traceability tools. In: Proceedings of the IEEE International Conference on Industrial Technology 1994, pp. 361–365, December 1994
Ooi, S.M., Lim, R., Lim, C.C.: An integrated system for end-to-end traceability and requirements test coverage. In: 2014 IEEE 5th International Conference on Software Engineering and Service Science, pp. 45–48 (June 2014)
Ortu, M., Destefanis, G., Kassab, M., Marchesi, M.: Measuring and understanding the effectiveness of JIRA developers communities. In: 2015 IEEE/ACM 6th International Workshop on Emerging Trends in Software Metrics, pp. 3–10, May 2015
Parizi, R.M., Lee, S.P., Dabbagh, M.: Achievements and challenges in state-of-the-art software traceability between test and code artifacts. IEEE Trans. Reliab. 63(4), 913–926 (2014)
Portillo-Rodrguez, J., Vizcano, A., Piattini, M., Beecham, S.: Tools used in global software engineering: a systematic mapping review. Inf. Softw. Technol. 54(7), 663–685 (2012). http://www.sciencedirect.com/science/article/pii/S0950584912000493
Rompaey, B.V., Demeyer, S.: Establishing traceability links between unit test cases and units under test. In: 2009 13th European Conference on Software Maintenance and Reengineering, pp. 209–218, March 2009
Rosario, B.: Latent semantic indexing: an overview (2000). http://www.cse.msu.edu/cse960/Papers/LSI/LSI.pdf
Sengupta, S., Kanjilal, A., Bhattacharya, S.: Requirement traceability in software development process: an empirical approach. In: 2008 The 19th IEEE/IFIP International Symposium on Rapid System Prototyping, pp. 105–111, June 2008
Stanbridge, C.: Retrospective requirement analysis using code coverage of GUI driven system tests. In: 2010 18th IEEE International Requirements Engineering Conference, pp. 411–412, September 2010
Tahat, L.H., Vaysburg, B., Korel, B., Bader, A.J.: Requirement-based automated black-box test generation. In: 25th Annual International Computer Software and Applications Conference, COMPSAC 2001, pp. 489–495 (2001)
Valderas, P., Pelechano, V.: Introducing requirements traceability support in model-driven development of web applications. Inf. Softw. Technol. 51(4), 749–768 (2009). https://doi.org/10.1016/j.infsof.2008.09.008
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG
About this paper
Cite this paper
Mordinyi, R. (2018). Are Your Requirements Covered?. In: Winkler, D., Biffl, S., Bergsmann, J. (eds) Software Quality: Methods and Tools for Better Software and Systems. SWQD 2018. Lecture Notes in Business Information Processing, vol 302. Springer, Cham. https://doi.org/10.1007/978-3-319-71440-0_6
Download citation
DOI: https://doi.org/10.1007/978-3-319-71440-0_6
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-71439-4
Online ISBN: 978-3-319-71440-0
eBook Packages: Computer ScienceComputer Science (R0)