Static-Dynamic Coupling and Remodularization
     
Home
Download
Contact
 
 
 
Overview

We explore the concept of static-dynamic coupling—the degree to which changes in a program’s static modular structure imply changes to its dynamic structure. We investigate the impact of static-dynamic coupling in a programming language on the effort required to evolve the coarse modular structure of programs written in that language.

We performed a series of remodularization case studies in both Java and SubjectJ. SubjectJ is designed to be similar to Java, but have strictly less static-dynamic coupling. Our results include quantitative measures—time taken and number of bugs introduced—as well as a more subjective qualitative analysis of the remodularization process. All results point in the same direction and suggest that static-dynamic coupling causes substantial accidental complexity for the remodularization of Java programs.

We will be presenting a paper on this topic at OOPSLA 2008.

People