English
Related papers

Related papers: NullAway: Practical Type-Based Null Safety for Jav…

200 papers

The null-type is a major source of faults in Java programs, and its overuse has a severe impact on software maintenance. Unfortunately traditional mutation testing operators do not cover null-type faults by default, hence cannot be used as…

Software Engineering · Computer Science 2020-04-10 Ali Parsai , Serge Demeyer

Modern Java projects increasingly adopt static analysis tools that prevent null-pointer exceptions by treating nullness as a type property. However, integrating such tools into large, existing codebases remains a significant challenge.…

Software Engineering · Computer Science 2026-02-09 Nima Karimipour , Pascal Joos , Michael Pradel , Martin Kellogg , Manu Sridharan

JDBC remains a key technology for database access in Java applications. Since the database dictionary and the Java type system have distinct scopes, developers inevitably need to deal with bugs in SQL-to-Java type mappings. We propose an…

Databases · Computer Science 2026-05-05 Thomas James Kirz , Werner Dietl , Mattias Ulbrich , Stefanie Scherzinger

Null pointer exceptions (NPE) are the number one cause of uncaught crashing exceptions in production. In this paper, we aim at exploring the search space of possible patches for null pointer exceptions with metaprogramming. Our idea is to…

Software Engineering · Computer Science 2021-11-12 Thomas Durieux , Benoit Cornu , Lionel Seinturier , Martin Monperrus

Null pointer exceptions, also known as null dereferences are the number one exceptions in the field. In this paper, we propose 9 alternative execution semantics when a null pointer exception is about to happen. We implement those…

Software Engineering · Computer Science 2015-12-24 Benoit Cornu , Thomas Durieux , Lionel Seinturier , Martin Monperrus

Reverse Engineering(RE) has been a fundamental task in software engineering. However, most of the traditional Java reverse engineering tools are strictly rule defined, thus are not fault-tolerant, which pose serious problem when noise and…

Software Engineering · Computer Science 2019-10-16 Zhiming Li , Qing Wu , Kun Qian

Software vulnerabilities pose significant risks to computer systems, impacting our daily lives, productivity, and even our health. Identifying and addressing security vulnerabilities in a timely manner is crucial to prevent hacking and data…

Cryptography and Security · Computer Science 2023-08-01 Jin Wang , Zishan Huang , Hui Xiao , Yinhao Xiao

Test resources are usually limited and therefore it is often not possible to completely test an application before a release. Therefore, testers need to focus their activities on the relevant code regions. In this paper, we introduce an…

Software Engineering · Computer Science 2018-05-04 Rainer Niedermayr , Tobias Röhm , Stefan Wagner

Runtime introspection of dependencies, i.e., the ability to observe which dependencies are currently used during program execution, is fundamental for Software Supply Chain security. Yet, Java has no support for it. We solve this problem…

Software Engineering · Computer Science 2026-04-15 Serena Cofano , Daniel Williams , Aman Sharma , Martin Monperrus

Unique challenges arise when testing mobile applications due to their prevailing event-driven nature and complex contextual features (e.g. sensors, notifications). Current automated input generation approaches for Android apps are typically…

Software Engineering · Computer Science 2018-01-22 Kevin Moran , Mario Linares-Vasquez , Carlos Bernal-Cardenas , Christopher Vendome , Denys Poshyvanyk

Flaky tests are tests that can non-deterministically pass or fail, even in the absence of code changes.Despite being a source of false alarms, flaky tests often remain in test suites once they are detected, as they also may be relied upon…

Software Engineering · Computer Science 2024-01-30 Abdulrahman Alshammari , Paul Ammann , Michael Hilton , Jonathan Bell

Background. Test resources are usually limited and therefore it is often not possible to completely test an application before a release. To cope with the problem of scarce resources, development teams can apply defect prediction to…

Software Engineering · Computer Science 2019-04-17 Rainer Niedermayr , Tobias Röhm , Stefan Wagner

Static analyzers can reason about the properties and behaviors of programs and detect various issues without executing them. Hence, they should extract the necessary information to understand the analyzed program well. Annotation has been a…

Software Engineering · Computer Science 2024-02-23 Huaien Zhang , Yu Pei , Shuyun Liang , Shin Hwei Tan

Pluggable type systems allow programmers to extend the type system of a programming language to enforce semantic properties defined by the programmer. Pluggable type systems are difficult to deploy in legacy codebases because they require…

Software Engineering · Computer Science 2025-10-06 Kazi Amanul Islam Siddiqui , Martin Kellogg

Software supply chain attacks have become a significant threat as software development increasingly relies on contributions from multiple, often unverified sources. The code from unverified sources does not pose a threat until it is…

Cryptography and Security · Computer Science 2024-07-02 Aman Sharma , Martin Wittlinger , Benoit Baudry , Martin Monperrus

In recent years the PC has been replaced by mobile devices for many security sensitive operations, both from a privacy and a financial standpoint. While security mechanisms are deployed at various levels, these are frequently put under…

Cryptography and Security · Computer Science 2021-02-26 Mark Vella , Christian Colombo

With the continuous rise in the popularity of Android mobile devices, automated testing of apps has become more important than ever. Android apps are event-driven programs. Unfortunately, generating all possible types of events by…

Many important security properties can be formulated in terms of flows of tainted data, and improved taint analysis tools to prevent such flows are of critical need. Most existing taint analyses use whole-program static analysis, leading to…

Programming Languages · Computer Science 2025-05-02 Nima Karimipour , Kanak Das , Manu Sridharan , Behnaz Hassanshahi

Sun and the CERT recommend for secure Java development to not allow partially initialized objects to be accessed. The CERT considers the severity of the risks taken by not following this recommendation as high. The solution currently used…

Programming Languages · Computer Science 2010-11-22 Laurent Hubert , Thomas Jensen , Vincent Monfort , David Pichardie

Fault tolerance is one of the major design goals for HPC. The emergence of non-volatile memories (NVM) provides a solution to build fault tolerant HPC. Data in NVM-based main memory are not lost when the system crashes because of the…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-05-17 Shuo Yang , Kai Wu , Yifan Qiao , Dong Li , Jidong Zhai
‹ Prev 1 2 3 10 Next ›