Your browser does not support JavaScript!
http://iet.metastore.ingenta.com
1887

Empirical comparison of graphical and annotation-based re-documentation approaches

Empirical comparison of graphical and annotation-based re-documentation approaches

For access to this article, please select a purchase option:

Buy article PDF
£12.50
(plus tax if applicable)
Buy Knowledge Pack
10 articles for £75.00
(plus taxes if applicable)

IET members benefit from discounts to all IET publications and free access to E&T Magazine. If you are an IET member, log in to your account and the discounts will automatically be applied.

Learn more about IET membership 

Recommend Title Publication to library

You must fill out fields marked with: *

Librarian details
Name:*
Email:*
Your details
Name:*
Email:*
Department:*
Why are you recommending this title?
Select reason:
 
 
 
 
 
IET Software — Recommend this title to your library

Thank you

Your recommendation has been sent to your librarian.

Re-documentation is a complex activity that follows the comprehension of the code. Programmers record the knowledge they have gained in the form of text, views and diagrams that address specific aspects of the system under maintenance. Re-documentation of existing software can be achieved in several ways. The authors focus on two commonly used approaches: either using a drawing editor or annotating the source code. In the first case, diagrams are produced interactively, starting from the reverse engineered information. In the second case, design information is added in the form of code annotations. Diagrams may be produced, if needed, by an annotation-processing tool, which interprets the annotations previously inserted into the code and generates graphical views. The aim of this empirical work is the comparison of these two approaches, in order to understand which is easier to use and which the current limitations of both of them are. Preliminary results with master students indicate the drawing editor approach as the most preferred and usable, with no penalty on the quality of the resulting diagrams and on the effort required.

