TINTIN: a Tool for Incremental INTegrity checking

Duration of the project:
December, 2021 –
November, 2023
Project Manager
inLab FIB Team:
Areas of expertise involved in the project
TINTIN: a Tool for Incremental INTegrity checking


The project consists of the development of TINTIN, a tool to support SQL assertions in relational databases.

SQL assertions are the standard way of defining business constraints, i.e. constraints that our system data must satisfy. Some business restrictions, such as primary keys or foreign keys, already have native support in current Database Management Systems (DBMS), but no DBMS is able to check more generic restrictions that require, precisely, the use of assertions. This implies that, today, to implement these validations, software developers must dedicate hours and efforts to the manual implementation of these checks, which entails an extra cost in the project, not to mention that it puts its quality at risk insofar as this activity, being manual, is very prone to errors.

With this project it is planned to build a proof of concept that would automatically support the assertions. The users of this tool will be software engineers who, thanks to the automatic ability to check business restrictions, will be able to delegate the programming of data validation rules to this tool, which will imply cost savings and increased quality in the development of their software. The main idea is that users enter their business rules they want to be checked in TINTIN, in SQL assertion format, and that TINTIN generates, from these, and without the need for user intervention, a series of triggers and procedures at the database level that checks them automatically.

The development of the project is based on a research prototype, which will be extended in order to facilitate its integration into databases, support environments with concurrent transactions, and increase its operational capacity (both in terms of language expressiveness, and in terms of database technologies)

Research project PDC2021-121363-I00 financed by MCIN/AEI /10.13039/501100011033 anb by the European Union Next GenerationEU/ PRTR