Pages
- 1
- 2
- document
-
van der Gugten, Loek (author)Refactorings are program transformations that preserve the observable behavior of the program. The refactoring function inlining replaces a function call with the contents of the referenced function definition. To preserve the behavior, properties such as reference relations must be retained and language constructs like 'return' statements must...master thesis 2022
- document
-
de Vries, Rolf (author)As software systems evolve over time, the quality of its structure and code degrade unless developers regularly maintain it, requiring significant effort. Automated tools to help developers maintain software have been well-studied in the past. <br/>In particular, software remodularisation tools focus on improving the code structure quality with...master thesis 2022
- document
-
Kapitonenko, Nik (author)JSGLR2 is a java implementation of the Scannerless Generalized LR-parsing (SGLR) algorithm. It employs a modular architecture. This architecture comes with a performance overhead for letting multiple components interact with each other. This paper looks into the size of the performance overhead penalty for the recovery parser variant. It does so...bachelor thesis 2021
- document
-
Misteli, Phil (author)A refactoring is a program transformation that improves the design of the source code, while preserving its behavior. Most modern IDEs offer a number of automated refactorings as editor services. The Rename refactoring is the most-commonly applied refactoring and is used to change the identifier of a program entity such as a variable, a function...master thesis 2021
- document
-
van der Leij, David (author)Refactoring is the process of improving the structure of code without changing its functionality. The process is beneficial for software quality but challenges remain for identifying refactoring opportunities. This work employs machine learning to predict the application of the refactoring type Extract Method in an industry setting with the use...master thesis 2021
- document
-
van der Leij, David (author), Binda, J.R. (author), van Dalen, Robbert (author), Vallen, Pieter (author), Luo, Yaping (author), Aniche, Maurício (author)The sound identification of refactoring opportunities is still an open problem in software engineering. Recent studies have shown the effectiveness of machine learning models in recommending methods that should undergo different refactoring operations. In this work, we experiment with such approaches to identify methods that should undergo an...conference paper 2021
- document
-
Schröder, C.J. (author), van der Feltz, Adriaan (author), Panichella, A. (author), Aniche, Maurício (author)Deciding what constitutes a single module, what classes belong to which module or the right set of modules for a specific software system has always been a challenging task. The problem is even harder in large-scale software systems composed of thousands of classes and hundreds of modules. Over the years, researchers have been proposing...conference paper 2021
- document
-
Zhu, Q. (author), Zaidman, A.E. (author), Panichella, A. (author)Mutation testing is well-known for its efficacy in assessing test quality, and starting to be applied in the industry. However, what should a developer do when confronted with a low mutation score? Should the test suite be plainly reinforced to increase the mutation score, or should the production code be improved as well, to make the...journal article 2021
- document
-
Gerling, Jan (author)Refactorings tackle the challenge of architectural degradation of object-oriented software projects by improving its internal structure without changing the behavior. Refactorings improve software quality and maintainability if applied correctly. However, identifying refactoring opportunities is a challenging problem for developers and...master thesis 2020
- document
-
Schröder, Casper (author)Code quality of software products often degrades while they grow. Counteracting the degradation of code quality or improving it requires immense effort. Tools that reduce this effort are a hot topic in software engineering research. Software Modularization in particular aims to aid in the process of improving the quality of code structure, by...master thesis 2020
- document
-
Aniche, Maurício (author), Maziero, Erick (author), Durelli, Rafael (author), Durelli, Vinicius (author)Refactoring is the process of changing the internal structure of software to improve its quality without modifying its external behavior. Empirical studies have repeatedly shown that refactoring has a positive impact on the understandability and maintainability of software systems. However, before carrying out refactoring activities,...journal article 2020
- document
-
Towards language-parametric semantic editor services based on declarative type system specificationsPelsmaeker, D.A.A. (author), van Antwerpen, H. (author), Visser, Eelco (author)Editor services assist programmers to more effectively write and comprehend code. Implementing editor services correctly is not trivial. This paper focuses on the specification of semantic editor services, those that use the semantic model of a program. The specification of refactorings is a common subject of study, but many other semantic...conference paper 2019
- document
-
Bottema, Rowan (author)When developers enter a project, often a vast amount of existing code exists for them to understand. Improving the understandability of the code should help them in getting up to speed. This study researches two methods that could improve the understandability of the code for newcomers: Refactoring the code to adhere to Clean Code guidelines and...master thesis 2019
- document
-
Palomba, F. (author), Di Nucci, D. (author), Panichella, A. (author), Zaidman, A.E. (author), De Lucia, Andrea (author)Context. The demand for green software design is steadily growing higher especially in the context of mobile devices, where the computation is often limited by battery life. Previous studies found how wrong programming solutions have a strong impact on the energy consumption. Objective. Despite the efforts spent so far, only a little knowledge...journal article 2019
- document
-
Palomba, F. (author), Zaidman, A.E. (author), Oliveto, Rocco (author), De Lucia, Andrea (author)Refactoring aims at improving the internal structure of a software system without changing its external behavior. Previous studies empirically assessed, on the one hand, the benefits of refactoring in terms of code quality and developers’<br/>productivity, and on the other hand, the underlying reasons that push programmers to apply refactoring....conference paper 2017
- document
-
Vassalo, Carmine (author), Zampetti, Fiorelli (author), Romano, D. (author), Beller, M.M. (author), Panichella, A. (author), Di Penta, Massimiliano (author), Zaidman, A.E. (author)Continuous Delivery is an agile software develop- ment practice in which developers frequently integrate changes into the main development line and produce releases of their software. An automated Continuous Integration infrastructure builds and tests these changes. Claimed advantages of CD include early discovery of (integration) errors,...conference paper 2016
- document
-
Hoepelman, D.J. (author)Spreadsheets have a life-cycle similar to that of other software: they are inherited throughout an organization, are maintained by different users, and evolve over time to meet changing requirements. This leads to increased complexity and technical debt. In software engineering, refactoring is used to combat these problems by improving software...master thesis 2015
- document
-
Soetens, Quinten David (author), Pérez, Javier (author), Demeyer, Serge (author), Zaidman, A.E. (author)Today, refactoring reconstruction techniques are snapshot-based: they compare two revisions from a source code man-agement system and calculate the shortest path of edit op-erations to go from the one to the other. An inherent risk with snapshot-based approaches is that a refactoring may be concealed by later edit operations acting on the...conference paper 2015
- document
-
Hartveld, D.L. (author)Microsoft has introduced the async/await keywords in C# 5.0 to support developers that need to apply asynchronous programming techniques. However, do developers really use the new keywords, and do they use them correctly? An empirical survey of 1378 open source repositories from GitHub and CodePlex shows that developers often make mistakes. By...master thesis 2014
- document
-
Romano, D. (author), Raemaekers, S. (author), Pinzger, M. (author)Recent studies have shown that the violation of the Interface Segregation Principle (ISP) is critical for maintaining and evolving software systems. Fat interfaces (i.e., interfaces violating the ISP) change more frequently and degrade the quality of the components coupled to them. According to the ISP the interfaces’ design should force no...report 2014
Pages
- 1
- 2