Weekly Talk

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 …

Equivalent Query Rewriting in Graph Database without Hard-code Rules

Graph Database Management Systems (GDBMS), which utilize graph models for data storage and execute queries via graph traversals, have seen ubiquitous usage in real-world scenarios such as recommendation systems, knowledge graphs, and social networks. …

Mozi: Discovering DBMS Bugs via Configuration-Based Equivalent Transformation

Testing database management systems (DBMSs) is a complex task. The vagueness and intricacy of the SQL specification make it difficult to model the semantics of queries, making it challenging to test the correctness and performance of DBMSs. …

Testing Change Data Capture Tools via SQLancer-CDC

Change Data Capture (CDC) tools play a pivotal role in tracking and managing alterations to databases. Most of them become crucial components in the realm of data management,providing a systematic approach to identify and capture changes made to …

GrayC: Greybox Fuzzing of Compilers and Analysers for C

Fuzzing of compilers and code analysers has led to a large number of bugs being found and fixed in widely-used frameworks such as LLVM, GCC and Frama-C. Most such fuzzing techniques have taken a blackbox approach, with compilers and code analysers …