English
Related papers

Related papers: Software Evolution Understanding: Automatic Extrac…

200 papers

Finding and fixing buggy code is an important and cost-intensive maintenance task, and static analysis (SA) is one of the methods developers use to perform it. SA tools warn developers about potential bugs by scanning their source code for…

Software Engineering · Computer Science 2020-09-04 Yoshiki Higo , Shinpei Hayashi , Hideaki Hata , Meiyappan Nagappan

Most complex systems are intrinsically dynamic in nature. The evolution of a dynamic complex system is typically represented as a sequence of snapshots, where each snapshot describes the configuration of the system at a particular instant…

Physics and Society · Physics 2016-12-30 Richard K. Darst , Clara Granell , Alex Arenas , Sergio Gómez , Jari Saramäki , Santo Fortunato

In model-driven development (MDD) software emerges by systematically transforming abstract models to concrete source code. Ideally, performing those transformations is to a large extent the task of code generators. One approach for…

Software Engineering · Computer Science 2015-09-09 Pedram Mir Seyed Nazari , Bernhard Rumpe

Software product lines have recently been presented as one of the best promising improvements for the efficient software development. Different research works contribute supportive parameters and negotiations regarding the problems of…

Software Engineering · Computer Science 2017-03-13 Furrakh Shahzad , Maruf Pasha , Urooj Pasha , Bushra Majeed , Khurram Shahzad

Maintaining software artifacts is among the hardest tasks an engineer faces. Like any other piece of code, model transformations developed by engineers are also subject to maintenance. To facilitate the comprehension of programs, software…

Software Engineering · Computer Science 2020-10-13 Chihab eddine Mokaddem , Houari Sahraoui , Eugene Syriani

With the rapid increasing of software project size and maintenance cost, adherence to coding standards especially by managing identifier naming, is attracting a pressing concern from both computer science educators and software managers.…

Software Engineering · Computer Science 2014-06-03 Yanqing Wang , Chong Wang , Xiaojie Li , Sijing Yun , Minjing Song

In software development, the identification of source code file experts is an important task. Identifying these experts helps to improve software maintenance and evolution activities, such as developing new features, code reviews, and bug…

Software Engineering · Computer Science 2022-08-17 Otávio Cury , Guilherme Avelino , Pedro Santos Neto , Ricardo Britto , Marco Túlio Valente

Before any software maintenance can occur, developers must read the identifier names found in the code to be maintained. Thus, high-quality identifier names are essential for productive program comprehension and maintenance activities. With…

Software Engineering · Computer Science 2022-03-16 Anthony Peruma , Christian D. Newman

Dynamic program analysis (also known as profiling) is well-known for its powerful capabilities of identifying performance inefficiencies in software packages. Although a large number of dynamic program analysis techniques are developed in…

Software Engineering · Computer Science 2023-12-29 Qidong Zhao , Milind Chabbi , Xu Liu

Code annotations is a widely used feature in Java systems to configure custom metadata on programming elements. Their increasing presence creates the need for approaches to assess and comprehend their usage and distribution. In this…

Software Engineering · Computer Science 2022-10-14 Phyllipe Lima , Jorge Melegati , Everaldo Gomes , Nathalya Stefhany Pereira , Eduardo Guerra , Paulo Meirelles

Software evolves with changes to its codebase over time. Internally, software changes in response to decisions to include some code change into the codebase and discard others. Explaining the mechanism of software evolution, this paper…

Software Engineering · Computer Science 2021-06-04 Ayushi Rastogi , Georgios Gousios

Malware detection is a critical aspect of information security. One difficulty that arises is that malware often evolves over time. To maintain effective malware detection, it is necessary to determine when malware evolution has occurred so…

Cryptography and Security · Computer Science 2021-03-11 Sunhera Paul , Mark Stamp

Software systems are evolving by adding new functions and modifying existing functions over time. Through the evolution, the structure of software is becoming more complex and so the understandability and maintainability of software systems…

Software Engineering · Computer Science 2014-08-22 Ginika Mahajan , Ashima

Malware lineage studies the evolutionary relationships among malware and has important applications for malware analysis. A persistent limitation of prior malware lineage approaches is to consider every input sample a separate malware…

Cryptography and Security · Computer Science 2017-10-17 Irfan Ul Haq , Sergio Chica , Juan Caballero , Somesh Jha

More often than not, there is a need to understand the structure of complex computer code: what functions and in what order they are called, how information travels around static, input, and output variables, what depends on what. As a…

Software Engineering · Computer Science 2016-10-10 Igor Polkovnikov

No single Automatic Differentiation (AD) system is the optimal choice for all problems. This means informed selection of an AD system and combinations can be a problem-specific variable that can greatly impact performance. In the Julia…

Mathematical Software · Computer Science 2022-02-08 Frank Schäfer , Mohamed Tarek , Lyndon White , Chris Rackauckas

Software architecture often consists of interconnected components dispersed across source code and other development artifacts, making visualization difficult without costly additional documentation. Although some tools can automatically…

Software Engineering · Computer Science 2024-07-26 Filipe F. Correia , Ricardo Ferreira , Paulo G. G Queiroz , Henrique Nunes , Matilde Barra , Duarte Figueiredo

Context: Interest in diversity in software development has significantly increased in recent years. Reporting on diversity in software projects can enhance user trust and assist regulators in evaluating adoption. Recent AI directives…

Software Engineering · Computer Science 2025-10-29 Joan Giner-Miguelez , Sergio Morales , Sergio Cobos , Javier Luis Canovas Izquierdo , Robert Clariso , Jordi Cabot

Identifiers, such as method and variable names, form a large portion of source code. Therefore, low-quality identifiers can substantially hinder code comprehension. To support developers in using meaningful identifiers, several…

Software Engineering · Computer Science 2022-12-13 Antonio Mastropaolo , Emad Aghajani , Luca Pascarella , Gabriele Bavota

Evolutionary algorithms are wildly used in unmanned aerial vehicle path planning for their flexibility and effectiveness. Nevertheless, they are so sensitive to the change of environment that can't adapt to all scenarios. Due to this…

Neural and Evolutionary Computing · Computer Science 2022-04-08 Jiabin Lou , Rong Ding , Wenjun Wu