System Structure Analysis: Clustering with Data Bindings
IEEE Transactions on Software Engineering - Annals of discrete mathematics, 24
Practical reusable UNIX software
Assessing modular structure of legacy code based on mathematical concept analysis
ICSE '97 Proceedings of the 19th international conference on Software engineering
An intelligent tool for re-engineering software modularity
ICSE '91 Proceedings of the 13th international conference on Software engineering
A C++ data model supporting reachability analysis and dead code detection
ESEC '97/FSE-5 Proceedings of the 6th European SOFTWARE ENGINEERING conference held jointly with the 5th ACM SIGSOFT international symposium on Foundations of software engineering
Identifying objects using cluster and concept analysis
Proceedings of the 21st international conference on Software engineering
Recovering software architecture from the names of source files
Journal of Software Maintenance: Research and Practice
Extracting and Restructuring the Design of Large Systems
IEEE Software
Automatic Clustering of Software Systems Using a Genetic Algorithm
STEP '99 Proceedings of the Software Technology and Engineering Practice
The Orphan Adoption Problem in Architecture Maintenance
WCRE '97 Proceedings of the Fourth Working Conference on Reverse Engineering (WCRE '97)
MoJo: A Distance Metric for Software Clusterings
WCRE '99 Proceedings of the Sixth Working Conference on Reverse Engineering
Chava: Reverse Engineering and Tracking of Java Applets
WCRE '99 Proceedings of the Sixth Working Conference on Reverse Engineering
WCRE '01 Proceedings of the Eighth Working Conference on Reverse Engineering (WCRE'01)
Bunch: A Clustering Tool for the Recovery and Maintenance of Software System Structures
ICSM '99 Proceedings of the IEEE International Conference on Software Maintenance
On the Stability of Software Clustering Algorithms
IWPC '00 Proceedings of the 8th International Workshop on Program Comprehension
A Framework for Experimental Evaluation of Clustering Techniques
IWPC '00 Proceedings of the 8th International Workshop on Program Comprehension
A Comparison of Graphs of Concept for Reverse Engineering
IWPC '00 Proceedings of the 8th International Workshop on Program Comprehension
Using Automatic Clustering to Produce High-Level System Organizations of Source Code
IWPC '98 Proceedings of the 6th International Workshop on Program Comprehension
The Design and Implementation of a Framework for Automatic Modularization of Software Systems
The Journal of Supercomputing
Information-Theoretic Software Clustering
IEEE Transactions on Software Engineering
On the Automatic Modularization of Software Systems Using the Bunch Tool
IEEE Transactions on Software Engineering
Revisiting the ΔIC approach to component recovery
Science of Computer Programming - Software analysis, evolution and re-engineering
Program restructuring using clustering techniques
Journal of Systems and Software - Special issue: Selected papers from the 4th source code analysis and manipulation (SCAM 2004) workshop
Clustering large software systems at multiple layers
Information and Software Technology
A modified genetic algorithm for software clustering problem
AIC'06 Proceedings of the 6th WSEAS International Conference on Applied Informatics and Communications
Journal of Software Maintenance and Evolution: Research and Practice - Special Issue on the 12th Conference on Software Maintenance and Reengineering (CSMR 2008)
Structure-Based Partitioning of Large Ontologies
Modular Ontologies
Modeling the search landscape of metaheuristic software clustering algorithms
GECCO'03 Proceedings of the 2003 international conference on Genetic and evolutionary computation: PartII
Kadre: domain-specific architectural recovery for scientific software systems
Proceedings of the IEEE/ACM international conference on Automated software engineering
Journal of Software Maintenance and Evolution: Research and Practice
Applying a dynamic threshold to improve cluster detection of LSI
Science of Computer Programming
Clustering methodologies for software engineering
Advances in Software Engineering
Recovering design patterns to support program comprehension
Proceedings of the 2nd international workshop on Evidential assessment of software technologies
Leveraging design rules to improve software architecture recovery
Proceedings of the 9th international ACM Sigsoft conference on Quality of software architectures
Software re-engineering using imperialist competitive algorithm
ACM SIGSOFT Software Engineering Notes
Hi-index | 0.00 |
Decomposing source code components and relations into subsystem clusters is an active area of research. Numerous clustering approaches have been proposed in the reverse engineering literature, each one using a different algorithm to identify subsystems. Since different clustering techniques may not produce identical results when applied to the same system, mechanisms that can measure the extent of these differences are needed. Some work to measure the similarity between decompositions has been done, but this work considers the assignment of source code components to clusters as the only criterion for similarity. We argue that better similarity measurements can be designed if the relations between the components are considered.In this paper we propose two similarity measurements that overcome certain problems in existing measurements. We also provide some suggestions on how to identify and deal with source code components that tend to contribute to poor similarity results. We conclude by presenting experimental results, and by highlighting some of the benefits of our similarity measurements.