Skip to main content
Log in

DCTracVis: a system retrieving and visualizing traceability links between source code and documentation

  • Published:
Automated Software Engineering Aims and scope Submit manuscript

Abstract

It is well recognized that traceability links between software artifacts provide crucial support in comprehension, efficient development, and effective management of a software system. However, automated traceability systems to date have been faced with two major open research challenges: how to extract traceability links with both high precision and high recall, and how to efficiently visualize links for complex systems because of scalability and visual clutter issues. To overcome the two challenges, we designed and developed a traceability system, DCTracVis. This system employs an approach that combines three supporting techniques, regular expressions, key phrases, and clustering, with information retrieval (IR) models to improve the performance of automated traceability recovery between documents and source code. This combination approach takes advantage of the strengths of the three techniques to ameliorate limitations of IR models. Our experimental results show that our approach improves the performance of IR models, increases the precision of retrieved links, and recovers more correct links than IR alone. After having retrieved high-quality traceability links, DCTracVis then utilizes a new approach that combines treemap and hierarchical tree techniques to reduce visual clutter and to allow the visualization of the global structure of traces and a detailed overview of each trace, while still being highly scalable and interactive. Usability evaluation results show that our approach can effectively and efficiently help software developers comprehend, browse, and maintain large numbers of links.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1

Reproduced with permission from Holten (2006)

Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15

Similar content being viewed by others

