English
Related papers

Related papers: Java Classes with "-Er" and "-Utils" Suffixes Have…

200 papers

Programming problems can be solved in a multitude of functionally correct ways, but the quality of these solutions (e.g. readability, maintainability) can vary immensely. When code quality is poor, symptoms emerge in the form of 'code…

Software Engineering · Computer Science 2024-03-11 Ivan Tan , Christopher M. Poskitt

Code smells indicate software design problems that harm software quality. Data-intensive systems that frequently access databases often suffer from SQL code smells besides the traditional smells. While there have been extensive studies on…

Software Engineering · Computer Science 2022-01-10 Biruk Asmare Muse , Mohammad Masudur Rahman , Csaba Nagy , Anthony Cleve , Foutse Khomh , Giuliano Antoniol

The accuracy reported for code smell-detecting tools varies depending on the dataset used to evaluate the tools. Our survey of 45 existing datasets reveals that the adequacy of a dataset for detecting smells highly depends on relevant…

Software Engineering · Computer Science 2023-06-05 Morteza Zakeri-Nasrabadi , Saeed Parsa , Ehsan Esmaili , Fabio Palomba

A language $L$ over an alphabet $\Sigma$ is prefix-convex if, for any words $x,y,z\in\Sigma^*$, whenever $x$ and $xyz$ are in $L$, then so is $xy$. Prefix-convex languages include right-ideal, prefix-closed, and prefix-free languages. We…

Formal Languages and Automata Theory · Computer Science 2016-06-27 Janusz Brzozowski , Corwin Sinnamon

Artificial Intelligence (AI) and Machine Learning (ML) are pervasive in the current computer science landscape. Yet, there still exists a lack of software engineering experience and best practices in this field. One such best practice,…

Software Engineering · Computer Science 2021-03-09 Bart van Oort , Luís Cruz , Maurício Aniche , Arie van Deursen

This paper reports an empirical study on refactoring activity in three Java software systems. We investigated some questions on refactoring activity, to confirm or disagree on conclusions that have been drawn from previous empirical…

During software development, poor design and implementation choices can detrimentally impact software maintainability. Design smells, recurring patterns of poorly designed fragments, signify these issues. Role-stereotypes denote the generic…

Software Engineering · Computer Science 2024-06-28 Daniel Ogenrwot , Joyce Nakatumba-Nabende , John Businge , Michel R. V. Chaudron

Simulation modelling systems are routinely used to test or understand real-world scenarios in a controlled setting. They have found numerous applications in scientific research, engineering, and industrial operations. Due to their complex…

Software Engineering · Computer Science 2024-09-09 Riasat Mahbub , Mohammad Masudur Rahman , Muhammad Ahsanul Habib

JavaScript (JS) is one of the most popular programming languages, and widely used for web apps and even backend development. Due to its dynamic nature, however, JS applications often have a reputation for poor software quality. As a…

Software Engineering · Computer Science 2024-09-12 Justus Bogner , Manuel Merkel

Code Smell, similar to a bad smell, is a surface indication of something tainted but in terms of software writing practices. This metric is an indication of a deeper problem lies within the code and is associated with an issue which is…

Software Engineering · Computer Science 2021-08-11 Himanshu Gupta , Tanmay G. Kulkarni , Lov Kumar , Lalita Bhanu Murthy Neti , Aneesh Krishna

Single inheritance has been widely accepted in the current programming practice to avoid the complication that incurred by multiple inheritance. Single inheritance enhances the reusability of codes and eliminates the confusion of identical…

Programming Languages · Computer Science 2013-01-29 Sim-Hui Tee

Context. An extension method is a method declared in a package other than the package of its host class. Thanks to extension methods, developers can adapt to their needs classes they do not own: adding methods to core classes is a typical…

Programming Languages · Computer Science 2017-08-08 Guillermo Polito , Camille Teruel , Stéphane Ducasse , Luc Fabresse

Interfaces are widely used as central design elements of Java applications. Although interfaces are abstract types similar to abstract classes, the usage of interfaces in Java applications may considerably differ from the usage of abstract…

Software Engineering · Computer Science 2014-08-01 Hani Abdeen , Osama Shata

Programming languages often demarcate the internal sandbox, consisting of entities such as objects and variables, from the outside world, e.g., files or network. Although communication with the external world poses fundamental challenges…

Software Engineering · Computer Science 2023-06-22 Matúš Sulír , Sergej Chodarev , Milan Nosáľ

We study various complexity properties of suffix-free regular languages. The quotient complexity of a regular language $L$ is the number of left quotients of $L$; this is the same as the state complexity of $L$. A regular language $L'$ is a…

Formal Languages and Automata Theory · Computer Science 2016-12-13 Janusz Brzozowski , Marek Szykuła

Recently Java programming environment has become so popular. Java programming language is a language that is designed to be portable enough to be executed in wide range of computers ranging from cell phones to supercomputers. Computer…

Software Engineering · Computer Science 2011-10-18 Rahul Saha , Dr. G. Geetha

To remain useful for their users, software systems need to continuously enhance and extend their functionality. Nevertheless, in many object-oriented applications, features are not represented explicitly. The lack of modularization is known…

Software Engineering · Computer Science 2014-07-07 T. Pandiyavathi

A language L is prefix-free if, whenever words u and v are in L and u is a prefix of v, then u=v. Suffix-, factor-, and subword-free languages are defined similarly, where "subword" means "subsequence". A language is bifix-free if it is…

Formal Languages and Automata Theory · Computer Science 2011-05-13 Janusz Brzozowski , Galina Jirásková , Baiyu Li , Joshua Smith

Reinforcement Learning (RL) is being increasingly used to learn and adapt application behavior in many domains, including large-scale and safety critical systems, as for example, autonomous driving. With the advent of plug-n-play RL…

Software Engineering · Computer Science 2023-08-04 Nicolás Cardozo , Ivana Dusparic , Christian Cabrera

Most software maintenance and evolution tasks require developers to understand the source code of their software systems. Software developers usually inspect class comments to gain knowledge about program behavior, regardless of the…

Software Engineering · Computer Science 2023-04-26 Pooja Rani , Sebastiano Panichella , Manuel Leuenberger , Andrea Di Sorbo , Oscar Nierstrasz