References

    1. 1)
      • D. Spinellis . (2005) Drawing UML diagrams with UMLGraph, whitepaper.
    2. 2)
      • K. Wong , S.R. Tilley , H.A. Muller , M.D. Storey . Structural redocumentation: a case study. IEEE Softw. , 1 , 46 - 54
    3. 3)
      • V. Rajlich . Incremental redocumentation using the web. IEEE Softw. , 5 , 102 - 106
    4. 4)
      • E. Arisholm , L.C. Briand , S.E. Hove , Y. Labiche . The impact of UML documentation on software maintenance: an experimental evaluation. IEEE Trans. Softw. Eng. , 6 , 365 - 381
    5. 5)
      • Gillis, K.D., Wright, D.G.: `Improving software maintenance using system-level reverse engineering', Proc. Int. Conf. Software Maintenance (ICSM 1990), November 1990, p. 84–90.
    6. 6)
      • B. Bruegge , A.H. Dutoit . (2000) Object-oriented software engineering: conquering complex and changing systems.
    7. 7)
      • Eclipse, Eclipse home page, available at: http://www.eclipse.org/, last accessed May 5, 2008.
    8. 8)
      • ‘Comparison of documentation generators’, available at: http://en.wikipedia.org/wiki/Comparison_of_documentation_generators last accessed May 5, 2008.
    9. 9)
      • D. Spinellis . On the declarative specification of models. IEEE Softw. , 2 , 94 - 96
    10. 10)
      • Gannod, G.C., Cheng, B.H.C.: `A framework for classifying and comparing software reverse engineering and design recovery techniques', Proc. IEEE Working Conf. Reverse Engineering, 1999, p. 77–88.
    11. 11)
    12. 12)
      • S. Rugaber . (1995) Program comprehension, Encyclopedia of computer science and technology.
    13. 13)
      • Sun Microsystems Inc., Doclet Overview, available at: http://java.sun.com/j2se/1.5.0/docs/guide/javadoc/doclet/overview.html, last accessed May 5, 2008, 2004.
    14. 14)
      • D. Knuth . Literate programming.
    15. 15)
      • A. van Deursen , L. Moonen . Documenting software systems using types. Sci. Comput. Program. , 2 , 202 - 220
    16. 16)
      • E. Chikofsky , J. Cross . Reverse engineering and design recovery: a taxonomy. IEEE Softw. , 1 , 13 - 17
    17. 17)
      • G.A. Miller . The magical number seven, plus or minus two: some limits on our capacity for processing information. Psychol. Rev. , 81 - 97
    18. 18)
      • Baxter, I., Pidgeon, P., Mehlich, M.: `DMS: program transformations for practical scalable software evolution', Proc. Int. Conf. Software Engineering, 2004.
    19. 19)
    20. 20)
      • Torchiano, M., Ricca, F., Tonella, P.: `A comparative study on the re-documentation of existing software: code annotations vs. drawing editors', Int. Symp. Empirical Software Engineering (ISESE, 2005), 17–18 November 2005, p. 277–286.
    21. 21)
      • Antoniol, G., Fiutem, R., Lutteri, G., Tonella, P., Zanfei, S.: `Program understanding and maintenance with the CANTO environment', Proc. Int. Conf. Software Maintenance (ICSM), 1–3 October 1997, p. 72–81.
    22. 22)
      • Lanza, M.: `CodeCrawler - lessons learned in building a software visualization tool', Proc. CSMR 2003, Seventh Eur. Conf. Software Maintenance and Reengineering, p. 409–418.
    23. 23)
      • Rajlich, V.: `Incremental redocumentation with hypertext', Proc. Conf. Software Maintenance and Reengineering (CSMR 1997), 17–19 March 1997, p. 68–72.
    24. 24)
      • P. Tonella , M. Torchiano , B. Du Bois , T. Systa . Empirical studies in reverse engineering: state of the art and future trends. Empir. Softw. Eng. , 5 , 551 - 571
    25. 25)
      • Omondo home page, available at: http://www.omondo.com, last accessed May 5, 2008.
    26. 26)
      • L. Bratthall , C. Wohlin . Is it possible to decorate graphical software design and architecture models with qualitative information? An experiment. IEEE Trans. Softw. Eng. , 12 , 1181 - 1193
    27. 27)
      • N. Juristo , A.M. Moreno . (2001) Basics of software engineering experimentation.
    28. 28)
      • Gueheneuc, Y.-G., Mens, K., Wuyts, R.: `A comparative framework for design recovery tools', 10thEuro. Conf. Software Maintenance and Reengineering (CSMR 2006), 22–24 March 2006, p. 123–134.
    29. 29)
    30. 30)
      • Kuzniarz, L., Staron, M., Wohlin, C.: `An empirical study on using stereotypes to improve understanding of UML models', Proc. Int. Workshop Program Comprehension (IWPC), 2004, p. 14–23.
    31. 31)
      • Ricca, F., Di Penta, M., Torchiano, M., Tonella, P., Ceccato, M.: `The role of experience and ability in comprehension tasks supported by uml stereotypes', Proc. Int. Conf. Software Engineering, May 2007, p. 375–384.
    32. 32)
      • T.A. Corbi . Program understanding: challenge for the 1990s. IBM Syst. J. , 2 , 294 - 306
    33. 33)
      • Ferenc, R., Beszédes, A., Tarkiainen, M., Gyimóthy, T.: `Columbus – reverse engineering tool and schema for C', Proc. 18th Int. Conf. Software Maintenance (ICSM 2002), 3–6 October 2002, p. 172–181.
    34. 34)
      • R. Likert . A technique for the measurement of attitudes. Arch. Psychol. , 5 - 55
    35. 35)
      • C. Wohlin , P. Runeson , M. Höst , M.C. Ohlsson , B. Regnell , A. Wesslén . (2000) Experimentation in software engineering: an introduction.
    36. 36)
      • E.R. Gansner , S.C. North . An open graph visualization system and its applications to software engineering. Softw. Pract. Exp. , 11 , 1203 - 1233
    37. 37)
      • Briand, L.C.: `The experimental paradigm in reverse engineering: role, challenges, and limitations', Proc. 13th Working Conf. Reverse Engineering, WCRE, 2006, p. 3–8.
    38. 38)
      • P. Brown . Integrated hypertext and program understanding tools. IBM Syst. J. , 3 , 363 - 392
    39. 39)
      • H.B. Mann , D.R. Whitney . On a test of whether one of two random variables is stochastically larger than the other. Ann. Math. Stat. , 50 - 60
http://iet.metastore.ingenta.com/content/journals/10.1049/iet-sen.2009.0015
Loading

Related content

content/journals/10.1049/iet-sen.2009.0015
pub_keyword,iet_inspecKeyword,pub_concept
6
6
Loading
This is a required field
Please enter a valid email address