Journal of Shanghai University (English Edition)

, Volume 11, Issue 5, pp 474–479 | Cite as

Dynamic fan-in and fan-out metrics for program comprehension

  • Wang Yu-ying  (王玉英)
  • Li Qing-shan  (李青山)
  • Chen Ping  (陈 平)
  • Ren Chun-de  (任春德)


In this paper, an approach to use run-time information to discover knowledge about software systems thus facilitating program comprehension is presented. Some dynamic metrics based on traces of the subject system execution are proposed. A method of getting these dynamic metrics is introduced, in which instrumentation is implemented by using reflective mechanism based on an open compiler. The system run-time information is captured during the instrumented system running and is then analyzed to get these dynamic metrics. A case study is given to illustrate the use of these dynamic metrics, i.e., identifying critical components of the subject system. These critical components should be focus on user attentions in order to understand the subject system well.


program comprehension dynamic metrics critical components functionality 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    Canfora G, Mancini L, Tortorella M. A workbench for program comprehension during software maintenance [C]//Proceedings of the 4th International Workshop on Program Comprehension (IWPC’96), Los Alamitos, CA. 1996: 30–39.Google Scholar
  2. [2]
    Linos P, Chen Z, Berrier S, O’Rourke B. A tool for understanding multi-language program dependencies [C]//Proceedings of the 11th International Workshop on Program Comprehension (IWPC’03), Los Alamitos, CA. 2003: 64–72.Google Scholar
  3. [3]
    Von Mayrhauser, Vans A M. Program understanding behavior during adaptation of large scale software [C]//Proceedings of the 6th International Workshop on Program Comprehension (IWPC’98), Los Alamitos, CA. 1998: 164–172.Google Scholar
  4. [4]
    Henry S, Kafura K. Software structure metrics based on information flow [J]. IEEE Transactions on Software Engineering, 1981, 7(5): 510–518.CrossRefGoogle Scholar
  5. [5]
    Kollman R, Gogolla M. Metric-based selective representation of UML diagrams [C]//Proceedings of 6th European Conference Software Maintenance and Reengineering (CSMR 2002), Montréal. 2002: 89–98.Google Scholar
  6. [6]
    Henderson-Sellers B. Object-Oriented Metrics: Measures of Complexity [M]. New Jersey: Prentice Hall, 1996: 33–50.Google Scholar
  7. [7]
    Marius Marin, Arie van Deursen, Leon Moonen. Identifying aspects using fan-in analysis [C]//Proceedings of the 11th Working Conference on Reverse Engineering (WCRE), Los Alamitos, CA. 2004: 132–141.Google Scholar
  8. [8]
    Shepperd M J. Software Engineering Metrics (Volume I): Measures and Validations [M]. New York: McGraw-Hill, 1993: 58–98.Google Scholar
  9. [9]
    Yacoub S M, Ammar H H, Robinson T. Dynamic metrics for object oriented designs [C]//Proceedings of the 6th International Symposium on Software Metrics, Washington DC. 1999, 50–61.Google Scholar
  10. [10]
    Erich Schikuta. Dynamic software metrics [EB/OL]. [2005.12.26]. 1993/2005.
  11. [11]
    ISO/IEC 9126-1991. Information Technology-Software Product Evaluation-Quality Characteristics and Guidelines for Their Use [S]. International Standards Organization/International Electrochemical Commission, Geneve. 1991.Google Scholar
  12. [12]
    Tamar Richner, Stephane. Recovering high-level views of object oriented applications from static and dynamic information [C]//Proceeding of the International Conference on Software Maintenance (ICSM’99), Oxford. 1999: 13–22.Google Scholar
  13. [13]
    Chen H Y, Tse T H, Chan F T, Chen T Y. In black and white: an integrated approach to class level testing of object-oriented programs [J]. ACM Transactions on Software Engineering and Methodology, 1998, 7(3): 250–295.CrossRefGoogle Scholar

Copyright information

© Shanghai University 2007

Authors and Affiliations

  • Wang Yu-ying  (王玉英)
    • 1
  • Li Qing-shan  (李青山)
    • 1
  • Chen Ping  (陈 平)
    • 1
  • Ren Chun-de  (任春德)
    • 1
  1. 1.Software Engineering InstituteXidian UniversityXi’anP. R. China

Personalised recommendations