Assessing Modularity in Java Programs
Jorge Manjarrez Sánchez, Victor Navarro Belmonte · Advances in systems analysis, software engineering, and high performance computing book series · 2014
The main goal of a good software design is to achieve high modularity in order to promote reusability, maintainability, and reduce costs. Coupling and cohesion are two among the many measures that quantify the degree of modularity of a system. An ideal modular design is highly cohesive and lowly coupled. This chapter presents a review of some important metrics to numerically quantify coupling and cohesion and the assessment of some tools to automate their calculation in medium and large Java programs.