Program comprehension
View article
Summarizing Source Code with Transferred API Knowledge Open
Code summarization, aiming to generate succinct natural language description of source code, is extremely useful for code search and code comprehension. It has played an important role in software maintenance and evolution. Previous approa…
View article
Sorting and Transforming Program Repair Ingredients via Deep Learning Code Similarities Open
In the field of automated program repair, the redundancy assumption claims large programs contain the seeds of their own repair. However, most redundancy-based program repair techniques do not reason about the repair ingredients---the code…
View article
DeepBinDiff: Learning Program-Wide Code Representations for Binary Diffing Open
Binary diffing analysis quantitatively measures the differences between two given binaries and produces fine-grained basic block level matching.It has been widely used to enable different kinds of critical security analysis.However, all ex…
View article
Deep learning similarities from different representations of source code Open
Assessing the similarity between code components plays a pivotal role in a number of Software Engineering (SE) tasks, such as clone detection, impact analysis, refactoring, etc. Code similarity is generally measured by relying on manually …
View article
Analyzing APIs Documentation and Code to Detect Directive Defects Open
Application Programming Interface (API) documents represent one of the most important references for API users. However, it is frequently reported that the documentation is inconsistent with the source code and deviates from the API itself…
View article
Classifying Code Comments in Java Open-Source Software Systems Open
Code comments are a key software component containing information about the underlying implementation. Several studies have shown that code comments enhance the readability of the code. Nevertheless, not all the comments have the same goal…
View article
Neural Code Comprehension: A Learnable Representation of Code Semantics Open
With the recent success of embeddings in natural language processing, research has been conducted into applying similar methods to code analysis. Most works attempt to process the code directly or use a syntactic tree representation, treat…
View article
Fostering Program Comprehension in Novice Programmers - Learning Activities and Learning Trajectories Open
\n Contains fulltext :\n 225957.pdf (Publisher’s version ) (Closed access)\n
View article
Evaluating representation learning of code changes for predicting patch correctness in program repair Open
peer reviewed
View article
Where Does It Go? Open
System software commonly uses indirect calls to realize dynamic program behaviors. However, indirect-calls also bring challenges to constructing a precise control-flow graph that is a standard pre-requisite for many static program-analysis…
View article
The Scent of a Smell: An Extensive Comparison Between Textual and Structural Smells Open
Code smells are symptoms of poor design or implementation choices that have a negative effect on several aspects of software maintenance and evolution, such as program comprehension or change- and fault-proneness. This is why researchers h…
View article
Brain and autonomic nervous system activity measurement in software engineering: A systematic literature review Open
In the past decade, brain and autonomic nervous system activity measurement received increasing attention in the study of software engineering (SE). This paper presents a systematic literature review (SLR) to survey the existing NeuroSE li…
View article
Software landscape and application visualization for system comprehension with ExplorViz Open
Context: The number of software applications deployed in organizations is constantly increasing. Those applications – often several hundreds – form large software landscapes. Objective: The comprehension of such landscapes and their applic…
View article
Variability Bugs in Highly Configurable Systems Open
Variability-sensitive verification pursues effective analysis of the exponentially many variants of a program family. Several variability-aware techniques have been proposed, but researchers still lack examples of concrete bugs induced by …
View article
Automated Classification of Overfitting Patches With Statically Extracted Code Features Open
Automatic program repair (APR) aims to reduce the cost of manually fixing\nsoftware defects. However, APR suffers from generating a multitude of\noverfitting patches, those patches that fail to correctly repair the defect\nbeyond making th…
View article
A Survey of Automatic Generation of Source Code Comments: Algorithms and Techniques Open
As an integral part of source code files, code comments help improve program\nreadability and comprehension. However, developers sometimes do not comment on\ntheir program code adequately due to the incurred extra efforts, lack of\nrelevan…
View article
iTrace Open
The paper presents iTrace, an eye tracking infrastructure, that enables eye tracking in development environments such as Visual Studio and Eclipse. Software developers work with software that is comprised of numerous source code files. Thi…
View article
An empirical investigation on the readability of manual and generated test cases Open
Software testing is one of the most crucial tasks in the typical development process. Developers are usually required to write unit test cases for the code they implement. Since this is a time-consuming task, in last years many approaches …
View article
EditSum: A Retrieve-and-Edit Framework for Source Code Summarization Open
The accepted manuscript is available at arXiv, arXiv:2308.13775v2 [cs.SE] (https://doi.org/10.48550/arXiv.2308.13775). Comments: Accepted by the 36th IEEE/ACM International Conference on Automated Software Engineering (ASE 2021).
View article
Machine learning for finding bugs: An initial report Open
Static program analysis is a technique to analyse code without executing it, and can be used to find bugs in source code. Many open source and commercial tools have been developed in this space over the past 20 years. Scalability and preci…
View article
Near Real-Time Comprehension Classification with Artificial Neural Networks: Decoding e-Learner Non-Verbal Behavior Open
Comprehension is an important cognitive state for learning. Human tutors recognise comprehension and non-comprehension states by interpreting learner non-verbal behaviour (NVB). Experienced tutors adapt pedagogy, materials and instruction …
View article
The Role of Method Chains and Comments in Software Readability and Comprehension—An Experiment Open
Software readability and comprehension are important factors in software maintenance. There is a large body of research on software measurement, but the actual factors that make software easier to read or easier to comprehend are not well …
View article
Machine Learning-Based Analysis of Program Binaries: A Comprehensive Study Open
Binary code analysis is crucial in various software engineering tasks, such as malware detection, code refactoring, and plagiarism detection. With the rapid growth of software complexity and the increasing number of heterogeneous computing…
View article
Simultaneous measurement of program comprehension with fMRI and eye tracking Open
Background Researchers have recently started to validate decades-old program-comprehension models using functional magnetic resonance imaging (fMRI). While fMRI helps us to understand neural correlates of cognitive processes during program…
View article
Evaluating Code Readability and Legibility: An Examination of Human-centric Studies Open
Reading code is an essential activity in software maintenance and evolution.\nSeveral studies with human subjects have investigated how different factors,\nsuch as the employed programming constructs and naming conventions, can impact\ncod…
View article
Event Study Estimations Using Stata: The Estudy Command Open
In this article, we introduce the community-contributed command estudy and illustrate how it can be used to perform an event study customizing the statistical framework, from the estimates of abnormal returns to the tests for their statist…
View article
The Use of New Technologies for Improving Reading Comprehension Open
Since the introduction of writing systems, reading comprehension has always been a foundation for achievement in several areas within the educational system, as well as a prerequisite for successful participation in most areas of adult lif…
View article
CAST: Enhancing Code Summarization with Hierarchical Splitting and Reconstruction of Abstract Syntax Trees Open
Code summarization aims to generate concise natural language descriptions of source code, which can help improve program comprehension and maintenance. Recent studies show that syntactic and structural information extracted from abstract s…
View article
Evaluation Metrics for Machine Reading Comprehension: Prerequisite Skills and Readability Open
Knowing the quality of reading comprehension (RC) datasets is important for the development of natural-language understanding systems. In this study, two classes of metrics were adopted for evaluating RC datasets: prerequisite skills and r…
View article
MUSEUM: Debugging real-world multilingual programs using mutation analysis Open
Context: The programming language ecosystem has diversified over the last few decades. Non-trivial programs are likely to be written in more than a single language to take advantage of various control/data abstractions and legacy libraries…