2013 IEEE International Conference on Software Maintenance (2013)
Sept. 22, 2013 to Sept. 28, 2013
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/ICSM.2013.96
Fabian Beck , VISUS, Univ. of Stuttgart, Stuttgart, Germany
Software systems consist of hundreds or thousands of files, which are usually not independent of each other but coupled. While it is obvious that structural dependencies like method calls or data accesses create couplings, there also exist other, more indirect forms of coupling that should be considered when modifying, extending, or debugging a system. In contrast to most previous research, in this work, code coupling is considered as a multi-dimensional construct: several forms of structural couplings are contrasted to couplings based on the history and the semantics of the source code entities. The work proposes two novel visualization techniques, which allow for exploring and visually comparing different concepts of coupling. Based on an empirical study on open source systems, the work further provides insights into the relationship between concepts of coupling and the modularization of software, first evidence on the usage of modularization principles can be derived thereof. Finally, a new application for adapting the modularization of a software system-component extraction-is introduced and tested with varying coupling data. This work summarizes the doctoral thesis of the author, suggests directions for future research, and reports lessons learned.
Couplings, Visualization, Software systems, Semantics, History, Software engineering
F. Beck, "Analysis of Multi-dimensional Code Couplings," 2013 IEEE International Conference on Software Maintenance(ICSM), Eindhoven Netherlands, 2014, pp. 560-565.