English
Related papers

Related papers: The significance of user-defined identifiers in Ja…

200 papers

Software systems are designed according to guidelines and constraints defined by business rules. Some of these constraints define the allowable or required values for data handled by the systems. These data constraints usually originate…

Software Engineering · Computer Science 2021-07-13 Juan Manuel Florez , Laura Moreno , Zenong Zhang , Shiyi Wei , Andrian Marcus

The concept of Self-Affirmed Refactoring (SAR) was introduced to explore how developers document their refactoring activities in commit messages, i.e., developers' explicit documentation of refactoring operations intentionally introduced…

Software Engineering · Computer Science 2020-09-22 Eman Abdullah AlOmar , Mohamed Wiem Mkaouer , Ali Ouni

Statistical language models on source code have successfully assisted software engineering tasks. However, developers can create or pick arbitrary identifiers when writing source code. Freely chosen identifiers lead to the notorious…

Software Engineering · Computer Science 2022-01-07 Jieke Shi , Zhou Yang , Junda He , Bowen Xu , David Lo

The automatic generation of source code is one of the long-lasting dreams in software engineering research. Several techniques have been proposed to speed up the writing of new code. For example, code completion techniques can recommend to…

Software Engineering · Computer Science 2023-02-09 Matteo Ciniselli , Luca Pascarella , Emad Aghajani , Simone Scalabrino , Rocco Oliveto , Gabriele Bavota

Source code plagiarism detection is a problem that has been addressed several times before; and several tools have been developed for that purpose. In this research project we investigated a set of possible disguises that can be…

Other Computer Science · Computer Science 2017-11-08 Hatem A. Mahmoud

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

Browser fingerprinting is a stateless identification technique based on browser properties. Together, they form an identifier that can be collected without users' notice and has been studied to be unique and stable. As this technique relies…

Cryptography and Security · Computer Science 2021-03-02 Antonin Durey , Pierre Laperdrix , Walter Rudametkin , Romain Rouvoy

In this paper, we study how object-oriented classes are used across thousands of software packages. We concentrate on "usage diversity'", defined as the different statically observable combinations of methods called on the same object. We…

Software Engineering · Computer Science 2018-07-06 Diego Mendez , Benoit Baudry , Martin Monperrus

Dependencies between types in object-oriented software can be viewed as directed graphs, with types as nodes and dependencies as edges. The in-degree and out-degree distributions of such graphs have quite different forms, with the former…

Software Engineering · Computer Science 2008-02-19 G. J. Baxter , M. R. Frean

Attributing a piece of malware to its creator typically requires threat intelligence. Binary attribution increases the level of difficulty as it mostly relies upon the ability to disassemble binaries to identify authorship style. Our survey…

Cryptography and Security · Computer Science 2021-01-19 Jason Gray , Daniele Sgandurra , Lorenzo Cavallaro

Program build information, such as compilers and libraries used, is vitally important in an auditing and benchmarking framework for HPC systems. We have developed a tool to automatically extract this information using signature-based…

Software Engineering · Computer Science 2013-02-08 Charng-Da Lu

Context: Various approaches aim to support program comprehension by automatically detecting algorithms in source code. However, no empirical evaluations of their helpfulness have been performed. Objective: To empirically evaluate how…

Software Engineering · Computer Science 2025-04-29 Denis Neumüller , Alexander Raschke , Matthias Tichy

Program obfuscation is a widely employed approach for software intellectual property protection. However, general obfuscation methods (e.g., lexical obfuscation, control obfuscation) implemented in mainstream obfuscation tools are heuristic…

Cryptography and Security · Computer Science 2017-10-04 Hui Xu , Yangfan Zhou , Yu Kang , Michael R. Lyu

The names of variables and functions serve as implicit documentation and are instrumental for program comprehension. But choosing good meaningful names is hard. We perform a sequence of experiments in which a total of 334 subjects are…

Software Engineering · Computer Science 2021-03-16 Dror G. Feitelson , Ayelet Mizrahi , Nofar Noy , Aviad Ben Shabat , Or Eliyahu , Roy Sheffer

AI code generation tools have gained significant popularity among developers, who use them to assist in software development due to their capability to generate code. Existing studies mainly explored the quality, e.g., correctness and…

Software Engineering · Computer Science 2025-10-28 Syed Mohammad Kashif , Peng Liang , Amjed Tahir

Identity-based code signing enables software developers to digitally sign their code using cryptographic keys. This key is then linked to an identity (e.g., through an identity provider), allowing signers to verify both the code's origin…

Cryptography and Security · Computer Science 2025-12-24 Chinenye Okafor , James C. Davis , Santiago Torres-Arias

Assessing code comment quality is known to be a difficult problem. A number of coding style guidelines have been created with the aim to encourage writing of informative, readable, and consistent comments. However, it is not clear from the…

Software Engineering · Computer Science 2023-04-26 Pooja Rani , Suada Abukar , Nataliia Stulova , Alexandre Bergel , Oscar Nierstrasz

In this work, we study how the authorship of code affects bug-fixing commits using the SStuBs dataset, a collection of single-statement bug fix changes in popular Java Maven projects. More specifically, we study the differences in…

Software Engineering · Computer Science 2025-01-29 Wenhan Zhu , Michael W. Godfrey

[Background] Previous research has shown that developers commonly misuse cryptography APIs. [Aim] We have conducted an exploratory study to find out how crypto APIs are used in open-source Java projects, what types of misuses exist, and why…

Cryptography and Security · Computer Science 2020-09-03 Mohammadreza Hazhirpasand , Mohammad Ghafari , Oscar Nierstrasz

Types are an important part of any modern programming language, but we often forget that the concept of type we understand nowadays is not the same it was perceived in the sixties. Moreover, we conflate the concept of "type" in programming…

Programming Languages · Computer Science 2017-03-30 Simone Martini
‹ Prev 1 4 5 6 7 8 10 Next ›