International audienceObject-oriented (OO) software is usually organized 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 software 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 automatically 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 optimiz...
International audienceMany design guidelines state that a software system architecture should avoid ...
Complex software systems, meant to facilitate organizations, undergo frequent upgrades that can erod...
There exist many large object-oriented software systems consisting of several thousands of classes t...
International audienceObject-oriented (OO) software is usually organized into subsystems using the c...
International audienceRecently, there has been an important progress in applying search-based optimi...
TheseTo cope with the complexity of large object-oriented software systems, developers organize clas...
AbstractThe software maintenance activities performed without following the original design decision...
AbstractIn real world, the software systems often need to be continuously modified to satisfy the ev...
AbstractDifferent software maintenance activities, carried out from time to time, lead to structural...
Search based software engineering has been extensively applied to the problem of finding improved mo...
Abstract:- One of the most important characteristics of a software application is the fidelity to th...
When the source code of a software is the only product available, program understanding has a substa...
Pour faire face à la complexité des grands systèmes logiciels orientés objets, les programmeurs orga...
Software maintenance is an important step in the software lifecycle. Software module clustering is a...
Package management as a means of reuse of software arti-facts has become extremely popular, most not...
International audienceMany design guidelines state that a software system architecture should avoid ...
Complex software systems, meant to facilitate organizations, undergo frequent upgrades that can erod...
There exist many large object-oriented software systems consisting of several thousands of classes t...
International audienceObject-oriented (OO) software is usually organized into subsystems using the c...
International audienceRecently, there has been an important progress in applying search-based optimi...
TheseTo cope with the complexity of large object-oriented software systems, developers organize clas...
AbstractThe software maintenance activities performed without following the original design decision...
AbstractIn real world, the software systems often need to be continuously modified to satisfy the ev...
AbstractDifferent software maintenance activities, carried out from time to time, lead to structural...
Search based software engineering has been extensively applied to the problem of finding improved mo...
Abstract:- One of the most important characteristics of a software application is the fidelity to th...
When the source code of a software is the only product available, program understanding has a substa...
Pour faire face à la complexité des grands systèmes logiciels orientés objets, les programmeurs orga...
Software maintenance is an important step in the software lifecycle. Software module clustering is a...
Package management as a means of reuse of software arti-facts has become extremely popular, most not...
International audienceMany design guidelines state that a software system architecture should avoid ...
Complex software systems, meant to facilitate organizations, undergo frequent upgrades that can erod...
There exist many large object-oriented software systems consisting of several thousands of classes t...