Title :
Detecting software modularity violations
Author :
Wong, Sunny ; Cai, Yuanfang ; Kim, Miryung ; Dalton, Michael
Author_Institution :
Drexel Univ., Philadelphia, PA, USA
Abstract :
This paper presents Clio, an approach that detects modularity violations, which can cause software defects, modularity decay, or expensive refactorings. Clio computes the discrepancies between how components should change together based on the modular structure, and how components actually change together as revealed in version history. We evaluated Clio using 15 releases of Hadoop Common and 10 releases of Eclipse JDT. The results show that hundreds of violations identified using Clio were indeed recognized as design problems or refactored by the developers in later versions. The identified violations exhibit multiple symptoms of poor design, some of which are not easily detectable using existing approaches.
Keywords :
software maintenance; Clio; expensive refactorings; modular structure; modularity decay; software defect; software modularity violation; Cloning; Couplings; Games; History; Software; USA Councils; Unified modeling language; bad code smells; design structure matrix; modularity violation detection; refactoring;
Conference_Titel :
Software Engineering (ICSE), 2011 33rd International Conference on
Conference_Location :
Honolulu, HI
Print_ISBN :
978-1-4503-0445-0
Electronic_ISBN :
0270-5257
DOI :
10.1145/1985793.1985850