Recovering software architecture from the names of source files
Journal of Software Maintenance: Research and Practice
An Approach for Recovering Distributed System Architectures
Automated Software Engineering
Recovering documentation-to-source-code traceability links using latent semantic indexing
Proceedings of the 25th International Conference on Software Engineering
Soot - a Java bytecode optimization framework
CASCON '99 Proceedings of the 1999 conference of the Centre for Advanced Studies on Collaborative research
Recognizers for extracting architectural features from source code
WCRE '95 Proceedings of the Second Working Conference on Reverse Engineering
A cliche-based environment to support architectural reverse engineering
WCRE '96 Proceedings of the 3rd Working Conference on Reverse Engineering (WCRE '96)
ACDC: An Algorithm for Comprehension-Driven Clustering
WCRE '00 Proceedings of the Seventh Working Conference on Reverse Engineering (WCRE'00)
The Journal of Machine Learning Research
Information-Theoretic Software Clustering
IEEE Transactions on Software Engineering
Separating architectural concerns to ease program understanding
MACS '05 Proceedings of the 2005 workshop on Modeling and analysis of concerns in software
On the Automatic Modularization of Software Systems Using the Bunch Tool
IEEE Transactions on Software Engineering
Semantic clustering: Identifying topics in source code
Information and Software Technology
Discovering Architectures from Running Systems
IEEE Transactions on Software Engineering
Hierarchical Clustering for Software Architecture Recovery
IEEE Transactions on Software Engineering
Software Architecture: Foundations, Theory, and Practice
Software Architecture: Foundations, Theory, and Practice
Software Architecture Reconstruction: A Process-Oriented Taxonomy
IEEE Transactions on Software Engineering
Software traceability with topic modeling
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1
Hi-index | 0.00 |
Architectures of implemented software systems tend to drift and erode as they are maintained and evolved. To properly understand such systems, their architectures must be recovered from implementation-level artifacts. Many techniques for architectural recovery have been proposed, but their degrees of automation and accuracy remain unsatisfactory. To alleviate these shortcomings, we present a machine learning-based technique for recovering an architectural view containing a system's components and connectors. Our approach differs from other architectural recovery work in that we rely on recovered software concerns to help identify components and connectors. A concern is a software system's role, responsibility, concept, or purpose. We posit that, by recovering concerns, we can improve the correctness of recovered components, increase the automation of connector recovery, and provide more comprehensible representations of architectures.