A cookbook for using the model-view controller user interface paradigm in Smalltalk-80
Journal of Object-Oriented Programming
Communications of the ACM
An evaluation of reverse engineering tool capabilities
Journal of Software Maintenance: Research and Practice
Software architecture recovery of a program family
Proceedings of the 20th international conference on Software engineering
Applied software architecture
Business Components Factory: A Comprehensive Overview of Component-Based Development for the Enterprise
Documenting Software Architectures: Views and Beyond
Documenting Software Architectures: Views and Beyond
The 4+1 View Model of Architecture
IEEE Software
Representing and Using Nonfunctional Requirements: A Process-Oriented Approach
IEEE Transactions on Software Engineering - Special issue on knowledge representation and reasoning in software development
Software Reflexion Models: Bridging the Gap between Design and Implementation
IEEE Transactions on Software Engineering
Automatic Software Clustering via Latent Semantic Analysis
ASE '99 Proceedings of the 14th IEEE international conference on Automated software engineering
Bunch: A Clustering Tool for the Recovery and Maintenance of Software System Structures
ICSM '99 Proceedings of the IEEE International Conference on Software Maintenance
Architectural Repair of Open Source Software
IWPC '00 Proceedings of the 8th International Workshop on Program Comprehension
Program changes and the cost of selective recompilation
Program changes and the cost of selective recompilation
Software Clustering based on Information Loss Minimization
WCRE '03 Proceedings of the 10th Working Conference on Reverse Engineering
Removing false code dependencies to speedup software build processes
CASCON '03 Proceedings of the 2003 conference of the Centre for Advanced Studies on Collaborative research
Modeling the search landscape of metaheuristic software clustering algorithms
GECCO'03 Proceedings of the 2003 international conference on Genetic and evolutionary computation: PartII
Journal of Systems and Software
Hi-index | 0.00 |
The build architecture of legacy C/C++ software systems, groups program files in directories to represent logical components. The interfaces of these components are loosely defined by a set of header files that are typically grouped in one common include directory. As legacy systems evolve, these interfaces decay, which contribute to an increase in the build time and the number of conflict in parallel developments. This paper presents an empirical study of the build architecture of large commercial software systems, introduces a restructuring approach, based on Reflexion models and automatic clustering, and reports on a case study using VIM open source editor.