Comprehending module dependencies and sharing

  • Authors:
  • Yongzheng Wu;Roland H. C. Yap;Rajiv Ramnath

  • Affiliations:
  • National University of Singapore, Singapore;National University of Singapore, Singapore;National University of Singapore, Singapore

  • Venue:
  • Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 2
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Software often lives in a complex software eco-system with complex interactions and dependencies between different modules or components. In Windows, this problem is exacerbated both by the overall system complexity and its closed source nature. Even when source is available, there are still interactions with modules which are only in binary form. This paper proposes two visualizations for investigating the dependencies between programs and other binaries, such as, dynamically linked libraries on Windows. Our visualizations are based on run-time traces obtained either from the Windows kernel or through binary instrumentation. Thus, our techniques do not need to rely on source code. We use the following scenarios to explain how our visualizations can be used to investigate various aspects of software dependencies: (i) visualizing whole system software dependencies; (ii) visualizing the interactions between selected modules of some software; (iii) discovering unexpected module interactions; and (iv) understanding the source of the modules being used.