CS6218: Principles of Prog. Languages & Software Engineering (2022)

Ensuring the Correctness and Reliability of Data-Centric Systems

This module will focus on the latest important research in ensuring the correctness, reliability, security, and performance of data-centric systems. It will approach this topic through a software engineering and programming languages lens, providing a broad perspective by considering systems reaching from traditional relational database systems to applications such as machine learning as well as techniques reaching from automated software testing to human-centric approaches. The module’s website is still under construction and content (including the grading scheme) might still change.

Basic Information

  • Instructor: Manuel Rigger

  • Lectures: Tue 16:00-18:00

  • Location: SR_LT19

  • Contact: rigger@nus.edu.sg

Grading Scheme

  • 40% project

  • 40% presentation(s)

  • 20% attendance and participation

Schedule

Also see the Academic Calendar AY2022/2023.

  • week 01 (09/08/22): Happy National Day! 🇸🇬 🏄

  • week 02 (16/08/22): Class introduction & logistics [slides]

  • week 03 (23/08/22): Testing basics [slides]

  • week 04 (30/08/22): SQLancer [slides]

  • week 05 (06/09/22): Test oracles I: differential testing 👩‍🎓

  • week 06 (13/09/22): Test oracles II: metamorphic testing 👩‍🎓

  • week ?? (20/09/22): Recess 🏄

  • week 07 (27/09/22): Test case generation & fuzzing I 👩‍🎓

  • week 08 (04/10/22): Analysis & Debugging 👩‍🎓

  • week 09 (11/10/22): Synthesis & optimization 👩‍🎓

  • week 10 (18/10/22): No class

  • week 11 (25/10/22): Guest lecture by Prof. Pinjia He 👨‍🏫

  • week 12 (01/11/22): Guest lecture by Prof. Chee Yong Chan 👨‍🏫

  • week 13 (08/11/22): Guest presentations by Jinsheng Ba & RisingWave Labs 👨‍🏫

The papers to be presented starting in weeks 9 to 11 will depend on the module’s attendees’ interests. We will use HotCRP for paper bidding. See Readings for the list of papers.

Legend:

  • 🏄: no lecture

  • 👩‍🎓: student presentations and discussions

  • 👨‍🏫: guest lecture

Presenters

Date

Presenter

Paper

06/09/22

Tan Yu Wei

Data-Oriented Differential Testing of Object-Relational Mapping Systems

06/09/22

Nishita Dutta

APOLLO: automatic detection and diagnosis of performance regressions in database systems

13/09/22

Wang Jianing

Metamorphic testing of Datalog engines

13/09/22

Jiang Yuancheng

Automatic Detection of Performance Bugs in Database Systems using Equivalent Queries

27/09/22

Zhang Anxing

SQUIRREL: Testing Database Management Systems with Language Validity and Coverage Feedback

27/09/22

Zhong Suyang

BigFuzz: Efficient Fuzz Testing for Data Analytics Using Framework Abstraction

04/10/22

Kareem Shehata

SQLCheck: Automated Detection and Diagnosis of SQL Anti-Patterns

04/10/22

Rajdeep Singh Hundal

Debugging inputs

11/10/22

Yang Ziyi

Synthesizing Analytical SQL Queries from Computation Demonstration

11/10/22

Ho Han Kit Ivan

AIDA - Abstraction for Advanced In-Database Analytics

Further Information