Return to search

Identification and application of extract class refactorings in object-oriented systems

Software can be considered a live entity, as it undergoes many alterations throughout its lifecycle. Therefore, code can become rather complex and difficult to understand. More specifically in object-oriented systems, classes may become very large and less cohesive. In order to identify such problematic cases, existing approaches have proposed the use of cohesion metrics. While metrics can identify classes with low cohesion, they usually cannot identify new or independent concepts. In this work, we propose a class decomposition method using an clustering algorithm based on the Jaccard distance between class members. The methodology is able to identify new concepts and rank the solutions according to their impact on the design quality of the system. The methodology was evaluated in terms of assessment by designers, expert assessment and metrics. The evaluation showed the ability of the method to identify new recognizable concepts and improve the design quality of the underlying system.

Identiferoai:union.ndltd.org:LACETR/oai:collectionscanada.gc.ca:AEU.10048/1491
Date11 1900
CreatorsFokaefs, Marios-Eleftherios
ContributorsStroulia, Eleni (Computing Science), Wong, Ken (Computing Science), Reformat, Marek (Electrical and Computer Engineering)
Source SetsLibrary and Archives Canada ETDs Repository / Centre d'archives des thèses électroniques de Bibliothèque et Archives Canada
Languageen_US
Detected LanguageEnglish
TypeThesis
Format907813 bytes, application/pdf
RelationM. Fokaefs, N. Tsantalis, A. Chatzigeorgiou, and J. Sander, Decomposing Object-Oriented Class Modules Using an Agglomerative Clustering Technique, 25th IEEE International Conference on Software Maintenance (ICSM2009), pp. 93101, September 20-26 2009.

Page generated in 0.0023 seconds