Abstract—Object-oriented (OO) software is usually orga-nized into subsystems using the concepts of package or module. Such modular structure helps applications to evolve when facing new requirements. However, studies show that as soft-ware evolves to meet requirements and environment changes, modularization quality degrades. To help maintainers improve the quality of software modularization we have designed and implemented a heuristic search-based approach for automati-cally optimizing inter-package connectivity (i.e., dependencies). In this paper, we present our approach and its underlying techniques and algorithm. We show through a case study how it enables maintainers to optimize OO package structure of source code. Our optimization appr...
Software refactoring is a software maintenance action to improve the software internal quality witho...
Package management as a means of reuse of software arti-facts has become extremely popular, most not...
Abstract—There exist many large object-oriented software sys-tems consisting of several thousands of...
International audienceObject-oriented (OO) software is usually organized into subsystems using the c...
AbstractThe software maintenance activities performed without following the original design decision...
Abstract—Recently, there has been an important progress in applying search-based optimization techni...
TheseTo cope with the complexity of large object-oriented software systems, developers organize clas...
AbstractIn real world, the software systems often need to be continuously modified to satisfy the ev...
Deciding what constitutes a single module, what classes belong to which module or the right set of m...
AbstractDifferent software maintenance activities, carried out from time to time, lead to structural...
Abstract:- One of the most important characteristics of a software application is the fidelity to th...
This paper reports experiments with au-tomated software modularization and re-modularization, using ...
When the source code of a software is the only product available, program understanding has a substa...
Modularity is one of the four key principles of software design and architecture. According to this ...
Over the last thirty years designers have tried to cope with software complexity by organizing syste...
Software refactoring is a software maintenance action to improve the software internal quality witho...
Package management as a means of reuse of software arti-facts has become extremely popular, most not...
Abstract—There exist many large object-oriented software sys-tems consisting of several thousands of...
International audienceObject-oriented (OO) software is usually organized into subsystems using the c...
AbstractThe software maintenance activities performed without following the original design decision...
Abstract—Recently, there has been an important progress in applying search-based optimization techni...
TheseTo cope with the complexity of large object-oriented software systems, developers organize clas...
AbstractIn real world, the software systems often need to be continuously modified to satisfy the ev...
Deciding what constitutes a single module, what classes belong to which module or the right set of m...
AbstractDifferent software maintenance activities, carried out from time to time, lead to structural...
Abstract:- One of the most important characteristics of a software application is the fidelity to th...
This paper reports experiments with au-tomated software modularization and re-modularization, using ...
When the source code of a software is the only product available, program understanding has a substa...
Modularity is one of the four key principles of software design and architecture. According to this ...
Over the last thirty years designers have tried to cope with software complexity by organizing syste...
Software refactoring is a software maintenance action to improve the software internal quality witho...
Package management as a means of reuse of software arti-facts has become extremely popular, most not...
Abstract—There exist many large object-oriented software sys-tems consisting of several thousands of...