English
Related papers

Related papers: Using Modularity Metrics to assist Move Method Ref…

200 papers

Large organizations have diverse product offerings to meet various business needs. To increase revenue, its common these days to offer software products as integrated product suite(s) rather than individual products. Creating and…

Software Engineering · Computer Science 2017-10-03 Sai Anirudh Karre , Y. Raghu Reddy

In the past years, software reverse engineering dealt with source code understanding. Nowadays, it is levered to software requirements abstract level, supported by feature model notations, language independent, and simpler than the source…

Software Engineering · Computer Science 2019-04-30 Anas Alhamwieh , Said Ghoul

Refactoring is the process of changing a software system in such a way that it does not alter the external behavior of the code yet improves its internal structure. Not only researchers, but also practitioners, need to know about past…

Software Engineering · Computer Science 2018-08-08 Eunjong Choi , Kenji Fujiwara , Norihiro Yoshida , Shinpei Hayashi

Component-Based Development (CBD) is a popular approach to mitigating the costs of creating software systems. However, it is not clear to what extent the core component selection and adaptation activities of CBD can be implemented to…

Software Engineering · Computer Science 2022-05-11 Todd Wareham , Marieke Sweers

The idea of automatizing the assessment of objectoriented design is not new. Different approaches define and apply their own quality models, which are composed of single metrics or combinations thereof, to operationalize software design.…

Software Engineering · Computer Science 2016-02-24 Johannes Bräuer

Code refactoring is widely recognized as an essential software engineering practice to improve the understandability and maintainability of the source code. The Extract Method refactoring is considered as "Swiss army knife" of refactorings,…

Software Engineering · Computer Science 2023-12-21 Eman Abdullah AlOmar , Mohamed Wiem Mkaouer , Ali Ouni

Software re-modularization is an old preoccupation of reverse engineering research. The advantages of a well structured or modularized system are well known. Yet after so much time and efforts, the field seems unable to come up with…

Software Engineering · Computer Science 2012-10-29 Nicolas Anquetil , Jannik Laval

Context : Software comprehension and maintenance activities, such as refactoring, are said to be negatively impacted by software complexity. The methods used to measure software product and processes complexity have been thoroughly debated…

Software Engineering · Computer Science 2023-03-07 João Caldeira , Fernando Brito e Abreu , Jorge Cardoso , José Reis

Software Product Lines are large-scale, multi-unit systems that enable massive, customized production. They consist of a base of reusable artifacts and points of variation that provide the system with flexibility, allowing generating…

Software Engineering · Computer Science 2019-01-08 Zineb Mcharfi , Bouchra El Asri , Abdelaziz Kriouile

Estimating the effort and quality of a system is a critical step at the beginning of every software project. It is necessary to have reliable ways of calculating these measures, and, it is even better when the calculation can be done as…

Software Engineering · Computer Science 2012-07-11 Andreas Bollin , Abdollah Tabareh

Nowadays, software testing professionals are commonly required to develop coding skills to work on test automation. One essential skill required from those who code is the ability to implement code refactoring, a valued quality aspect of…

The size of a software artifact influences the software quality and impacts the development process. In industry, when software size exceeds certain thresholds, memory errors accumulate and development tools might not be able to cope…

Software Engineering · Computer Science 2017-08-10 Jan Schroeder , Christian Berger , Alessia Knauss , Harri Preenja , Mohammad Ali , Miroslaw Staron , Thomas Herpel

We propose a computational framework to quantify (measure) and to optimize the reliability of complex systems. The approach uses a graph representation of the system that is subject to random failures of its components (nodes and edges).…

Optimization and Control · Mathematics 2021-06-25 Joshua L. Pulsipher , Victor M. Zavala

The use of approximation is fundamental in computational science. Almost all computational methods adopt approximations in some form in order to obtain a favourable cost/accuracy trade-off and there are usually many approximations that…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-06-14 Michael A. Johnston , Vassilis Vassiliadis

Model Predictive Control (MPC) is a computationally demanding control technique that allows dealing with multiple-input and multiple-output systems, while handling constraints in a systematic way. The necessity of solving an optimization…

Systems and Control · Computer Science 2021-12-16 Bulat Khusainov , Eric C. Kerrigan , George A. Constantinides

In Search Based Software Engineering, Genetic Programming has been used for bug fixing, performance improvement and parallelisation of programs through the modification of source code. Where an evolutionary computation algorithm, such as…

Neural and Evolutionary Computing · Computer Science 2012-11-22 Brendan Cody-Kenny , Stephen Barrett

Analysis of data related to software development helps to increase quality, control and predictability of software development processes and products.However, collecting such data for is a complex task. A non-invasive collection of software…

Software Engineering · Computer Science 2017-02-24 Vasilii Artemev , Vladimir Ivanov , Manuel Mazzara , Alan Rogers , Alberto Sillitti , Giancarlo Succi , Eugene Zouev

Real-world software applications must constantly evolve to remain relevant. This evolution occurs when developing new applications or adapting existing ones to meet new requirements, make corrections, or incorporate future functionality.…

Software Engineering · Computer Science 2023-08-31 Sebastian Hönel

Context: The Importance of Dynamic Variability Management in Dynamic Software Product Lines. Objective: Define a protocol for conducting a systematic mapping study to summarize and synthesize evidence on dynamic variability management for…

Software Engineering · Computer Science 2022-07-01 Oscar Aguayo , Samuel Sepúlveda

System reuse and cost are very important in software product line design area. Developers goal is to increase system reuse and decreasing cost and efforts for building components from scratch for each software configuration. This can be…

Software Engineering · Computer Science 2013-11-14 Ola Younis , Said Ghoul , Mohammad H. Alomari