Barriers to modularity: an empirical study to assess the potential for modularisation of java programs

  • Authors:
  • Jens Dietrich;Catherine McCartin;Ewan Tempero;Syed M. Ali Shah

  • Affiliations:
  • School of Engineering and Advanced Technology, Massey University, Palmerston North, New Zealand;School of Engineering and Advanced Technology, Massey University, Palmerston North, New Zealand;Department of Computer Science, University of Auckland, Auckland, New Zealand;School of Engineering and Advanced Technology, Massey University, Palmerston North, New Zealand

  • Venue:
  • QoSA'10 Proceedings of the 6th international conference on Quality of Software Architectures: research into Practice - Reality and Gaps
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

To deal with the challenges when building large and complex systems modularisation techniques such as component-based software engineering and aspect-oriented programming have been developed. In the Java space these include dependency injection frameworks and dynamic component models such as OSGi. The question arises as to how easy it will be to transform existing systems to take advantage of these new techniques. Anecdotal evidence from industry suggests that the presence of certain patterns presents barriers to refactoring of monolithic systems into a modular architecture. In this paper, we present such a set of patterns and analyse a large set of open-source systems for occurrences of these patterns. We use a novel, scalable static analyser that we have developed for this purpose. The key findings of this paper are that almost all programs investigated have a significant number of these patterns, implying that modularising will be therefore difficult and expensive.