Jonathan Bell
YOU?
Author Swipe
View article: Dynamic Taint Tracking for Modern Java Virtual Machines
Dynamic Taint Tracking for Modern Java Virtual Machines Open
Dynamic taint tracking is a program analysis that traces the flow of information through a program. In the Java virtual machine (JVM), there are two prominent approaches for dynamic taint tracking: "shadowing" and "mirroring". Shadowing is…
View article: 'Always Nice and Confident, Sometimes Wrong': Developer's Experiences Engaging Generative AI Chatbots Versus Human-Powered Q&A Platforms
'Always Nice and Confident, Sometimes Wrong': Developer's Experiences Engaging Generative AI Chatbots Versus Human-Powered Q&A Platforms Open
Software engineers have historically relied on human-powered Q&A platforms like Stack Overflow (SO) as coding aids. With the rise of generative AI, developers have started to adopt AI chatbots, such as ChatGPT, in their software developmen…
View article: The Effects of Computational Resources on Flaky Tests (Artifact)
The Effects of Computational Resources on Flaky Tests (Artifact) Open
This artifact contains resources for reproducing and extending the work "The Effects of Computational Resources on Flaky Tests" Contents: Analysis and Processed Test Results.tgz: An archive that contains information about the projects anal…
View article: LLMorpheus: Mutation Testing using Large Language Models
LLMorpheus: Mutation Testing using Large Language Models Open
In mutation testing, the quality of a test suite is evaluated by introducing faults into a program and determining whether the program's tests detect them. Most existing approaches for mutation testing involve the application of a fixed se…
View article: Crossover in Parametric Fuzzing
Crossover in Parametric Fuzzing Open
Parametric fuzzing combines evolutionary and generator-based fuzzing to create structured test inputs that exercise unique execution behaviors. Parametric fuzzers internally represent inputs as bit strings referred to as "parameter sequenc…
View article: 230,439 Test Failures Later: An Empirical Evaluation of Flaky Failure Classifiers
230,439 Test Failures Later: An Empirical Evaluation of Flaky Failure Classifiers Open
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 …
View article: Flaky and True Failures Logs to Accompany "230,439 Test Failures Later: An Empirical Evaluation of Flaky Failure Classifiers"
Flaky and True Failures Logs to Accompany "230,439 Test Failures Later: An Empirical Evaluation of Flaky Failure Classifiers" Open
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…
View article: Flaky and True Failures Logs to Accompany "230,439 Test Failures Later: An Empirical Evaluation of Flaky Failure Classifiers"
Flaky and True Failures Logs to Accompany "230,439 Test Failures Later: An Empirical Evaluation of Flaky Failure Classifiers" Open
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…
View article: Artifact to Accompany "33 Years of Mathematicians and Software Engineers: A Case Study of Proof Assistant Ecosystems"
Artifact to Accompany "33 Years of Mathematicians and Software Engineers: A Case Study of Proof Assistant Ecosystems" Open
As technical computing software, such as MATLAB and SciPy, has gained popularity, ecosystems of interdependent software solutions and communities have formed around these technologies.The development and maintenance of these technical comp…
View article: npm-follower: A Complete Dataset Tracking the NPM Ecosystem
npm-follower: A Complete Dataset Tracking the NPM Ecosystem Open
Software developers typically rely upon a large network of dependencies to build their applications. For instance, the NPM package repository contains over 3 million packages and serves tens of billions of downloads weekly. Understanding t…
View article: The Effects of Computational Resources on Flaky Tests
The Effects of Computational Resources on Flaky Tests Open
Flaky tests are tests that nondeterministically pass and fail in unchanged code. These tests can be detrimental to developers' productivity. Particularly when tests run in continuous integration environments, the tests may be competing for…
View article: The Effects of Computational Resources on Flaky Tests (Artifact)
The Effects of Computational Resources on Flaky Tests (Artifact) Open
This artifact contains resources for reproducing and extending the work "The Effects of Computational Resources on Flaky Tests" Contents: Analysis and Processed Test Results.tgz: An archive that contains information about the projects anal…
View article: "Always Nice and Confident, Sometimes Wrong": Developer's Experiences Engaging Large Language Models (LLMs) Versus Human-Powered Q&A Platforms for Coding Support
"Always Nice and Confident, Sometimes Wrong": Developer's Experiences Engaging Large Language Models (LLMs) Versus Human-Powered Q&A Platforms for Coding Support Open
Software engineers have historically relied on human-powered Q&A platforms like Stack Overflow (SO) as coding aids. With the rise of generative AI, developers have started to adopt AI chatbots, such as ChatGPT, in their software developmen…
View article: npm-follower: A Complete Dataset Tracking the NPM Ecosystem
npm-follower: A Complete Dataset Tracking the NPM Ecosystem Open
Software developers typically rely upon a large network of dependencies to build their applications. For instance, the NPM package repository contains over 3 million packages and serves tens of billions of downloads weekly. Understanding t…
View article: Flexible and Optimal Dependency Management via Max-SMT
Flexible and Optimal Dependency Management via Max-SMT Open
Package managers such as NPM have become essential for software development. The NPM repository hosts over 2 million packages and serves over 43 billion downloads every week. Unfortunately, the NPM dependency solver has several shortcoming…
View article: A Large Scale Analysis of Semantic Versioning in NPM
A Large Scale Analysis of Semantic Versioning in NPM Open
The NPM package repository contains over two million packages and serves tens of billions of downloads per-week. Nearly every single JavaScript application uses the NPM package manager to install packages from the NPM repository. NPM relie…
View article: Automatically Reproducing Timing-Dependent Flaky-Test Failures
Automatically Reproducing Timing-Dependent Flaky-Test Failures Open
This artifact contains the source code for FlakeRake, a tool for automatically reproducing timing-dependent flaky-test failures. It also includes raw and processed results produced in the evaluation of FlakeRake Contents: Timing-related AP…
View article: Artifact For A Large Scale Analysis of Semantic Versioning in NPM
Artifact For A Large Scale Analysis of Semantic Versioning in NPM Open
This is the artifact for: A Large Scale Analysis of Semantic Versioning in NPM. The artifact contains: A full scrape of all metadata from NPM (package / version information, dependencies, etc.) as of October 31, 2022. A copy of our code, w…
View article: Artifact For A Large Scale Analysis of Semantic Versioning in NPM
Artifact For A Large Scale Analysis of Semantic Versioning in NPM Open
This is the artifact for: A Large Scale Analysis of Semantic Versioning in NPM. The artifact contains: A full scrape of all metadata from NPM (package / version information, dependencies, etc.) as of October 31, 2022. A copy of our code, w…
View article: A retrospective study of one decade of artifact evaluations
A retrospective study of one decade of artifact evaluations Open
Most software engineering research involves the development of a prototype, a proof of concept, or a measurement apparatus. Together with the data collected in the research process, they are collectively referred to as research artifacts a…
View article: Reproduction Package (Docker container) for the ESEC/FSE 2022 Article `A Retrospective Study of one Decade of Artifact Evaluations`
Reproduction Package (Docker container) for the ESEC/FSE 2022 Article `A Retrospective Study of one Decade of Artifact Evaluations` Open
This is the artifact accompanying our study of artifact evaluations at SE/PL conferences and their effects, accepted for presentation at the ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software En…
View article: Reproduction Package (Docker container) for the ESEC/FSE 2022 Article `A Retrospective Study of one Decade of Artifact Evaluations`
Reproduction Package (Docker container) for the ESEC/FSE 2022 Article `A Retrospective Study of one Decade of Artifact Evaluations` Open
This is the artifact accompanying our study of artifact evaluations at SE/PL conferences and their effects, accepted for presentation at the ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software En…
View article: Reproduction Package (Docker container) for the FSE 2022 Article `A Retrospective Study of one Decade of Artifact Evaluations`
Reproduction Package (Docker container) for the FSE 2022 Article `A Retrospective Study of one Decade of Artifact Evaluations` Open
This is the artifact accompanying our study of artifact evaluations at SE/PL conferences and their effects, accepted for presentation at the ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software En…
View article: On the use of mutation analysis for evaluating student test suite quality
On the use of mutation analysis for evaluating student test suite quality Open
Contains data accompanying the paper "On the Use of Mutation Analysis For Evaluating Student Test Suite Quality."
View article: CONFETTI
CONFETTI Open
Fuzz testing (fuzzing) allows developers to detect bugs and vulnerabilities in code by automatically generating defect-revealing inputs. Most fuzzers operate by generating inputs for applications and mutating the bytes of those inputs, gui…
View article: Deep learning segmentation of glomeruli on kidney donor frozen sections
Deep learning segmentation of glomeruli on kidney donor frozen sections Open
Purpose: Recent advances in computational image analysis offer the opportunity to develop automatic quantification of histologic parameters as aid tools for practicing pathologists. We aim to develop deep learning (DL) models to quantify n…
View article: Deep Learning Segmentation of Glomeruli on Kidney Donor Frozen Sections
Deep Learning Segmentation of Glomeruli on Kidney Donor Frozen Sections Open
Purpose Recent advances in computational image analysis offer the opportunity to develop automatic quantification of histologic parameters as aid tools for practicing pathologists. This work aims to develop deep learning (DL) models to qua…