Weekly Talk

Detecting Logic Bugs in Database Engines via Equivalent Expression Transformation

Database management systems (DBMSs) are crucial for storing and fetching data. To improve the reliability of such systems, approaches have been proposed to detect logic bugs that cause DBMSs to process data incorrectly. These approaches manipulate …

Inconsistencies in TeX-produced Documents

TeX is a widely-used typesetting system adopted by most publishers and professional societies due to its versatility and formatting capabilities. While the TeX is responsible for generating a significant amount of documents, irregularities in the TeX …

Intelligent Code Analysis and Program Repair in the Era of LLMs

Code analysis and automatic program repair has been studied for a long time since high-level programming languages such as C language were invented in the 1970s. Traditional rule-based code analysis techniques and template-based automatic program …

Detecting and Verifying Unexpected Behaviors in Web Applications using Program Analysis

In this work, we focus on the automatic detection and verification of unexpected behaviors on the Web. The ultimate goal is to produce an end-to-end automated tool for both detection and verification. We split it into two parts and achieve them stage …

CS3213 Lecture - Software Evolution

A lecture for CS3213 Foundations of Software Engineering

Finding Logic Bugs in Spatial Database Engines via Affine Equivalent Inputs

Spatial Database Management Systems (SDBMSs) aim to store, manipulate, and retrieve spatial data spatial data. SDBMSs provide spatial data types, spatial indexing, and spatial join methods, which exist as the spatial extensions or spatial build-in …

Learning-based Widget Matching for Migrating GUI Test Cases

GUI test case migration is to migrate GUI test cases from a source app to a target app. The key of test case migration is widget match- ing. Recently, researchers have proposed various approaches by formulating widget matching as a matching task. …

Testing Graph Database via Graph-Aware Metamorphic Relations

Graph database systems (GDBs) have supported many important real-world applications such as social networks, logistics, and path planning. Meanwhile, logic bugs are also prevalent in GDBs, leading to incorrect results and severe consequences. …

Introduction to code commit process

In collaborative software development, different developers work independently for respective tasks, which increases the development productivity. However, this process sometimes exhibits inefficiencies. Each time a programmer submits code changes, …

Golly! Granular Bug Finding via Polyhedral Analysis of GPU Kernels

In this era of multicore programming, industry engineers and scientists alike have turned to parallel algorithms to improve algorithmic performance at scale, resulting in a demand for massively parallel processors that manufacturers have been only …