References

  • Abadi, A., Nisenson, M., Simionovici, Y.: A traceability technique for specifications. In: 16th IEEE International Conference on Program Comprehension, pp. 103–112 (2008)

  • ADAMS: Overview. Data accessed: February 2009, http://adams.dmi.unisa.it/adams-2009/Overview.html (2009)

  • Antoniol, G., Casazza, G., Cimitile, A.: Traceability recovery by modelling programmer behavior. In: 7th WCRE, Queensland, Australia, Nov., pp. 240–247 (2000)

  • Antoniol, G., Canfora, G., Casazza, G., Lucia, A.D., Merlo, E.: Recovering traceability links between code and documentations. TSE 28(10), 970–983 (2002)

    Google Scholar 

  • Asuncion, H.U., Francois, F., Taylor, R.N.: An end-to-end industrial software traceability tool. In: ESEC-FSE, Cavtat near Dubrovnik, Croatia, pp. 115–124 (2007)

  • Aswani Kumar, C., Srinivas, S.: On the performance of latent semantic indexing-based information retrieval. J Comput Inf Technol CIT 17(3), 259–264 (2009)

    Article  Google Scholar 

  • Bacchelli, A., Lanza, M., Robbes, R.: Linking e-mails and source code artifacts. In: ICSE’10, May, pp. 375–384 (2010)

  • Chen, X., Hosking J., Grundy, J.: Visualizing traceability links between source code and documentation. In: VL/HCC 2012, Innsbruck (2012)

  • Chen, X., Grundy, J.: Improving automated documentation to code traceability by combining retrieval techniques. ASE 2011, 223–232 (2011)

    Google Scholar 

  • Chen, X., Hosking, J., Grundy, J., Amor, R.: Development of robust traceability benchmarks. In: 22nd ASWEC, June 2013, Melbourne, Australia (2013)

  • Cleland-Huang, J., Habrat, R.: Visual support in automated tracing. In: REV 2007, IEEE Computer Society, pp. 4–8 (2007)

  • Cleland-Huang, J., Settimi, R., Duan, C., Zou, X.: Utilizing supporting evidence to improve dynamic requirements traceability. In: RE’05, Paris, pp. 135–144 (2005)

  • Cleland-Huang, J., Settimi, R., Romanova, E., Berenbach, B., Clark, S.: Best practices for automated traceability. Computer 40(6), 27–35 (2007)

    Article  Google Scholar 

  • Cornelissen, B., Holten, D., Zaidman, A., Moonen, L., van Wijk, J.J., van Deursen, A.: Understanding execution traces using massive sequence and circular bundle views. In: 15th ICPC, Alberta, BC, pp. 49–58 (2007)

  • Falessi, D., Di Penta, M., Canfora, G., Cantone, G.: Estimating the number of remaining links in traceability recovery. Empir Softw Eng (EMSE) 22(3), 996–1027 (2017)

    Article  Google Scholar 

  • Gotel, O.C., Finkelstein, A.C.W.: An analysis of the requirements traceability problem. In: 1st RE, pp. 94–101 (1994)

  • Graham, M., Kennedy, J.: A survey of multiple tree visualization. Inf. Vis. 9(4), 235–252 (2010)

    Article  Google Scholar 

  • Grechanik, M., McKinley, K.S., Perry, D.E.: Recovering and using use-case-diagram-to-source-code traceability links. In: ESEC/FSE’07, Croatia, pp. 95–104 (2007)

  • Hayes, J.H., Dekhtyar, A., Osborne, J.: Improving requirements tracing via information retrieval. In: Proceedings of the International Conference on Requirements Engineering (RE), pp. 151–161 (2003)

  • Holten, D.: Hierarchical edge bundles: visualization of adjacency relations in hierarchical data. IEEE Trans Vis Comput Graph. 12(5), 741–748 (2006)

    Article  Google Scholar 

  • Jackson, M., Wilkerson, M.: MBSE-driven visualization of requirements allocation and traceability. In: Aerospace Conference, MT, USA, pp. 1–17 (2016)

  • Kamalabalan, K., Uruththirakodeeswaran, T., Balasubramaniam, D.: Tool support for traceability of software artefacts. In: Moratuwa Engineering Research Conference (MERCon), Moratuwa, Sri Lanka, pp. 318–323 (2015)

  • Kardes, F.R., Cronley, M.L., Kellaris, J.J., Posavac, S.S.: The role of selective informtiaon processing in price-quality inference. J. Consum. Res. 31(2), 368–374 (2004)

    Article  Google Scholar 

  • Kuang, H., Nie, J., Hu, H., Rempel, P., Lu, J., Egyed, A., Mader, P.: Analyzing closeness of code dependencies for improving IR-based traceability recovery. In: IEEE 24th International Conference on Software Analysis, Evolution and Reengineering (SANER), Feb. 2017, Klagenfurt, Austria, pp. 68–78 (2017)

  • LDRA: LDRA Product Brochure v7.2. From http://www.ldra.com (2012)

  • Li, C., Ding, C., Shen, K.: Quantifying the cost of context switch. In: Proceedings of the 2007 Workshop on Experimental Computer Science (ExpCS’07), San Diego, California, June (2007)

  • Li, Y., Maalej, W.: Which traceability visualization is suitable in this context? A comparative study. In: REFSQ 2012, LNCS 7195, pp. 194–210 (2012)

    Chapter  Google Scholar 

  • Lucia, A.D., Fasano, F., Francese, R., Tortora, G.: ADAMS: an artifact-based process support system. In: 16th International Conference on Software Engineering and Knowledge Engineering, Alberta, Canada, pp. 31–36 (2004)

  • Lucia, A.D., Fasano, F., Oliveto, R., Tortora, G.: Recovering traceability links in software artifact management systems using information retrieval methods. TOSEM 16(4), Article 13 (2007)

    Article  Google Scholar 

  • Lucia, A.D., Penta, M.D., Oliveto, R., Panichella, A., Panichella, S.: Applying a smoothing filter to improve IR-based traceability recovery processes: an empirical investigation. Inf. Softw. Technol. 55(2013), 741–754 (2013)

    Article  Google Scholar 

  • MacQueen, J.B.: Some methods for classification and analysis of multivariate oberservations. In: 5th Berkeley Symposium on Mathematical Statistics and Probability, pp. 281–297 (1967)

  • Marcus, A., Maletic, J.I.: Recovering documentation-to-source-code traceability links using latent semantic indexing. In: 25th ICSE’03, pp. 125–135 (2003)

  • Marcus, A., Xie, X., Poshyvanyk, D.: When and how to visualize traceability links? In: TEFSE 2005, November 8, California, USA, pp. 56–61 (2005)

  • Merten, T., Juppner, D., Delater, A.: Improved representation of traceability links in requirements engineering knowledge using Sunburst and Netmap visualization. In: 4th MARK, Trento, pp. 17–21 (2011)

  • Nakagawa, H., Matsui, S., Tsuchiya, T.: A visualization of specification coverage based on document similarity. In: IEEE/ACM 39th International Conference on Software Engineering Companion (ICSE-C), pp. 136–138 (2017)

  • Nishikawa, K., Washizaki, H., Oshima, K., Mibe, R.: Recovering transitive traceability links among software artifacts. In: ICSME 2015, Bremen, Germany, pp. 576–580 (2015)

  • Penta, M.D., Gradara, S., Antoniol, G.: Traceability recovery in RAD software systems. IWPC 2002, 207–216 (2002)

    Google Scholar 

  • Prefuse: The prefuse information visualization toolkit. (2011) http://prefuse.org/

  • Rocco, J.D., Ruscio, D.D., Iovino, L., Pierantonio, A.: Traceability visualization in metamodel change impact detection. In: GMLD’13, Montpellier, France, pp. 51–62 (2013)

  • Rodrigues, A., Lencastre, M., Filho, G.A.C. de: Multi-VisioTrace: traceability visualization tool. In: 10th International Conference on the Quality of Information and Communication Technology, pp. 61–66 (2016)

  • Roman, G.C., Cox, K C.: Program visualization: the art of mapping programs to picture. In: Proceedings of International Conference on Software Engineering, pp. 412–420 (1992)

  • Settimi, R., Cleland-Huang, J., Ben Khadra, O., Mody, J., Lukasik, W., DePalma, C.: Supporting software evolution through dynamically retrieving traces to UML artifacts. In: 7th IWPSE, Kyoto, Japan, pp. 49–54 (2004)

  • Shneiderman, B.: Tree visualization with tree-maps: 2d space-filling approach. ACM Trans. Graph. (TOG) 11(1), 92–99 (1992)

    Article  Google Scholar 

  • Singhal, A.: Modern information retrieval: a brief overview. Bull. IEEE Comput. Soc. Tech. Comm. Data Eng. 24(4), 35–42 (2001)

    Google Scholar 

  • Spanoudakis, G., Zisman, A.: Software traceability: a roadmap. In: Chang, S.K. (ed.) Advances in Software Engineering and Knowledge Engineering, vol. 3. World Scientific Publishing, Singapore (2005)

    Google Scholar 

  • Terrier IR Platform: Extracted from http://terrier.org/ (2010)

  • van Amstel, M.F., van den Brand, M.G.J., Serebrenik, A.: Traceability visualization in model transformations with TraceVis*. In: ICMT 2012, LNCS 7307, pp. 152–159 (2012)

  • van Ravensteijn, W.J.P.: Visual Traceability Across Dynamic Ordered Hierarchies. Master’s thesis, Eindhoven University of Technology (August 2011)

  • von Pilgrim, J., Vanhooff, B., Schulz-Gerlach, I., Bervers, Y.: Constructing and visualizing transformation chains. In: 4th ECMDA-FA ’08, Heidelberg, pp. 17–32 (2008)

  • Voytek, J.B., Nunez, J.L.: Visualizing non-functional traces in student projects in information systems and service design. In: CHI 2011, Vancouver, Canada (2011)

  • Wang, X., Lai, G., Liu, C.: Recovering relationships between documentation and source code based on the characteristics of software engineering. In: Electronic Notes in Theoretical Computer Science 243, Elsevier B. V., pp. 121–137 (2009)

    Article  Google Scholar 

  • Watkins, R., Neal, M.: Why and how of requirements tracing. In: 5th ASM, California, pp. 104–106 (1994)

    Article  Google Scholar 

  • Witten, I.H., Paynter, G.W., Frank, E., Gutwin, C., Nevill-Manning, C.G.: Kea: practical automatic keyphrase extraction. In: 4th ACM DL, Berkeley, pp. 254–255 (1999)

  • Woodruff, A., Stonebraker, M.: VIDA: visual information density adjuster. Technical Report CSD-97-968, University of California, Berkeley, California, September (1997)

  • Zhou, X., Huo, Z., Huang, Y., Xu, J.: Facilitating software traceability understanding with ENVISION. COMPSAC 2008, 295–302 (2008)

    Google Scholar 

Download references

Acknowledgement

The authors gratefully acknowledge Alberto Bacchelli for agreeing to share his exemplar test sets and oracles of ArgoUML, Freenet and JMeter.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Xiaofan Chen.

Additional information

This research is financially supported by the Foundation for Research, Science and Technology, MBIE Software Process and Product Improvement project, and University of Auckland.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Chen, X., Hosking, J., Grundy, J. et al. DCTracVis: a system retrieving and visualizing traceability links between source code and documentation. Autom Softw Eng 25, 703–741 (2018). https://doi.org/10.1007/s10515-018-0243-8

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10515-018-0243-8

Keywords

Navigation