106
Systematic Design and Analysis of Customized Data Management for Real-Time Database Systems Simin Cai Mälardalen University Doctoral Dissertation 295

Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Simin

Ca

i SYSTEMA

TIC D

ESIGN

AN

D A

NA

LYSIS OF C

USTO

MIZED

DA

TA M

AN

AG

EMEN

T FOR R

EAL-TIM

E DA

TABA

SE SYSTEMS

2019

ISBN xxx-xx-xxxx-xxx-xISSN xxxx-xxxx

Address: P.O. Box 883, SE-721 23 Västerås. SwedenAddress: P.O. Box 325, SE-631 05 Eskilstuna. SwedenE-mail: [email protected] Web: www.mdh.se

Systematic Design and Analysis of Customized Data Management for Real-Time Database SystemsSimin Cai

Mälardalen University Doctoral Dissertation 295

Page 2: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Mälardalen University Press DissertationsNo. 295

SYSTEMATIC DESIGN AND ANALYSIS OF CUSTOMIZEDDATA MANAGEMENT FOR REAL-TIME DATABASE SYSTEMS

Simin Cai

2019

School of Innovation, Design and Engineering

Mälardalen University Press DissertationsNo. 295

SYSTEMATIC DESIGN AND ANALYSIS OF CUSTOMIZEDDATA MANAGEMENT FOR REAL-TIME DATABASE SYSTEMS

Simin Cai

2019

School of Innovation, Design and Engineering

1

Page 3: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Copyright © Simin Cai, 2019ISBN 978-91-7485-441-1ISSN 1651-4238Printed by E-Print AB, Stockholm, Sweden

Copyright © Simin Cai, 2019ISBN 978-91-7485-441-1ISSN 1651-4238Printed by E-Print AB, Stockholm, Sweden

2

Page 4: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Mälardalen University Press DissertationsNo. 295

SYSTEMATIC DESIGN AND ANALYSIS OF CUSTOMIZEDDATA MANAGEMENT FOR REAL-TIME DATABASE SYSTEMS

Simin Cai

Akademisk avhandling

som för avläggande av teknologie doktorsexamen i datavetenskap vid Akademinför innovation, design och teknik kommer att offentligen försvaras måndagen

den 4 november 2019, 13.30 i Gamma, Mälardalens högskola, Västerås.

Fakultetsopponent: Professor Marieke Huisman, University of Twente

Akademin för innovation, design och teknik

Mälardalen University Press DissertationsNo. 295

SYSTEMATIC DESIGN AND ANALYSIS OF CUSTOMIZEDDATA MANAGEMENT FOR REAL-TIME DATABASE SYSTEMS

Simin Cai

Akademisk avhandling

som för avläggande av teknologie doktorsexamen i datavetenskap vid Akademinför innovation, design och teknik kommer att offentligen försvaras måndagen

den 4 november 2019, 13.30 i Gamma, Mälardalens högskola, Västerås.

Fakultetsopponent: Professor Marieke Huisman, University of Twente

Akademin för innovation, design och teknik

3

Page 5: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

AbstractModern real-time data-intensive systems generate large amounts of data that are processed using complex data-related computations such as data aggregation. In order to maintain logical data consistency and temporal correctness of the computations, one solution is to model the latter as transactions and manage them using a Real-Time Database Management System (RTDBMS). Ideally, depending on the particular system, the transactions are customized with the desired logical and temporal correctness properties, which should be enforced by the customized RTDBMS via appropriate transaction management mechanisms. However, developing such a data management solution with high assurance is not easy, partly due to inadequate support for systematic specification and analysis during the design. Firstly, designers do not have means to identify the characteristics of the computations, especially data aggregation, and to reason about their implications. Design flaws might not be discovered early enough, and thus they may propagate to the implementation. Secondly, meeting more properties simultaneously might not be possible, so trading-off the less critical ones for the critical one, for instance, temporal correctness, is sometimes required. Nevertheless, trade-off analysis of conflicting properties, such as transaction atomicity, isolation and temporal correctness, is mainly performed ad-hoc, which increases the risk of unpredictable behavior.

In this thesis, we address the above problems by showing how to systematically design and provide assurance of transaction-based data management with data aggregation support, customized for real-time systems. We propose a design process as our methodology for the systematic design and analysis of the trade-offs between desired properties, which is facilitated by a series of modeling and analysis techniques. Our design process consists of three major steps as follows: (i) Specifying the data-related computations, as well as the logical data consistency and temporal correctness properties, from system requirements, (ii) Selecting the appropriate transaction models to model the computations, and deciding the corresponding transaction management mechanisms that can guarantee the properties, via formal analysis, and, (iii) Generating the customized RTDBMS with the proved transaction management mechanisms, via configuration or implementation. In order to support the first step of our process, we propose a taxonomy of data aggregation processes for identifying their common and variable characteristics, based on which their inter-dependencies can be captured, and the consequent design implications can be reasoned about. Tool support is provided to check the consistency of the data aggregation design specifications. To specify transaction atomicity, isolation and temporal correctness, as well as the transaction management mechanisms, we also propose a Unified Modeling Language (UML) profile with explicit support for these elements. The second step of our process relies on the systematic analysis of trade-offs between transaction atomicity, isolation and temporal correctness. To achieve this, we propose two formal frameworks for modeling transactions with abort recovery, concurrency control, and scheduling. The first framework UPPCART utilizes timed automata as the underlying formalism, based on which the desired properties can be verified by model checking. The second framework UPPCART-SMC models the system as stochastic timed automata, which allows for probabilistic analysis of the properties for large complex RTDBMS using statistical model checking. The encoding of high-level UTRAN specifications into corresponding formal models is supported by tool automation, which we also propose in this thesis. The applicability and usefulness of our proposed techniques are validated via several industrial use cases focusing on real-time data management.

ISBN 978-91-7485-441-1ISSN 1651-4238

AbstractModern real-time data-intensive systems generate large amounts of data that are processed using complex data-related computations such as data aggregation. In order to maintain logical data consistency and temporal correctness of the computations, one solution is to model the latter as transactions and manage them using a Real-Time Database Management System (RTDBMS). Ideally, depending on the particular system, the transactions are customized with the desired logical and temporal correctness properties, which should be enforced by the customized RTDBMS via appropriate transaction management mechanisms. However, developing such a data management solution with high assurance is not easy, partly due to inadequate support for systematic specification and analysis during the design. Firstly, designers do not have means to identify the characteristics of the computations, especially data aggregation, and to reason about their implications. Design flaws might not be discovered early enough, and thus they may propagate to the implementation. Secondly, meeting more properties simultaneously might not be possible, so trading-off the less critical ones for the critical one, for instance, temporal correctness, is sometimes required. Nevertheless, trade-off analysis of conflicting properties, such as transaction atomicity, isolation and temporal correctness, is mainly performed ad-hoc, which increases the risk of unpredictable behavior.

In this thesis, we address the above problems by showing how to systematically design and provide assurance of transaction-based data management with data aggregation support, customized for real-time systems. We propose a design process as our methodology for the systematic design and analysis of the trade-offs between desired properties, which is facilitated by a series of modeling and analysis techniques. Our design process consists of three major steps as follows: (i) Specifying the data-related computations, as well as the logical data consistency and temporal correctness properties, from system requirements, (ii) Selecting the appropriate transaction models to model the computations, and deciding the corresponding transaction management mechanisms that can guarantee the properties, via formal analysis, and, (iii) Generating the customized RTDBMS with the proved transaction management mechanisms, via configuration or implementation. In order to support the first step of our process, we propose a taxonomy of data aggregation processes for identifying their common and variable characteristics, based on which their inter-dependencies can be captured, and the consequent design implications can be reasoned about. Tool support is provided to check the consistency of the data aggregation design specifications. To specify transaction atomicity, isolation and temporal correctness, as well as the transaction management mechanisms, we also propose a Unified Modeling Language (UML) profile with explicit support for these elements. The second step of our process relies on the systematic analysis of trade-offs between transaction atomicity, isolation and temporal correctness. To achieve this, we propose two formal frameworks for modeling transactions with abort recovery, concurrency control, and scheduling. The first framework UPPCART utilizes timed automata as the underlying formalism, based on which the desired properties can be verified by model checking. The second framework UPPCART-SMC models the system as stochastic timed automata, which allows for probabilistic analysis of the properties for large complex RTDBMS using statistical model checking. The encoding of high-level UTRAN specifications into corresponding formal models is supported by tool automation, which we also propose in this thesis. The applicability and usefulness of our proposed techniques are validated via several industrial use cases focusing on real-time data management.

ISBN 978-91-7485-441-1ISSN 1651-4238

4

Page 6: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Abstract

Modern real-time data-intensive systems generate large amounts of data thatare processed using complex data-related computations such as data aggrega-tion. In order to maintain logical data consistency and temporal correctnessof the computations, one solution is to model the latter as transactions andmanage them using a Real-Time Database Management System (RTDBMS).Ideally, depending on the particular system, the transactions are customizedwith the desired logical and temporal correctness properties, which should beenforced by the customized RTDBMS via appropriate transaction managementmechanisms. However, developing such a data management solution with highassurance is not easy, partly due to inadequate support for systematic specifi-cation and analysis during the design. Firstly, designers do not have meansto identify the characteristics of the computations, especially data aggregation,and to reason about their implications. Design flaws might not be discoveredearly enough, and thus they may propagate to the implementation. Secondly,meeting more properties simultaneously might not be possible, so trading-offthe less critical ones for the critical one, for instance, temporal correctness, issometimes required. Nevertheless, trade-off analysis of conflicting properties,such as transaction atomicity, isolation and temporal correctness, is mainlyperformed ad-hoc, which increases the risk of unpredictable behavior.

In this thesis, we address the above problems by showing how to system-atically design and provide assurance of transaction-based data managementwith data aggregation support, customized for real-time systems. We proposea design process as our methodology for the systematic design and analysisof the trade-offs between desired properties, which is facilitated by a series ofmodeling and analysis techniques. Our design process consists of three ma-jor steps as follows: (i) Specifying the data-related computations, as well asthe logical data consistency and temporal correctness properties, from systemrequirements, (ii) Selecting the appropriate transaction models to model the

i

Abstract

Modern real-time data-intensive systems generate large amounts of data thatare processed using complex data-related computations such as data aggrega-tion. In order to maintain logical data consistency and temporal correctnessof the computations, one solution is to model the latter as transactions andmanage them using a Real-Time Database Management System (RTDBMS).Ideally, depending on the particular system, the transactions are customizedwith the desired logical and temporal correctness properties, which should beenforced by the customized RTDBMS via appropriate transaction managementmechanisms. However, developing such a data management solution with highassurance is not easy, partly due to inadequate support for systematic specifi-cation and analysis during the design. Firstly, designers do not have meansto identify the characteristics of the computations, especially data aggregation,and to reason about their implications. Design flaws might not be discoveredearly enough, and thus they may propagate to the implementation. Secondly,meeting more properties simultaneously might not be possible, so trading-offthe less critical ones for the critical one, for instance, temporal correctness, issometimes required. Nevertheless, trade-off analysis of conflicting properties,such as transaction atomicity, isolation and temporal correctness, is mainlyperformed ad-hoc, which increases the risk of unpredictable behavior.

In this thesis, we address the above problems by showing how to system-atically design and provide assurance of transaction-based data managementwith data aggregation support, customized for real-time systems. We proposea design process as our methodology for the systematic design and analysisof the trade-offs between desired properties, which is facilitated by a series ofmodeling and analysis techniques. Our design process consists of three ma-jor steps as follows: (i) Specifying the data-related computations, as well asthe logical data consistency and temporal correctness properties, from systemrequirements, (ii) Selecting the appropriate transaction models to model the

i

5

Page 7: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

ii

computations, and deciding the corresponding transaction management mech-anisms that can guarantee the properties, via formal analysis, and, (iii) Generat-ing the customized RTDBMS with the proved transaction management mech-anisms, via configuration or implementation. In order to support the first stepof our process, we propose a taxonomy of data aggregation processes for iden-tifying their common and variable characteristics, based on which their inter-dependencies can be captured, and the consequent design implications can bereasoned about. Tool support is provided to check the consistency of the dataaggregation design specifications. To specify transaction atomicity, isolationand temporal correctness, as well as the transaction management mechanisms,we also propose a Unified Modeling Language (UML) profile with explicitsupport for these elements. The second step of our process relies on the system-atic analysis of trade-offs between transaction atomicity, isolation and temporalcorrectness. To achieve this, we propose two formal frameworks for modelingtransactions with abort recovery, concurrency control, and scheduling. Thefirst framework UPPCART utilizes timed automata as the underlying formal-ism, based on which the desired properties can be verified by model checking.The second framework UPPCART-SMC models the system as stochastic timedautomata, which allows for probabilistic analysis of the properties for largecomplex RTDBMS using statistical model checking. The encoding of high-level UTRAN specifications into corresponding formal models is supported bytool automation, which we also propose in this thesis. The applicability andusefulness of our proposed techniques are validated via several industrial usecases focusing on customized real-time data management.

ii

computations, and deciding the corresponding transaction management mech-anisms that can guarantee the properties, via formal analysis, and, (iii) Generat-ing the customized RTDBMS with the proved transaction management mech-anisms, via configuration or implementation. In order to support the first stepof our process, we propose a taxonomy of data aggregation processes for iden-tifying their common and variable characteristics, based on which their inter-dependencies can be captured, and the consequent design implications can bereasoned about. Tool support is provided to check the consistency of the dataaggregation design specifications. To specify transaction atomicity, isolationand temporal correctness, as well as the transaction management mechanisms,we also propose a Unified Modeling Language (UML) profile with explicitsupport for these elements. The second step of our process relies on the system-atic analysis of trade-offs between transaction atomicity, isolation and temporalcorrectness. To achieve this, we propose two formal frameworks for modelingtransactions with abort recovery, concurrency control, and scheduling. Thefirst framework UPPCART utilizes timed automata as the underlying formal-ism, based on which the desired properties can be verified by model checking.The second framework UPPCART-SMC models the system as stochastic timedautomata, which allows for probabilistic analysis of the properties for largecomplex RTDBMS using statistical model checking. The encoding of high-level UTRAN specifications into corresponding formal models is supported bytool automation, which we also propose in this thesis. The applicability andusefulness of our proposed techniques are validated via several industrial usecases focusing on customized real-time data management.

6

Page 8: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

致我的父亲母亲

To my parents

致我的父亲母亲

To my parents

7

Page 9: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

8

Page 10: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

吾生也有涯,而知也无涯。以有涯随无涯,何如?

–庄子·内篇·养生主

My life has an end.The universe of knowledge has no end.

How would it be,to pursue the endless knowledge with a limited life?

– Zhuangzi

吾生也有涯,而知也无涯。以有涯随无涯,何如?

–庄子·内篇·养生主

My life has an end.The universe of knowledge has no end.

How would it be,to pursue the endless knowledge with a limited life?

– Zhuangzi

9

Page 11: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

10

Page 12: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Acknowledgments

Many people have helped and accompanied me during this PhD study. First ofall, I would like to thank my supervisors, Associate Professor Cristina Sece-leanu, Associate Professor Barbara Gallina, Dr. Dag Nyström, for your guid-ance and support during the entire journey. Besides the supervision on myresearch, which you have dedicated tremendous effort to, your care and youroptimism play equally important roles in helping me to have come so far. I amalso extremely happy that we have established a close friendship and witnessedimportant moments in each other’s lives during these years.

I would like to express my deep gratitude to the faculty examiner ProfessorMarieke Huisman, and the thesis grading committee members: Associate Pro-fessor Enrico Bini, Professor Magnus Jonsson, and Associate Professor DragosTruscan. It is my honor to have you as the reviewers of this thesis.

My PhD study in MDH has been a great experience, thanks to the knowl-edgeable professors and lecturers, the helpful administrative staff, and the lovelyfellow PhD students. Friendships in MDH have not only brought me with joybut also courage, such that I could continue in the darker nights when facing aseemingly endless tunnel. I also would like to thank my friends and colleaguesin Mimer for the valuable support. Many thanks to my friends: Yemao, Xuem-ing, Wei, Tengjiao, Nico, Anders, and more. Specially, I would like to thankFredrik for your company, and for taking all my complaints during these years.Together, we have finished four theses.

Any acknowledgment notes without acknowledging my parents are incom-plete. All my life, they have prioritized me in everything.

The Knowledge Foundation of Sweden and the Swedish Research Councilare gratefully acknowledged for funding the work of this thesis.

Simin CaiVästerås, September, 2019

vii

Acknowledgments

Many people have helped and accompanied me during this PhD study. First ofall, I would like to thank my supervisors, Associate Professor Cristina Sece-leanu, Associate Professor Barbara Gallina, Dr. Dag Nyström, for your guid-ance and support during the entire journey. Besides the supervision on myresearch, which you have dedicated tremendous effort to, your care and youroptimism play equally important roles in helping me to have come so far. I amalso extremely happy that we have established a close friendship and witnessedimportant moments in each other’s lives during these years.

I would like to express my deep gratitude to the faculty examiner ProfessorMarieke Huisman, and the thesis grading committee members: Associate Pro-fessor Enrico Bini, Professor Magnus Jonsson, and Associate Professor DragosTruscan. It is my honor to have you as the reviewers of this thesis.

My PhD study in MDH has been a great experience, thanks to the knowl-edgeable professors and lecturers, the helpful administrative staff, and the lovelyfellow PhD students. Friendships in MDH have not only brought me with joybut also courage, such that I could continue in the darker nights when facing aseemingly endless tunnel. I also would like to thank my friends and colleaguesin Mimer for the valuable support. Many thanks to my friends: Yemao, Xuem-ing, Wei, Tengjiao, Nico, Anders, and more. Specially, I would like to thankFredrik for your company, and for taking all my complaints during these years.Together, we have finished four theses.

Any acknowledgment notes without acknowledging my parents are incom-plete. All my life, they have prioritized me in everything.

The Knowledge Foundation of Sweden and the Swedish Research Councilare gratefully acknowledged for funding the work of this thesis.

Simin CaiVästerås, September, 2019

vii

11

Page 13: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

12

Page 14: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

List of Publications

Papers Included in the Thesis1

Paper A Data Aggregation Processes: A Survey, A Taxonomy, and DesignGuidelines. Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu.Computing. 2018, Springer.

Paper B Tool-Supported Design of Data Aggregation Processes in CloudMonitoring Systems. Simin Cai, Barbara Gallina, Dag Nyström, Cristina Se-celeanu, and Alf Larsson. Journal of Ambient Intelligence and HumanizedComputing (JAIHC). Springer, 2018.

Paper C Towards the Verification of Temporal Data Consistency in Real-Time Data Management. Simin Cai, Barbara Gallina, Dag Nyström, and Cris-tina Seceleanu. Proceedings of the 2nd International Workshop on modeling,analysis and control of complex Cyber-Physical Systems (CPS-DATA). IEEE,2016.

Paper D A Formal Approach for Flexible Modeling and Analysis of Trans-action Timeliness and Isolation. Simin Cai, Barbara Gallina, Dag Nyström,and Cristina Seceleanu. Proceedings of the 24th International Conference onReal-Time Networks and Systems (RTNS). ACM, 2016.

Paper E Specification and Automated Verification of Atomic Concurrent Real-Time Transactions. Simin Cai, Barbara Gallina, Dag Nyström, and CristinaSeceleanu. Submitted to Software and Systems Modeling (SoSyM).

1The included papers have been reformatted to comply with the thesis layout

ix

List of Publications

Papers Included in the Thesis1

Paper A Data Aggregation Processes: A Survey, A Taxonomy, and DesignGuidelines. Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu.Computing. 2018, Springer.

Paper B Tool-Supported Design of Data Aggregation Processes in CloudMonitoring Systems. Simin Cai, Barbara Gallina, Dag Nyström, Cristina Se-celeanu, and Alf Larsson. Journal of Ambient Intelligence and HumanizedComputing (JAIHC). Springer, 2018.

Paper C Towards the Verification of Temporal Data Consistency in Real-Time Data Management. Simin Cai, Barbara Gallina, Dag Nyström, and Cris-tina Seceleanu. Proceedings of the 2nd International Workshop on modeling,analysis and control of complex Cyber-Physical Systems (CPS-DATA). IEEE,2016.

Paper D A Formal Approach for Flexible Modeling and Analysis of Trans-action Timeliness and Isolation. Simin Cai, Barbara Gallina, Dag Nyström,and Cristina Seceleanu. Proceedings of the 24th International Conference onReal-Time Networks and Systems (RTNS). ACM, 2016.

Paper E Specification and Automated Verification of Atomic Concurrent Real-Time Transactions. Simin Cai, Barbara Gallina, Dag Nyström, and CristinaSeceleanu. Submitted to Software and Systems Modeling (SoSyM).

1The included papers have been reformatted to comply with the thesis layout

ix

13

Page 15: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

x

A short version is published in Proceedings of the 23rd Pacific Rim Inter-national Symposium on Dependable Computing (PRDC). IEEE. 2018.

Paper F Statistical Model Checking for Real-Time Database ManagementSystems: a Case Study. Simin Cai, Barbara Gallina, Dag Nyström, and CristinaSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA). IEEE, 2019.

Papers Related to, but not Included in the Thesis

Trading-off Data Consistency for Timeliness in Real-Time Database Systems.Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu. Proceed-ings of the 27th Euromicro Conference on Real-Time Systems, Work-in-Progresssession (ECRTS-WiP) . Euromicro. 2017.

DAGGTAX: A Taxonomy of Data Aggregation Processes. Simin Cai, BarbaraGallina, Dag Nyström, and Cristina Seceleanu. Proceedings of the 7th Inter-national Conference on Model and Data Engineering (MEDI). Springer. 2017.

Design of Cloud Monitoring Systems via DAGGTAX: a Case Study. Simin Cai,Barbara Gallina, Dag Nyström, Cristina Seceleanu, and Alf Larsson. Proceed-ings of the 8th International Conference on Ambient Systems, Networks andTechnologies (ANT). Elsevier. 2017.

Customized Real-Time Data Management for Automotive Systems: A CaseStudy. Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu. Pro-ceedings of the 43rd Annual Conference of the IEEE Industrial Electronics So-ciety (IECON). IEEE. 2017.

Effective Test Suite Design for Detecting Concurrency Control Faults in Dis-tributed Transaction Systems. Simin Cai, Barbara Gallina, Dag Nyström, andCristina Seceleanu. Proceedings of the 8th International Symposium On Lever-aging Applications of Formal Methods, Verification and Validation (ISoLA).Springer. 2018.

x

A short version is published in Proceedings of the 23rd Pacific Rim Inter-national Symposium on Dependable Computing (PRDC). IEEE. 2018.

Paper F Statistical Model Checking for Real-Time Database ManagementSystems: a Case Study. Simin Cai, Barbara Gallina, Dag Nyström, and CristinaSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA). IEEE, 2019.

Papers Related to, but not Included in the Thesis

Trading-off Data Consistency for Timeliness in Real-Time Database Systems.Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu. Proceed-ings of the 27th Euromicro Conference on Real-Time Systems, Work-in-Progresssession (ECRTS-WiP) . Euromicro. 2017.

DAGGTAX: A Taxonomy of Data Aggregation Processes. Simin Cai, BarbaraGallina, Dag Nyström, and Cristina Seceleanu. Proceedings of the 7th Inter-national Conference on Model and Data Engineering (MEDI). Springer. 2017.

Design of Cloud Monitoring Systems via DAGGTAX: a Case Study. Simin Cai,Barbara Gallina, Dag Nyström, Cristina Seceleanu, and Alf Larsson. Proceed-ings of the 8th International Conference on Ambient Systems, Networks andTechnologies (ANT). Elsevier. 2017.

Customized Real-Time Data Management for Automotive Systems: A CaseStudy. Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu. Pro-ceedings of the 43rd Annual Conference of the IEEE Industrial Electronics So-ciety (IECON). IEEE. 2017.

Effective Test Suite Design for Detecting Concurrency Control Faults in Dis-tributed Transaction Systems. Simin Cai, Barbara Gallina, Dag Nyström, andCristina Seceleanu. Proceedings of the 8th International Symposium On Lever-aging Applications of Formal Methods, Verification and Validation (ISoLA).Springer. 2018.

14

Page 16: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

xi

Paper not Related to the ThesisArchitecture Modelling and Formal Analysis of Intelligent Multi-Agent Sys-tems. Ashalatha Kunnappilly, Simin Cai, Cristina Seceleanu, Raluca Mari-nescu. Proceedings of the 14th International Conference on Evaluation ofNovel Approaches to Software Engineering (ENASE). INSTICC. 2019.

Licentiate ThesisSystematic Design of Data Management for Real-Time Data-Intensive Appli-cations. Simin Cai. Mälardalen University. 2017.

xi

Paper not Related to the ThesisArchitecture Modelling and Formal Analysis of Intelligent Multi-Agent Sys-tems. Ashalatha Kunnappilly, Simin Cai, Cristina Seceleanu, Raluca Mari-nescu. Proceedings of the 14th International Conference on Evaluation ofNovel Approaches to Software Engineering (ENASE). INSTICC. 2019.

Licentiate ThesisSystematic Design of Data Management for Real-Time Data-Intensive Appli-cations. Simin Cai. Mälardalen University. 2017.

15

Page 17: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

16

Page 18: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Contents

I Thesis 1

1 Introduction 31.1 Thesis Overview . . . . . . . . . . . . . . . . . . . . . . . . 8

2 Preliminaries 132.1 Data Aggregation . . . . . . . . . . . . . . . . . . . . . . . . 132.2 Transactions and Customized Transaction Management . . . . 14

2.2.1 Relaxed ACID Properties . . . . . . . . . . . . . . . . 162.2.2 Atomicity Variants and Abort Recovery Mechanisms . 172.2.3 Isolation Variants and Pessimistic Concurrency Con-

trol Algorithms . . . . . . . . . . . . . . . . . . . . . 182.2.4 Real-time Transactions and Temporal Correctness . . 202.2.5 Customized Transaction Management in DBMS . . . 21

2.3 Formal Methods Applied in this Thesis . . . . . . . . . . . . . 232.3.1 Boolean Satisfiability Problem Solving Using Z3 . . . 242.3.2 Model Checking Using UPPAAL . . . . . . . . . . . 242.3.3 Statistical Model Checking Using UPPAAL SMC . . . 28

3 Research Problem 313.1 Problem Description . . . . . . . . . . . . . . . . . . . . . . 313.2 Research Goals . . . . . . . . . . . . . . . . . . . . . . . . . 32

4 Research Methods 35

5 Thesis Contributions 375.1 The DAGGERS Process: Data AGGregation for Embedded

Real-time Systems . . . . . . . . . . . . . . . . . . . . . . . 375.2 DAGGTAX: Data AGGregation TAXonomy . . . . . . . . . . 39

xiii

Contents

I Thesis 1

1 Introduction 31.1 Thesis Overview . . . . . . . . . . . . . . . . . . . . . . . . 8

2 Preliminaries 132.1 Data Aggregation . . . . . . . . . . . . . . . . . . . . . . . . 132.2 Transactions and Customized Transaction Management . . . . 14

2.2.1 Relaxed ACID Properties . . . . . . . . . . . . . . . . 162.2.2 Atomicity Variants and Abort Recovery Mechanisms . 172.2.3 Isolation Variants and Pessimistic Concurrency Con-

trol Algorithms . . . . . . . . . . . . . . . . . . . . . 182.2.4 Real-time Transactions and Temporal Correctness . . 202.2.5 Customized Transaction Management in DBMS . . . 21

2.3 Formal Methods Applied in this Thesis . . . . . . . . . . . . . 232.3.1 Boolean Satisfiability Problem Solving Using Z3 . . . 242.3.2 Model Checking Using UPPAAL . . . . . . . . . . . 242.3.3 Statistical Model Checking Using UPPAAL SMC . . . 28

3 Research Problem 313.1 Problem Description . . . . . . . . . . . . . . . . . . . . . . 313.2 Research Goals . . . . . . . . . . . . . . . . . . . . . . . . . 32

4 Research Methods 35

5 Thesis Contributions 375.1 The DAGGERS Process: Data AGGregation for Embedded

Real-time Systems . . . . . . . . . . . . . . . . . . . . . . . 375.2 DAGGTAX: Data AGGregation TAXonomy . . . . . . . . . . 39

xiii

17

Page 19: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

xiv Contents

5.3 SAFARE: SAt-based Feature-oriented Data Aggregation Design 415.4 The UTRAN Profile: UML for TRANsactions . . . . . . . . 435.5 The UPPCART Framework: UPPaal for Concurrent Atomic

Real-time Transactions . . . . . . . . . . . . . . . . . . . . . 455.5.1 Modeling RTDBMS as a Network of Timed Automata 455.5.2 Pattern-based Construction . . . . . . . . . . . . . . . 465.5.3 Verification . . . . . . . . . . . . . . . . . . . . . . . 52

5.6 The UPPCART-SMC Framework . . . . . . . . . . . . . . . . 535.7 Validation on Industrial Use Cases . . . . . . . . . . . . . . . 565.8 Research Goals Revisited . . . . . . . . . . . . . . . . . . . . 60

6 Related Work 636.1 Design Methodologies for Customized Transaction Management 636.2 Taxonomies of Data Aggregation . . . . . . . . . . . . . . . . 656.3 Formal Specification and Analysis of Transactions . . . . . . . 66

7 Conclusions and Future Work 697.1 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . 707.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

Bibliography 73

II Included Papers 85

8 Paper A:Data Aggregation Processes: A Survey, A Taxonomy, and DesignGuidelines 878.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 898.2 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

8.2.1 Timeliness and Temporal Data Consistency . . . . . . 918.2.2 Feature Model and Feature Diagram . . . . . . . . . . 93

8.3 A Survey of Data Aggregation Processes . . . . . . . . . . . . 948.3.1 General-purpose Data Management Infrastructures . . 948.3.2 Smart “X”, IoT and Big Data Applications . . . . . . 978.3.3 Ad Hoc Applications . . . . . . . . . . . . . . . . . . 988.3.4 Survey Results . . . . . . . . . . . . . . . . . . . . . 101

8.4 Our Proposed Taxonomy . . . . . . . . . . . . . . . . . . . . 1048.5 Design Constraints and Heuristics for Data Aggregation Pro-

cesses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

xiv Contents

5.3 SAFARE: SAt-based Feature-oriented Data Aggregation Design 415.4 The UTRAN Profile: UML for TRANsactions . . . . . . . . 435.5 The UPPCART Framework: UPPaal for Concurrent Atomic

Real-time Transactions . . . . . . . . . . . . . . . . . . . . . 455.5.1 Modeling RTDBMS as a Network of Timed Automata 455.5.2 Pattern-based Construction . . . . . . . . . . . . . . . 465.5.3 Verification . . . . . . . . . . . . . . . . . . . . . . . 52

5.6 The UPPCART-SMC Framework . . . . . . . . . . . . . . . . 535.7 Validation on Industrial Use Cases . . . . . . . . . . . . . . . 565.8 Research Goals Revisited . . . . . . . . . . . . . . . . . . . . 60

6 Related Work 636.1 Design Methodologies for Customized Transaction Management 636.2 Taxonomies of Data Aggregation . . . . . . . . . . . . . . . . 656.3 Formal Specification and Analysis of Transactions . . . . . . . 66

7 Conclusions and Future Work 697.1 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . 707.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

Bibliography 73

II Included Papers 85

8 Paper A:Data Aggregation Processes: A Survey, A Taxonomy, and DesignGuidelines 878.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 898.2 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

8.2.1 Timeliness and Temporal Data Consistency . . . . . . 918.2.2 Feature Model and Feature Diagram . . . . . . . . . . 93

8.3 A Survey of Data Aggregation Processes . . . . . . . . . . . . 948.3.1 General-purpose Data Management Infrastructures . . 948.3.2 Smart “X”, IoT and Big Data Applications . . . . . . 978.3.3 Ad Hoc Applications . . . . . . . . . . . . . . . . . . 988.3.4 Survey Results . . . . . . . . . . . . . . . . . . . . . 101

8.4 Our Proposed Taxonomy . . . . . . . . . . . . . . . . . . . . 1048.5 Design Constraints and Heuristics for Data Aggregation Pro-

cesses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

18

Page 20: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Contents xv

8.5.1 Design Constraints . . . . . . . . . . . . . . . . . . . 1128.5.2 Design Heuristics . . . . . . . . . . . . . . . . . . . . 114

8.6 Case Studies . . . . . . . . . . . . . . . . . . . . . . . . . . . 1178.6.1 Case Study I: Analyzing the Hardware Assisted Trace

(HAT) Framework . . . . . . . . . . . . . . . . . . . 1178.6.2 Case Study II: Timing Analysis for a Brake-By-Wire

System . . . . . . . . . . . . . . . . . . . . . . . . . 1208.6.3 Summary . . . . . . . . . . . . . . . . . . . . . . . . 121

8.7 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . 1228.8 Conclusions and Future Work . . . . . . . . . . . . . . . . . . 124Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

9 Paper B:Tool-Supported Design of Data Aggregation Processes in CloudMonitoring Systems 1339.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 1359.2 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

9.2.1 Feature Model . . . . . . . . . . . . . . . . . . . . . 1379.2.2 The DAGGTAX Taxonomy . . . . . . . . . . . . . . 1389.2.3 Boolean Satisfiability and Z3 . . . . . . . . . . . . . . 140

9.3 Formal Specification and Analysis of Data Aggregation Pro-cesses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1419.3.1 Formalizing DAP Specifications . . . . . . . . . . . . 1419.3.2 Formalizing Intra-DAP Constraints . . . . . . . . . . 1439.3.3 Formalizing Inter-DAP Constraints . . . . . . . . . . 1449.3.4 Formalizing Data Management Design Constraints . . 144

9.4 The SAFARE Tool . . . . . . . . . . . . . . . . . . . . . . . 1469.4.1 DAP Specification . . . . . . . . . . . . . . . . . . . 1489.4.2 Consistency Check . . . . . . . . . . . . . . . . . . . 1499.4.3 DBMS Specification . . . . . . . . . . . . . . . . . . 151

9.5 Case Study and Results . . . . . . . . . . . . . . . . . . . . . 1529.5.1 Case Study Description . . . . . . . . . . . . . . . . . 1529.5.2 Application of DAGGTAX and SAFARE . . . . . . . 1549.5.3 System Implementation . . . . . . . . . . . . . . . . 157

9.6 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1589.7 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . 1599.8 Conclusions and Future Work . . . . . . . . . . . . . . . . . . 161Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

Contents xv

8.5.1 Design Constraints . . . . . . . . . . . . . . . . . . . 1128.5.2 Design Heuristics . . . . . . . . . . . . . . . . . . . . 114

8.6 Case Studies . . . . . . . . . . . . . . . . . . . . . . . . . . . 1178.6.1 Case Study I: Analyzing the Hardware Assisted Trace

(HAT) Framework . . . . . . . . . . . . . . . . . . . 1178.6.2 Case Study II: Timing Analysis for a Brake-By-Wire

System . . . . . . . . . . . . . . . . . . . . . . . . . 1208.6.3 Summary . . . . . . . . . . . . . . . . . . . . . . . . 121

8.7 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . 1228.8 Conclusions and Future Work . . . . . . . . . . . . . . . . . . 124Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

9 Paper B:Tool-Supported Design of Data Aggregation Processes in CloudMonitoring Systems 1339.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 1359.2 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

9.2.1 Feature Model . . . . . . . . . . . . . . . . . . . . . 1379.2.2 The DAGGTAX Taxonomy . . . . . . . . . . . . . . 1389.2.3 Boolean Satisfiability and Z3 . . . . . . . . . . . . . . 140

9.3 Formal Specification and Analysis of Data Aggregation Pro-cesses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1419.3.1 Formalizing DAP Specifications . . . . . . . . . . . . 1419.3.2 Formalizing Intra-DAP Constraints . . . . . . . . . . 1439.3.3 Formalizing Inter-DAP Constraints . . . . . . . . . . 1449.3.4 Formalizing Data Management Design Constraints . . 144

9.4 The SAFARE Tool . . . . . . . . . . . . . . . . . . . . . . . 1469.4.1 DAP Specification . . . . . . . . . . . . . . . . . . . 1489.4.2 Consistency Check . . . . . . . . . . . . . . . . . . . 1499.4.3 DBMS Specification . . . . . . . . . . . . . . . . . . 151

9.5 Case Study and Results . . . . . . . . . . . . . . . . . . . . . 1529.5.1 Case Study Description . . . . . . . . . . . . . . . . . 1529.5.2 Application of DAGGTAX and SAFARE . . . . . . . 1549.5.3 System Implementation . . . . . . . . . . . . . . . . 157

9.6 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1589.7 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . 1599.8 Conclusions and Future Work . . . . . . . . . . . . . . . . . . 161Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

19

Page 21: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

xvi Contents

10 Paper C:Towards the Verification of Temporal Data Consistency in Real-Time Data Management 16710.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 16910.2 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . 170

10.2.1 Temporal Data Consistency . . . . . . . . . . . . . . 17010.2.2 Timed Automata and UPPAAL . . . . . . . . . . . . . 171

10.3 Assumed System . . . . . . . . . . . . . . . . . . . . . . . . 17310.4 Modeling Transaction Work Units and Data . . . . . . . . . . 174

10.4.1 Modeling Transaction Work Units . . . . . . . . . . . 17510.4.2 Modeling the Age of Data . . . . . . . . . . . . . . . 17710.4.3 Modeling the Lock Manager . . . . . . . . . . . . . . 177

10.5 Verification of Temporal Data Consistencyand Timeliness . . . . . . . . . . . . . . . . . . . . . . . . . 17910.5.1 Formalizing the Requirements . . . . . . . . . . . . . 18010.5.2 Verification Results . . . . . . . . . . . . . . . . . . . 181

10.6 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . 18310.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 183Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185

11 Paper D:A Formal Approach for Flexible Modeling and Analysis of Trans-action Timeliness and Isolation 18711.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 18911.2 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . . 190

11.2.1 The Concept of Transaction . . . . . . . . . . . . . . 19011.2.2 Isolation . . . . . . . . . . . . . . . . . . . . . . . . 19211.2.3 Pessimistic Concurrency Control (PCC) . . . . . . . . 19311.2.4 Timed Automata and UPPAAL . . . . . . . . . . . . 194

11.3 Our Approach . . . . . . . . . . . . . . . . . . . . . . . . . . 19611.3.1 Work Unit Skeleton and Operation Patterns . . . . . . 19711.3.2 Concurrency Control Skeleton and Patterns . . . . . . 20011.3.3 IsolationObserver Skeleton . . . . . . . . . . . . . . . 20211.3.4 Reference Algorithm: Rigorous 2PL . . . . . . . . . . 203

11.4 Adjustments for Various PCC . . . . . . . . . . . . . . . . . . 20511.4.1 Concurrency Control for Relaxed Isolation . . . . . . 20511.4.2 Real-time Concurrency Control . . . . . . . . . . . . 207

11.5 Verification . . . . . . . . . . . . . . . . . . . . . . . . . . . 21011.6 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . 214

xvi Contents

10 Paper C:Towards the Verification of Temporal Data Consistency in Real-Time Data Management 16710.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 16910.2 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . 170

10.2.1 Temporal Data Consistency . . . . . . . . . . . . . . 17010.2.2 Timed Automata and UPPAAL . . . . . . . . . . . . . 171

10.3 Assumed System . . . . . . . . . . . . . . . . . . . . . . . . 17310.4 Modeling Transaction Work Units and Data . . . . . . . . . . 174

10.4.1 Modeling Transaction Work Units . . . . . . . . . . . 17510.4.2 Modeling the Age of Data . . . . . . . . . . . . . . . 17710.4.3 Modeling the Lock Manager . . . . . . . . . . . . . . 177

10.5 Verification of Temporal Data Consistencyand Timeliness . . . . . . . . . . . . . . . . . . . . . . . . . 17910.5.1 Formalizing the Requirements . . . . . . . . . . . . . 18010.5.2 Verification Results . . . . . . . . . . . . . . . . . . . 181

10.6 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . 18310.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 183Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185

11 Paper D:A Formal Approach for Flexible Modeling and Analysis of Trans-action Timeliness and Isolation 18711.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 18911.2 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . . 190

11.2.1 The Concept of Transaction . . . . . . . . . . . . . . 19011.2.2 Isolation . . . . . . . . . . . . . . . . . . . . . . . . 19211.2.3 Pessimistic Concurrency Control (PCC) . . . . . . . . 19311.2.4 Timed Automata and UPPAAL . . . . . . . . . . . . 194

11.3 Our Approach . . . . . . . . . . . . . . . . . . . . . . . . . . 19611.3.1 Work Unit Skeleton and Operation Patterns . . . . . . 19711.3.2 Concurrency Control Skeleton and Patterns . . . . . . 20011.3.3 IsolationObserver Skeleton . . . . . . . . . . . . . . . 20211.3.4 Reference Algorithm: Rigorous 2PL . . . . . . . . . . 203

11.4 Adjustments for Various PCC . . . . . . . . . . . . . . . . . . 20511.4.1 Concurrency Control for Relaxed Isolation . . . . . . 20511.4.2 Real-time Concurrency Control . . . . . . . . . . . . 207

11.5 Verification . . . . . . . . . . . . . . . . . . . . . . . . . . . 21011.6 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . 214

20

Page 22: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Contents xvii

11.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 216Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219

12 Paper E:Specification and Automated Verification of Atomic ConcurrentReal-Time Transactions 22312.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 22512.2 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . . 228

12.2.1 Real-Time Transactions . . . . . . . . . . . . . . . . 22812.2.2 UML Profiles and MARTE . . . . . . . . . . . . . . . 23112.2.3 UPPAAL Timed Automata and UPPAAL Model

Checker . . . . . . . . . . . . . . . . . . . . . . . . . 23112.3 UTRAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233

12.3.1 Domain View . . . . . . . . . . . . . . . . . . . . . . 23412.3.2 Profile . . . . . . . . . . . . . . . . . . . . . . . . . . 236

12.4 UPPCART framework . . . . . . . . . . . . . . . . . . . . . 23912.4.1 Patterns and Connectors for Modeling Work Units . . 24212.4.2 Patterns and Connectors for Modeling TransactionSe-

quence . . . . . . . . . . . . . . . . . . . . . . . . . 25312.4.3 CCManager Skeleton (CCS) . . . . . . . . . . . . . . 25612.4.4 ATManager Skeleton (ATS) . . . . . . . . . . . . . . 25812.4.5 IsolationObserver Skeleton (IOS) . . . . . . . . . . . 25912.4.6 Data Skeleton (DS) . . . . . . . . . . . . . . . . . . . 26012.4.7 Summary of Modeling . . . . . . . . . . . . . . . . . 26012.4.8 Verification . . . . . . . . . . . . . . . . . . . . . . . 261

12.5 From UTRAN to UPPCART . . . . . . . . . . . . . . . . . . 26212.5.1 Translational Semantics of UTRAN . . . . . . . . . . 26212.5.2 Automated Transformation . . . . . . . . . . . . . . . 26512.5.3 Validation of U2Transformer . . . . . . . . . . . . . . 269

12.6 Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . . 27012.6.1 Global Collision Avoidance Layer . . . . . . . . . . . 27112.6.2 Local Collision Avoidance Layer . . . . . . . . . . . 275

12.7 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . 27712.8 Conclusions and Future Work . . . . . . . . . . . . . . . . . . 281Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283

Contents xvii

11.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 216Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219

12 Paper E:Specification and Automated Verification of Atomic ConcurrentReal-Time Transactions 22312.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 22512.2 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . . 228

12.2.1 Real-Time Transactions . . . . . . . . . . . . . . . . 22812.2.2 UML Profiles and MARTE . . . . . . . . . . . . . . . 23112.2.3 UPPAAL Timed Automata and UPPAAL Model

Checker . . . . . . . . . . . . . . . . . . . . . . . . . 23112.3 UTRAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233

12.3.1 Domain View . . . . . . . . . . . . . . . . . . . . . . 23412.3.2 Profile . . . . . . . . . . . . . . . . . . . . . . . . . . 236

12.4 UPPCART framework . . . . . . . . . . . . . . . . . . . . . 23912.4.1 Patterns and Connectors for Modeling Work Units . . 24212.4.2 Patterns and Connectors for Modeling TransactionSe-

quence . . . . . . . . . . . . . . . . . . . . . . . . . 25312.4.3 CCManager Skeleton (CCS) . . . . . . . . . . . . . . 25612.4.4 ATManager Skeleton (ATS) . . . . . . . . . . . . . . 25812.4.5 IsolationObserver Skeleton (IOS) . . . . . . . . . . . 25912.4.6 Data Skeleton (DS) . . . . . . . . . . . . . . . . . . . 26012.4.7 Summary of Modeling . . . . . . . . . . . . . . . . . 26012.4.8 Verification . . . . . . . . . . . . . . . . . . . . . . . 261

12.5 From UTRAN to UPPCART . . . . . . . . . . . . . . . . . . 26212.5.1 Translational Semantics of UTRAN . . . . . . . . . . 26212.5.2 Automated Transformation . . . . . . . . . . . . . . . 26512.5.3 Validation of U2Transformer . . . . . . . . . . . . . . 269

12.6 Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . . 27012.6.1 Global Collision Avoidance Layer . . . . . . . . . . . 27112.6.2 Local Collision Avoidance Layer . . . . . . . . . . . 275

12.7 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . 27712.8 Conclusions and Future Work . . . . . . . . . . . . . . . . . . 281Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283

21

Page 23: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

xviii Contents

13 Paper F:Statistical Model Checking for Real-Time Database ManagementSystems: A Case Study 28913.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 29113.2 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . 292

13.2.1 UPPAAL Timed Automata and UPPAAL ModelChecker . . . . . . . . . . . . . . . . . . . . . . . . . 292

13.2.2 UPPAAL Stochastic Timed Automata and UPPAALSMC . . . . . . . . . . . . . . . . . . . . . . . . . . 293

13.2.3 The UPPCART Framework . . . . . . . . . . . . . . 29413.2.4 UTRAN . . . . . . . . . . . . . . . . . . . . . . . . . 296

13.3 The UPPCART-SMC Framework . . . . . . . . . . . . . . . . 29813.3.1 UPPCART-SMC Patterns . . . . . . . . . . . . . . . 29913.3.2 Statistical Analysis . . . . . . . . . . . . . . . . . . . 301

13.4 A Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . 30313.4.1 System Description . . . . . . . . . . . . . . . . . . . 30313.4.2 UPPAAL SMC Models . . . . . . . . . . . . . . . . . 30813.4.3 Analysis . . . . . . . . . . . . . . . . . . . . . . . . 308

13.5 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . 30913.6 Conclusions and Future Work . . . . . . . . . . . . . . . . . . 311Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313

xviii Contents

13 Paper F:Statistical Model Checking for Real-Time Database ManagementSystems: A Case Study 28913.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 29113.2 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . 292

13.2.1 UPPAAL Timed Automata and UPPAAL ModelChecker . . . . . . . . . . . . . . . . . . . . . . . . . 292

13.2.2 UPPAAL Stochastic Timed Automata and UPPAALSMC . . . . . . . . . . . . . . . . . . . . . . . . . . 293

13.2.3 The UPPCART Framework . . . . . . . . . . . . . . 29413.2.4 UTRAN . . . . . . . . . . . . . . . . . . . . . . . . . 296

13.3 The UPPCART-SMC Framework . . . . . . . . . . . . . . . . 29813.3.1 UPPCART-SMC Patterns . . . . . . . . . . . . . . . 29913.3.2 Statistical Analysis . . . . . . . . . . . . . . . . . . . 301

13.4 A Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . 30313.4.1 System Description . . . . . . . . . . . . . . . . . . . 30313.4.2 UPPAAL SMC Models . . . . . . . . . . . . . . . . . 30813.4.3 Analysis . . . . . . . . . . . . . . . . . . . . . . . . 308

13.5 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . 30913.6 Conclusions and Future Work . . . . . . . . . . . . . . . . . . 311Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313

22

Page 24: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

I

Thesis

1

I

Thesis

1

23

Page 25: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

24

Page 26: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Chapter 1

Introduction

With the development of cyber-physical systems and Internet of Things in thelast couple of decades, real-time systems are becoming more data-intensivethan ever. For instance, modern automotive systems may process thousandsof signals in real-time [1], and are evolving towards more adaptive softwarerelying on large amounts of ambient and configuration data from various ser-vices [2]. In the popular Industry 4.0 paradigm [3], production processes aredesigned, executed and optimized, based on complex and timely analysis ofsensor, production and configuration data from various layers. Not only theamounts of data are growing, but the delivery of correct services of real-timesystems are also depending more on the effective and efficient management ofdata. On one hand, timely access to fresh data such as environmental statusare essential for many safety-critical systems, in which the temporal correct-ness of computations is crucial for avoiding disastrous behaviors. On the otherhand, as many decisions and operations involve processing multiple data items,maintaining logical data consistency plays a fundamental role for achieving thelogical correctness of the decisions.

Amid the increasing importance of data and complexity of data-relatedcomputations, Real-Time DataBase Management Systems (RTDBMS) havebeen considered as a promising data management technique to enhance thesafety and reliability of real-time data-intensive systems [4]. In addition tobenefits such as common data access interface and separation of data fromcomputation, an RTDBMS contributes to maintain logical data consistency, bymanaging the data-related computations as transactions, via a variety of mecha-nisms. As a goal, logical data consistency is provided by ensuring the so-called

3

Chapter 1

Introduction

With the development of cyber-physical systems and Internet of Things in thelast couple of decades, real-time systems are becoming more data-intensivethan ever. For instance, modern automotive systems may process thousandsof signals in real-time [1], and are evolving towards more adaptive softwarerelying on large amounts of ambient and configuration data from various ser-vices [2]. In the popular Industry 4.0 paradigm [3], production processes aredesigned, executed and optimized, based on complex and timely analysis ofsensor, production and configuration data from various layers. Not only theamounts of data are growing, but the delivery of correct services of real-timesystems are also depending more on the effective and efficient management ofdata. On one hand, timely access to fresh data such as environmental statusare essential for many safety-critical systems, in which the temporal correct-ness of computations is crucial for avoiding disastrous behaviors. On the otherhand, as many decisions and operations involve processing multiple data items,maintaining logical data consistency plays a fundamental role for achieving thelogical correctness of the decisions.

Amid the increasing importance of data and complexity of data-relatedcomputations, Real-Time DataBase Management Systems (RTDBMS) havebeen considered as a promising data management technique to enhance thesafety and reliability of real-time data-intensive systems [4]. In addition tobenefits such as common data access interface and separation of data fromcomputation, an RTDBMS contributes to maintain logical data consistency, bymanaging the data-related computations as transactions, via a variety of mecha-nisms. As a goal, logical data consistency is provided by ensuring the so-called

3

25

Page 27: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

4 Chapter 1. Introduction

ACID properties, which refer to, respectively: Atomicity (a transaction eitherruns completely or makes no changes at all), Consistency (a transaction exe-cuting by itself does not violate logical constraints), Isolation (uncommittedchanges of one transaction should not be seen by concurrent transactions), andDurability (committed changes are made permanent) [5, 6]. As for the real-time aspect, an RTDBMS maintains temporal correctness by ensuring transac-tion timeliness and temporal data consistency. Timeliness refers to the propertythat the transaction should complete its computation by the specified deadline,while temporal data consistency requires that the data used for the computa-tion should represent a fresh and consistent view of the system and the envi-ronment [4, 7]. Various transaction management mechanisms are employedby an RTDBMS to ensure logical data consistency and temporal correctness.For instance, abort recovery mechanisms are applied to achieve atomicity [8],concurrency control mechanisms are adopted for providing isolation [9], whilevarious scheduling policies are combined with the former two to ensure tem-poral correctness [10].

Since real-time systems have exhibited large varieties in their resource lim-its, functionalities, as well as dependability requirements that entail logical andtemporal correctness concerns, researchers have long discovered that a “one-size-fits-all” DBMS for all real-time applications is not feasible, especially dueto the conflicts among the above constraints [11]. A dependable data man-agement solution should be a DBMS customized with appropriate trade-offsbetween the conflicting constraints, stemming from the application require-ments. In this thesis, we focus on the trade-offs between the assurance of ACIDand temporal correctness imposed by the application semantics. Ideally, bothACID and temporal correctness should be guaranteed by the DBMS. However,conflicts among the desired properties could arise. A typical scenario occursespecially when temporal correctness is breached, due to the unpredictabilityintroduced by the transaction management mechanisms. For instance, con-currency control may introduce long blocking time for concurrent transactionsrequiring access to the shared data [12]. Some concurrency control algorithmsmay even abort transactions in conflict, which triggers the recovery mecha-nism that further adds to unpredictability [13]. Therefore, for many real-timeapplications, ACID assurance is often relaxed in favor of temporal correctness[11], which entails a customized DBMS with selected transaction managementmechanisms to provide the intended assurance.

While most existing DBMS products are indeed customizable, the realchallenge lies in how to make the right choice from a number of transactionmanagement customization options. For instance, customization of isolation

4 Chapter 1. Introduction

ACID properties, which refer to, respectively: Atomicity (a transaction eitherruns completely or makes no changes at all), Consistency (a transaction exe-cuting by itself does not violate logical constraints), Isolation (uncommittedchanges of one transaction should not be seen by concurrent transactions), andDurability (committed changes are made permanent) [5, 6]. As for the real-time aspect, an RTDBMS maintains temporal correctness by ensuring transac-tion timeliness and temporal data consistency. Timeliness refers to the propertythat the transaction should complete its computation by the specified deadline,while temporal data consistency requires that the data used for the computa-tion should represent a fresh and consistent view of the system and the envi-ronment [4, 7]. Various transaction management mechanisms are employedby an RTDBMS to ensure logical data consistency and temporal correctness.For instance, abort recovery mechanisms are applied to achieve atomicity [8],concurrency control mechanisms are adopted for providing isolation [9], whilevarious scheduling policies are combined with the former two to ensure tem-poral correctness [10].

Since real-time systems have exhibited large varieties in their resource lim-its, functionalities, as well as dependability requirements that entail logical andtemporal correctness concerns, researchers have long discovered that a “one-size-fits-all” DBMS for all real-time applications is not feasible, especially dueto the conflicts among the above constraints [11]. A dependable data man-agement solution should be a DBMS customized with appropriate trade-offsbetween the conflicting constraints, stemming from the application require-ments. In this thesis, we focus on the trade-offs between the assurance of ACIDand temporal correctness imposed by the application semantics. Ideally, bothACID and temporal correctness should be guaranteed by the DBMS. However,conflicts among the desired properties could arise. A typical scenario occursespecially when temporal correctness is breached, due to the unpredictabilityintroduced by the transaction management mechanisms. For instance, con-currency control may introduce long blocking time for concurrent transactionsrequiring access to the shared data [12]. Some concurrency control algorithmsmay even abort transactions in conflict, which triggers the recovery mecha-nism that further adds to unpredictability [13]. Therefore, for many real-timeapplications, ACID assurance is often relaxed in favor of temporal correctness[11], which entails a customized DBMS with selected transaction managementmechanisms to provide the intended assurance.

While most existing DBMS products are indeed customizable, the realchallenge lies in how to make the right choice from a number of transactionmanagement customization options. For instance, customization of isolation

26

Page 28: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

5

assurance is often provided by most commercial DBMS as a configuration ofisolation levels, backed by a series of concurrency control algorithms. Atom-icity variations can be achieved by selecting corresponding recovery options,which can alternatively be explicitly encoded in the transaction code by the de-veloper. Software-product-line-based techniques also allow a DBMS to be con-structed with selected transaction management components and aspects, henceembracing larger freedom of customization. However, these products and pro-posals do not answer the critical questions: How should the system designerselect the customized transaction management mechanisms, such that the de-sired ACID and temporal correctness trade-offs are ensured? Despite the exis-tence of a number of DBMS design methodologies [14, 15, 16, 17, 18, 19, 20],few of them provide sufficient support for the systematic analysis of trade-offsbetween ACID and temporal correctness, which should guide the decisions onthe appropriate mechanisms. As common practice, the decisions are made bydesigners upon experience or pilot experiments, while no guarantee can be pro-vided on whether or not the traded-off properties are satisfied by the selectedmechanisms. Consequently, breached temporal correctness or unnecessary re-laxation of ACID could arise, which may lead to severe safety risks.

This thesis investigates how to design customized transaction managementof DBMS solutions for real-time database-centric systems systematically. Webelieve the foundation to this is to describe and reason about the high-levelcharacteristics of the application’s data-related computations, especially thoserelated to logical data consistency and temporal correctness, in a methodicalmanner. We are particularly interested in one type of such computations, calleddata aggregation, which is the process of producing a synthesized form of datafrom multiple data items using an aggregate function [21], and is commonlyapplied in most real-time systems [22, 23, 24]. In many data-intensive sys-tems, the aggregated data of one aggregation process could serve as the rawdata of another, hence forming a multiple-level aggregation design. Each levelof aggregation may have its unique characteristics, not only in the functionalaspects of specific aggregate functions, but also in their logical and temporalcorrectness constraints. Despite the importance and popularity of data aggre-gation, knowledge of the characteristics of this computation is inadequate forthe systematic analysis of the mentioned properties and customized transactionmanagement design.

With this knowledge of the application semantics, the next step is to rea-son about the trade-offs between ACID and temporal correctness, and selectthe appropriate transaction management mechanisms. We focus on analyz-ing trade-offs between atomicity, isolation and temporal correctness, and the

5

assurance is often provided by most commercial DBMS as a configuration ofisolation levels, backed by a series of concurrency control algorithms. Atom-icity variations can be achieved by selecting corresponding recovery options,which can alternatively be explicitly encoded in the transaction code by the de-veloper. Software-product-line-based techniques also allow a DBMS to be con-structed with selected transaction management components and aspects, henceembracing larger freedom of customization. However, these products and pro-posals do not answer the critical questions: How should the system designerselect the customized transaction management mechanisms, such that the de-sired ACID and temporal correctness trade-offs are ensured? Despite the exis-tence of a number of DBMS design methodologies [14, 15, 16, 17, 18, 19, 20],few of them provide sufficient support for the systematic analysis of trade-offsbetween ACID and temporal correctness, which should guide the decisions onthe appropriate mechanisms. As common practice, the decisions are made bydesigners upon experience or pilot experiments, while no guarantee can be pro-vided on whether or not the traded-off properties are satisfied by the selectedmechanisms. Consequently, breached temporal correctness or unnecessary re-laxation of ACID could arise, which may lead to severe safety risks.

This thesis investigates how to design customized transaction managementof DBMS solutions for real-time database-centric systems systematically. Webelieve the foundation to this is to describe and reason about the high-levelcharacteristics of the application’s data-related computations, especially thoserelated to logical data consistency and temporal correctness, in a methodicalmanner. We are particularly interested in one type of such computations, calleddata aggregation, which is the process of producing a synthesized form of datafrom multiple data items using an aggregate function [21], and is commonlyapplied in most real-time systems [22, 23, 24]. In many data-intensive sys-tems, the aggregated data of one aggregation process could serve as the rawdata of another, hence forming a multiple-level aggregation design. Each levelof aggregation may have its unique characteristics, not only in the functionalaspects of specific aggregate functions, but also in their logical and temporalcorrectness constraints. Despite the importance and popularity of data aggre-gation, knowledge of the characteristics of this computation is inadequate forthe systematic analysis of the mentioned properties and customized transactionmanagement design.

With this knowledge of the application semantics, the next step is to rea-son about the trade-offs between ACID and temporal correctness, and selectthe appropriate transaction management mechanisms. We focus on analyz-ing trade-offs between atomicity, isolation and temporal correctness, and the

27

Page 29: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

6 Chapter 1. Introduction

selection of abort recovery mechanisms, concurrency control algorithms andscheduling policies. We select these properties because their mechanisms mayheavily influence the assurance of each other, while existing techniques do notprovide adequate support for all these properties and mechanisms [25, 26]. Achallenge arises in how to formulate the transactions’ behaviors under vari-ous mechanisms and the desired properties, such that they can be rigorouslyanalyzed with the state-of-art methods and tools.

Our work addresses the above issues, by showing how to systematicallydesign a customized and dependable RTDBMS for real-time systems with dataaggregation, with assured trade-offs between ACID and temporal correctness.We achieve this by proposing a design process as our methodology, calledDAGGERS (Data AGGregation for Embedded Real-time Systems) [27], whichguides the selection of ACID and temporal correctness trade-offs, as well as theconcrete mechanisms to provide property assurance within the process. TheDAGGERS process consists of the following steps: (i) Specifying the dataaggregation processes and other data-related computations, as well as the logi-cal data consistency and temporal correctness properties, from system require-ments, (ii) Selecting the appropriate transaction models to model the compu-tations, and deciding the corresponding transaction management mechanismsthat can guarantee the properties, via formal analysis, and, (iii) Realizing thecustomized RTDBMS, using the decided transaction models and mechanismsthat are proven to assure the desired proprieties, and the customization primi-tives provided by the particular RTDBMS platform.

We propose a set of modeling and analysis techniques to facilitate the DAG-GERS process, with emphasis on the first and second steps. Our proposedtechniques rely on a set of formal methods, which create mathematical rep-resentations of the studied systems and properties, and provide a high degreeof assurance via rigorous analysis. For the first step, to better understand andanalyze the application semantics, we propose a taxonomy called DAGGTAX(Data AGGregation TAXonomy) to characterize the features of data aggrega-tion processes at high level [28, 29], and a technique to formally detect theviolations among the features at early design stages [30]. DAGGTAX-basedspecification of data aggregation processes, as well as the automatic detectionof violations, are implemented in our SAFARE (SAt-based Feature-orienteddAta aggREgation design) tool [30].

To enable explicit specification of logical data consistency and temporalcorrectness properties, and facilitate intuitive analysis for designers in a highlevel, we propose a Unified Modeling Language (UML) profile, called UTRAN(UML for TRANsactions) [26]. This profile offers elements for specifying

6 Chapter 1. Introduction

selection of abort recovery mechanisms, concurrency control algorithms andscheduling policies. We select these properties because their mechanisms mayheavily influence the assurance of each other, while existing techniques do notprovide adequate support for all these properties and mechanisms [25, 26]. Achallenge arises in how to formulate the transactions’ behaviors under vari-ous mechanisms and the desired properties, such that they can be rigorouslyanalyzed with the state-of-art methods and tools.

Our work addresses the above issues, by showing how to systematicallydesign a customized and dependable RTDBMS for real-time systems with dataaggregation, with assured trade-offs between ACID and temporal correctness.We achieve this by proposing a design process as our methodology, calledDAGGERS (Data AGGregation for Embedded Real-time Systems) [27], whichguides the selection of ACID and temporal correctness trade-offs, as well as theconcrete mechanisms to provide property assurance within the process. TheDAGGERS process consists of the following steps: (i) Specifying the dataaggregation processes and other data-related computations, as well as the logi-cal data consistency and temporal correctness properties, from system require-ments, (ii) Selecting the appropriate transaction models to model the compu-tations, and deciding the corresponding transaction management mechanismsthat can guarantee the properties, via formal analysis, and, (iii) Realizing thecustomized RTDBMS, using the decided transaction models and mechanismsthat are proven to assure the desired proprieties, and the customization primi-tives provided by the particular RTDBMS platform.

We propose a set of modeling and analysis techniques to facilitate the DAG-GERS process, with emphasis on the first and second steps. Our proposedtechniques rely on a set of formal methods, which create mathematical rep-resentations of the studied systems and properties, and provide a high degreeof assurance via rigorous analysis. For the first step, to better understand andanalyze the application semantics, we propose a taxonomy called DAGGTAX(Data AGGregation TAXonomy) to characterize the features of data aggrega-tion processes at high level [28, 29], and a technique to formally detect theviolations among the features at early design stages [30]. DAGGTAX-basedspecification of data aggregation processes, as well as the automatic detectionof violations, are implemented in our SAFARE (SAt-based Feature-orienteddAta aggREgation design) tool [30].

To enable explicit specification of logical data consistency and temporalcorrectness properties, and facilitate intuitive analysis for designers in a highlevel, we propose a Unified Modeling Language (UML) profile, called UTRAN(UML for TRANsactions) [26]. This profile offers elements for specifying

28

Page 30: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

7

transactions and transactional properties in the first step of DAGGERS, focus-ing on atomicity, isolation and temporal correctness, as well as their corre-sponding RTDBMS mechanisms.

During the second step of DAGGERS, one needs to derive the appropriatetrade-offs between ACID and temporal correctness, and select the correspond-ing transaction management mechanisms from a set of candidate variants. Tosupport this, we propose a formal framework based on UPPAAL Timed Au-tomata (TA) [31], called UPPCART (UPPAAL for Concurrent Atomic Real-time Transactions), to specify and model the transactions with various abortrecovery, concurrency control, and scheduling mechanisms [32, 33, 26]. Thedesired atomicity, isolation and temporal correctness properties of the UPP-CART models can then be verified by model checking with the state-of-the-artUPPAAL model checker [31]. We provide a set of automata patterns as basicunits for modeling the transactions and the mechanisms, which not only tamethe complexity of the models, but also allow them to be reused during the it-erative selection and analysis of various mechanisms. We also propose a tool,called U2Transformer, for the translation from high-level UTRAN specifica-tions into UPPCART models. The tool shields the designers from the formalunderpinning, and reduces the efforts on the formal modeling of the system.

In order to analyze larger scale DBMS, we propose a formal frameworkUPPCART-SMC [34], which extends UPPCART with the capability of sta-tistical model checking. In this framework, we model the transactions andthe transaction management mechanisms as Stochastic Timed Automata (STA)[35], and verify the probabilities of atomicity, isolation and temporal correct-ness using UPPAAL SMC [35], the extension of UPPAAL for statistical modelchecking. UPPAAL SMC can answer questions on whether the probabilityof property satisfaction meets a provided threshold, for instance, whether theprobability of ensuring isolation is higher than 99,9%. It can also performprobability estimation (e.g., what is the probability that some property holds?)that returns an approximation interval for that probability, with a given con-fidence. Such analysis helps designers to evaluate the appropriateness of thecustomization choices.

We validate our proposed techniques and tools by demonstrating their ap-plicability via a series of industrial use cases, in which customized real-timedata management plays an essential role. Among the validations, DAGGTAXand SAFARE are demonstrated via the analysis of the Hardware Assisted Trace(HAT) framework [29], and the design of a cloud monitoring system for auto-scaling [30]. These use cases demonstrate that our proposed taxonomy can helpto ease the effort in designing data aggregation for real-time data-intensive sys-

7

transactions and transactional properties in the first step of DAGGERS, focus-ing on atomicity, isolation and temporal correctness, as well as their corre-sponding RTDBMS mechanisms.

During the second step of DAGGERS, one needs to derive the appropriatetrade-offs between ACID and temporal correctness, and select the correspond-ing transaction management mechanisms from a set of candidate variants. Tosupport this, we propose a formal framework based on UPPAAL Timed Au-tomata (TA) [31], called UPPCART (UPPAAL for Concurrent Atomic Real-time Transactions), to specify and model the transactions with various abortrecovery, concurrency control, and scheduling mechanisms [32, 33, 26]. Thedesired atomicity, isolation and temporal correctness properties of the UPP-CART models can then be verified by model checking with the state-of-the-artUPPAAL model checker [31]. We provide a set of automata patterns as basicunits for modeling the transactions and the mechanisms, which not only tamethe complexity of the models, but also allow them to be reused during the it-erative selection and analysis of various mechanisms. We also propose a tool,called U2Transformer, for the translation from high-level UTRAN specifica-tions into UPPCART models. The tool shields the designers from the formalunderpinning, and reduces the efforts on the formal modeling of the system.

In order to analyze larger scale DBMS, we propose a formal frameworkUPPCART-SMC [34], which extends UPPCART with the capability of sta-tistical model checking. In this framework, we model the transactions andthe transaction management mechanisms as Stochastic Timed Automata (STA)[35], and verify the probabilities of atomicity, isolation and temporal correct-ness using UPPAAL SMC [35], the extension of UPPAAL for statistical modelchecking. UPPAAL SMC can answer questions on whether the probabilityof property satisfaction meets a provided threshold, for instance, whether theprobability of ensuring isolation is higher than 99,9%. It can also performprobability estimation (e.g., what is the probability that some property holds?)that returns an approximation interval for that probability, with a given con-fidence. Such analysis helps designers to evaluate the appropriateness of thecustomization choices.

We validate our proposed techniques and tools by demonstrating their ap-plicability via a series of industrial use cases, in which customized real-timedata management plays an essential role. Among the validations, DAGGTAXand SAFARE are demonstrated via the analysis of the Hardware Assisted Trace(HAT) framework [29], and the design of a cloud monitoring system for auto-scaling [30]. These use cases demonstrate that our proposed taxonomy can helpto ease the effort in designing data aggregation for real-time data-intensive sys-

29

Page 31: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

8 Chapter 1. Introduction

tems, and prevent software design flaws prior to implementation. We demon-strate the applicability and usefulness of UTRAN, UPPCART, UPPCART-SMC, as well as U2Transformer, via the design of a collision avoidance systemfor autonomous construction vehicles. The validation demonstrates that thetransactions and their desired properties can be easily specified, automaticallyformalized, and formally analyzed using the state-of-art (statistical) modelchecking tools, which guides the designers towards appropriate customiza-tions.

1.1 Thesis OverviewThis thesis is divided into two parts. The first part is a summary of our research,including the preliminaries of this thesis (Chapter 2), the problem formulationand our research goals (Chapter 3), the research methods applied in this thesis(Chapter 4), a brief overview of our contributions (Chapter 5), a discussion onthe related work (Chapter 6), as well as our conclusions, limitations and futurework (Chapter 7).

The second part is a collection of papers included in this thesis, listed asfollows:

Paper A Data Aggregation Processes: A Survey, A Taxonomy, and DesignGuidelines. Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu.In Computing. Springer. 2018.

Abstract: Data aggregation processes are essential constituents for data man-agement in modern computer systems, such as decision support systems andInternet of Things (IoT) systems. Understanding the common and variablefeatures of data aggregation processes, especially their implications, is key toimproving the quality of the designed system and reduce design effort. Inthis paper, we present a survey of data aggregation processes in a variety ofapplication domains from literature. We investigate their common and vari-able features, which serves as the basis of our previously proposed taxonomycalled DAGGTAX. By studying the implications of the DAGGTAX features,we formulate a set of constraints to be satisfied during design, which helpsto reduce the design space. We also provide a set of design heuristics thatcould help designers to decide the appropriate mechanisms for achieving theselected features. We apply DAGGTAX on industrial case studies, showingthat DAGGTAX not only strengthens the understanding, but also serves as the

8 Chapter 1. Introduction

tems, and prevent software design flaws prior to implementation. We demon-strate the applicability and usefulness of UTRAN, UPPCART, UPPCART-SMC, as well as U2Transformer, via the design of a collision avoidance systemfor autonomous construction vehicles. The validation demonstrates that thetransactions and their desired properties can be easily specified, automaticallyformalized, and formally analyzed using the state-of-art (statistical) modelchecking tools, which guides the designers towards appropriate customiza-tions.

1.1 Thesis OverviewThis thesis is divided into two parts. The first part is a summary of our research,including the preliminaries of this thesis (Chapter 2), the problem formulationand our research goals (Chapter 3), the research methods applied in this thesis(Chapter 4), a brief overview of our contributions (Chapter 5), a discussion onthe related work (Chapter 6), as well as our conclusions, limitations and futurework (Chapter 7).

The second part is a collection of papers included in this thesis, listed asfollows:

Paper A Data Aggregation Processes: A Survey, A Taxonomy, and DesignGuidelines. Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu.In Computing. Springer. 2018.

Abstract: Data aggregation processes are essential constituents for data man-agement in modern computer systems, such as decision support systems andInternet of Things (IoT) systems. Understanding the common and variablefeatures of data aggregation processes, especially their implications, is key toimproving the quality of the designed system and reduce design effort. Inthis paper, we present a survey of data aggregation processes in a variety ofapplication domains from literature. We investigate their common and vari-able features, which serves as the basis of our previously proposed taxonomycalled DAGGTAX. By studying the implications of the DAGGTAX features,we formulate a set of constraints to be satisfied during design, which helpsto reduce the design space. We also provide a set of design heuristics thatcould help designers to decide the appropriate mechanisms for achieving theselected features. We apply DAGGTAX on industrial case studies, showingthat DAGGTAX not only strengthens the understanding, but also serves as the

30

Page 32: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

1.1 Thesis Overview 9

foundation of a design tool which facilitates the model-driven design of dataaggregation processes.

My contribution: I was the main driver of the paper. I performed the sur-vey on data aggregation processes, proposed the taxonomy and formulated theconstraints and heuristics. I also conducted the industrial case study and wrotethe major part of the paper. The other authors have contributed with importantideas and comments.

Paper B Tool-Supported Design of Data Aggregation Processes in CloudMonitoring Systems. Simin Cai, Barbara Gallina, Dag Nyström, Cristina Se-celeanu, and Alf Larsson. In Journal of Ambient Intelligence and HumanizedComputing. Springer. 2018.

Abstract: Efficient monitoring of a cloud system involves multiple aggrega-tion processes and large amounts of data with various and interdependent re-quirements. A thorough understanding and analysis of the characteristics ofdata aggregation processes can help to improve the software quality and re-duce development cost. In this paper, we propose a systematic approach fordesigning data aggregation processes in cloud monitoring systems. Our ap-proach applies a feature-oriented taxonomy called DAGGTAX (Data AGGre-gation TAXonomy) to systematically specify the features of the designed sys-tem, and SAT-based analysis to check the consistency of the specifications.Following our approach, designers first specify the data aggregation processesby selecting and composing the features from DAGGTAX. These specified fea-tures, as well as design constraints, are then formalized as propositional formu-las, whose consistency is checked by the Z3 SAT solver. To support our ap-proach, we propose a design tool called SAFARE (SAt-based Feature-orienteddAta aggREgation design), which implements DAGGTAX-based specificationof data aggregation processes and design constraints, and integrates the state-of-the-art solver Z3 for automated analysis. We also propose a set of generaldesign constraints, which are integrated by default in SAFARE. The effective-ness of our approach is demonstrated via a case study provided by industry,which aims to design a cloud monitoring system for video streaming. Thecase study shows that DAGGTAX and SAFARE can help designers to identifyreusable features, eliminate infeasible design decisions, and derive crucial sys-tem parameters.

My contribution: I was the main driver of the paper. I proposed the formal

1.1 Thesis Overview 9

foundation of a design tool which facilitates the model-driven design of dataaggregation processes.

My contribution: I was the main driver of the paper. I performed the sur-vey on data aggregation processes, proposed the taxonomy and formulated theconstraints and heuristics. I also conducted the industrial case study and wrotethe major part of the paper. The other authors have contributed with importantideas and comments.

Paper B Tool-Supported Design of Data Aggregation Processes in CloudMonitoring Systems. Simin Cai, Barbara Gallina, Dag Nyström, Cristina Se-celeanu, and Alf Larsson. In Journal of Ambient Intelligence and HumanizedComputing. Springer. 2018.

Abstract: Efficient monitoring of a cloud system involves multiple aggrega-tion processes and large amounts of data with various and interdependent re-quirements. A thorough understanding and analysis of the characteristics ofdata aggregation processes can help to improve the software quality and re-duce development cost. In this paper, we propose a systematic approach fordesigning data aggregation processes in cloud monitoring systems. Our ap-proach applies a feature-oriented taxonomy called DAGGTAX (Data AGGre-gation TAXonomy) to systematically specify the features of the designed sys-tem, and SAT-based analysis to check the consistency of the specifications.Following our approach, designers first specify the data aggregation processesby selecting and composing the features from DAGGTAX. These specified fea-tures, as well as design constraints, are then formalized as propositional formu-las, whose consistency is checked by the Z3 SAT solver. To support our ap-proach, we propose a design tool called SAFARE (SAt-based Feature-orienteddAta aggREgation design), which implements DAGGTAX-based specificationof data aggregation processes and design constraints, and integrates the state-of-the-art solver Z3 for automated analysis. We also propose a set of generaldesign constraints, which are integrated by default in SAFARE. The effective-ness of our approach is demonstrated via a case study provided by industry,which aims to design a cloud monitoring system for video streaming. Thecase study shows that DAGGTAX and SAFARE can help designers to identifyreusable features, eliminate infeasible design decisions, and derive crucial sys-tem parameters.

My contribution: I was the main driver of the paper. I proposed the formal

31

Page 33: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

10 Chapter 1. Introduction

analysis of the taxonomy-based specification, and developed the tool. I alsoconducted the industrial case study and wrote the major part of the paper. Theother authors have contributed with important ideas and comments.

Paper C Towards the Verification of Temporal Data Consistency in Real-Time Data Management. Simin Cai, Barbara Gallina, Dag Nyström, and CristinaSeceleanu. In Proceedings of the 2nd International Workshop on Modeling,Analysis and Control of Complex Cyber-Physical Systems (CPSDATA). IEEE.2016.

Abstract: Many Cyber-Physical Systems (CPSs) require both timeliness ofcomputation and temporal consistency of their data. Therefore, when usingreal-time databases in a real-time CPS application, the Real-Time DatabaseManagement Systems (RTDBMSs) must ensure both transaction timelinessand temporal data consistency. RTDBMSs prevent unwanted interferences ofconcurrent transactions via concurrency control, which in turn has a signifi-cant impact on the timeliness and temporal consistency of data. Therefore itis important to verify, already at early design stages that these properties arenot breached by the concurrency control. However, most often such early onguarantees of properties under concurrency control are missing. In this paperwe show how to verify transaction timeliness and temporal data consistencyusing model checking. We model the transaction work units, the data and theconcurrency control mechanism as a network of timed automata, and specifythe properties in TCTL. The properties are then checked exhaustively and au-tomatically using the UPPAAL model checker.

My contribution: I was the main driver of the paper. I proposed the modelingand verification approach presented in the paper and wrote the major part of thetext. The other authors have contributed with important ideas and comments.

Paper D A Formal Approach for Flexible Modeling and Analysis of Trans-action Timeliness and Isolation. Simin Cai, Barbara Gallina, Dag Nyström,and Cristina Seceleanu. In Proceedings of the 24th International Conferenceon Real-Time Networks and Systems (RTNS). ACM. 2016.

Abstract: Concurrency Control (CC) ensures absence of undesired interfer-ence in transaction-based systems, e.g. by guaranteeing isolation, thus con-tributing to their dependability. However, CC may introduce unpredictable

10 Chapter 1. Introduction

analysis of the taxonomy-based specification, and developed the tool. I alsoconducted the industrial case study and wrote the major part of the paper. Theother authors have contributed with important ideas and comments.

Paper C Towards the Verification of Temporal Data Consistency in Real-Time Data Management. Simin Cai, Barbara Gallina, Dag Nyström, and CristinaSeceleanu. In Proceedings of the 2nd International Workshop on Modeling,Analysis and Control of Complex Cyber-Physical Systems (CPSDATA). IEEE.2016.

Abstract: Many Cyber-Physical Systems (CPSs) require both timeliness ofcomputation and temporal consistency of their data. Therefore, when usingreal-time databases in a real-time CPS application, the Real-Time DatabaseManagement Systems (RTDBMSs) must ensure both transaction timelinessand temporal data consistency. RTDBMSs prevent unwanted interferences ofconcurrent transactions via concurrency control, which in turn has a signifi-cant impact on the timeliness and temporal consistency of data. Therefore itis important to verify, already at early design stages that these properties arenot breached by the concurrency control. However, most often such early onguarantees of properties under concurrency control are missing. In this paperwe show how to verify transaction timeliness and temporal data consistencyusing model checking. We model the transaction work units, the data and theconcurrency control mechanism as a network of timed automata, and specifythe properties in TCTL. The properties are then checked exhaustively and au-tomatically using the UPPAAL model checker.

My contribution: I was the main driver of the paper. I proposed the modelingand verification approach presented in the paper and wrote the major part of thetext. The other authors have contributed with important ideas and comments.

Paper D A Formal Approach for Flexible Modeling and Analysis of Trans-action Timeliness and Isolation. Simin Cai, Barbara Gallina, Dag Nyström,and Cristina Seceleanu. In Proceedings of the 24th International Conferenceon Real-Time Networks and Systems (RTNS). ACM. 2016.

Abstract: Concurrency Control (CC) ensures absence of undesired interfer-ence in transaction-based systems, e.g. by guaranteeing isolation, thus con-tributing to their dependability. However, CC may introduce unpredictable

32

Page 34: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

1.1 Thesis Overview 11

delays and breach timeliness, which is unwanted for real-time transactions. Toavoid deadline misses, some CC algorithms relax isolation in favor of timeli-ness, whereas other alternatives limit possible interleavings by leveraging real-time constraints and preserve isolation. Selecting an appropriate CC algorithmthat can guarantee timeliness at an acceptable level of isolation thus becomesan essential concern for system designers. However, trading-off isolation fortimeliness is not easy with existing analysis techniques in database and real-time communities. In this paper, we propose to use model checking of a timedautomata model of the transaction system, in order to check the traded-off time-liness and isolation. Our solution provides modularized modeling for the basictransactional constituents, which reduces the efforts for selecting the appropri-ate CC algorithm.

My contribution: I was the main driver of the paper. I proposed the modelingand verification approach presented in the paper and wrote the major part of thetext. The other authors have contributed with important ideas and comments.

Paper E Specification and Automated Verification of Atomic Concurrent Real-Time Transactions. Simin Cai, Barbara Gallina, Dag Nyström, and CristinaSeceleanu. Submitted to Software and Systems Modeling (SoSyM). 2019. Ashort version is published in Proceedings of the 23rd Pacific Rim InternationalSymposium on Dependable Computing (PRDC). IEEE. 2018.

Abstract: Unambiguous specification and rigorous analysis of transactionatomicity, isolation and temporal correctness is important for the dependabil-ity of many database-centric systems. While both high-level specifications andverifiable formal representations for transactions have been proposed, trans-formation between these two remains undefined and subject to manual work,which can require considerable effort and is prone to error. In this paper, webridge the gap between our previously proposed high-level specification lan-guage UTRAN for transactions, and our previous timed-automata-based UP-PCART framework, which allows transaction properties to be verified by theUPPAAL model checker. We provide a translational semantics between thesetwo languages, and facilitate automated transformation from UTRAN specifi-cations to the UPPCART models with tool automation. We also extend the ex-pressiveness of UTRAN and UPPCART to incorporate transaction sequencesand their timing properties. The applicability of our tool chain is demonstratedvia an industrial case study.

1.1 Thesis Overview 11

delays and breach timeliness, which is unwanted for real-time transactions. Toavoid deadline misses, some CC algorithms relax isolation in favor of timeli-ness, whereas other alternatives limit possible interleavings by leveraging real-time constraints and preserve isolation. Selecting an appropriate CC algorithmthat can guarantee timeliness at an acceptable level of isolation thus becomesan essential concern for system designers. However, trading-off isolation fortimeliness is not easy with existing analysis techniques in database and real-time communities. In this paper, we propose to use model checking of a timedautomata model of the transaction system, in order to check the traded-off time-liness and isolation. Our solution provides modularized modeling for the basictransactional constituents, which reduces the efforts for selecting the appropri-ate CC algorithm.

My contribution: I was the main driver of the paper. I proposed the modelingand verification approach presented in the paper and wrote the major part of thetext. The other authors have contributed with important ideas and comments.

Paper E Specification and Automated Verification of Atomic Concurrent Real-Time Transactions. Simin Cai, Barbara Gallina, Dag Nyström, and CristinaSeceleanu. Submitted to Software and Systems Modeling (SoSyM). 2019. Ashort version is published in Proceedings of the 23rd Pacific Rim InternationalSymposium on Dependable Computing (PRDC). IEEE. 2018.

Abstract: Unambiguous specification and rigorous analysis of transactionatomicity, isolation and temporal correctness is important for the dependabil-ity of many database-centric systems. While both high-level specifications andverifiable formal representations for transactions have been proposed, trans-formation between these two remains undefined and subject to manual work,which can require considerable effort and is prone to error. In this paper, webridge the gap between our previously proposed high-level specification lan-guage UTRAN for transactions, and our previous timed-automata-based UP-PCART framework, which allows transaction properties to be verified by theUPPAAL model checker. We provide a translational semantics between thesetwo languages, and facilitate automated transformation from UTRAN specifi-cations to the UPPCART models with tool automation. We also extend the ex-pressiveness of UTRAN and UPPCART to incorporate transaction sequencesand their timing properties. The applicability of our tool chain is demonstratedvia an industrial case study.

33

Page 35: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

12 Chapter 1. Introduction

My contribution: I was the main driver of the paper. I proposed the UMLprofile and the extended modeling and verification framework presented in thepaper, and performed the case study. I also wrote the major part of the text.The other authors contributed with ideas and comments.

Paper F Statistical Model Checking for Real-Time Database Manage-ment Systems: a Case Study. Simin Cai, Barbara Gallina, Dag Nyström, andCristina Seceleanu. In Proceedings of the 24th IEEE Conference on EmergingTechnologies and Factory Automation (ETFA). IEEE. 2019.

Abstract: Many industrial control systems manage critical data using DatabaseManagement Systems (DBMS). The correctness of transactions, especiallytheir atomicity, isolation and temporal correctness, is essential for the depend-ability of the entire system. Existing methods and techniques, however, eitherlack the ability to analyze the interplay of these properties, or do not scale wellfor systems with large amounts of transactions and data, and complex trans-action management mechanisms. In this paper, we propose to analyze largescale real-time database systems using statistical model checking. We proposea pattern-based framework, by extending our previous work, to model the real-time DBMS as a network of stochastic timed automata, which can be analyzedby the statistical model checker UPPAAL SMC. To demonstrate the applica-bility and usefulness, we present an industrial case study, in which we designa collision avoidance system for multiple autonomous construction vehicles,via concurrency control of a real-time DBMS. The correctness of the designedsystem is verified using our proposed framework.

My contribution: I was the main driver of the paper. I proposed the frameworkin the paper and conducted the case study. I also wrote the major part of thetext. The other authors contributed with ideas and comments.

12 Chapter 1. Introduction

My contribution: I was the main driver of the paper. I proposed the UMLprofile and the extended modeling and verification framework presented in thepaper, and performed the case study. I also wrote the major part of the text.The other authors contributed with ideas and comments.

Paper F Statistical Model Checking for Real-Time Database Manage-ment Systems: a Case Study. Simin Cai, Barbara Gallina, Dag Nyström, andCristina Seceleanu. In Proceedings of the 24th IEEE Conference on EmergingTechnologies and Factory Automation (ETFA). IEEE. 2019.

Abstract: Many industrial control systems manage critical data using DatabaseManagement Systems (DBMS). The correctness of transactions, especiallytheir atomicity, isolation and temporal correctness, is essential for the depend-ability of the entire system. Existing methods and techniques, however, eitherlack the ability to analyze the interplay of these properties, or do not scale wellfor systems with large amounts of transactions and data, and complex trans-action management mechanisms. In this paper, we propose to analyze largescale real-time database systems using statistical model checking. We proposea pattern-based framework, by extending our previous work, to model the real-time DBMS as a network of stochastic timed automata, which can be analyzedby the statistical model checker UPPAAL SMC. To demonstrate the applica-bility and usefulness, we present an industrial case study, in which we designa collision avoidance system for multiple autonomous construction vehicles,via concurrency control of a real-time DBMS. The correctness of the designedsystem is verified using our proposed framework.

My contribution: I was the main driver of the paper. I proposed the frameworkin the paper and conducted the case study. I also wrote the major part of thetext. The other authors contributed with ideas and comments.

34

Page 36: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Chapter 2

Preliminaries

2.1 Data AggregationData aggregation is the process of producing a synthesized form of data frommultiple data items using an aggregate function [21]. It is applied extensivelyin information systems [21, 36, 37, 24]. For instance, in database systems,data tuples are aggregated to compute statistical values, such as the averagesalary of a department; in resource-constrained systems, large amounts of dataare aggregated as minimum and maximum values over time in order to savestorage or transmission resources; in systems concerning privacy and security,aggregating user details into general profiles prevents information exposure.

In complex information systems, the aggregated data of one aggregationprocess could serve as the raw data of another process, forming a multi-levelaggregation architecture. For instance, a cooperative autonomous robot aggre-gates the states of its companions to make a decision, which could again betransmitted to other robots as the raw data for their aggregation [38]. VigilNet[39], an integrated multi-layer sensor network system, exploits four levels ofaggregation to perform real-time surveillance. As shown in Figure 2.1, the first-level aggregation takes place in the sensor layer, in which surveillance sensordata are aggregated to form detection confidence vectors. These confidencevectors are used as raw data for the second-level aggregation in the node layer,to produce a report of the tracked targets. Using the reports from the nodes,the third-level aggregation creates aggregated reports for each group of nodes.At last, in the base layer, reports from the groups of nodes are aggregated to-gether with historical data to make the estimation of the targets. Both the data

13

Chapter 2

Preliminaries

2.1 Data AggregationData aggregation is the process of producing a synthesized form of data frommultiple data items using an aggregate function [21]. It is applied extensivelyin information systems [21, 36, 37, 24]. For instance, in database systems,data tuples are aggregated to compute statistical values, such as the averagesalary of a department; in resource-constrained systems, large amounts of dataare aggregated as minimum and maximum values over time in order to savestorage or transmission resources; in systems concerning privacy and security,aggregating user details into general profiles prevents information exposure.

In complex information systems, the aggregated data of one aggregationprocess could serve as the raw data of another process, forming a multi-levelaggregation architecture. For instance, a cooperative autonomous robot aggre-gates the states of its companions to make a decision, which could again betransmitted to other robots as the raw data for their aggregation [38]. VigilNet[39], an integrated multi-layer sensor network system, exploits four levels ofaggregation to perform real-time surveillance. As shown in Figure 2.1, the first-level aggregation takes place in the sensor layer, in which surveillance sensordata are aggregated to form detection confidence vectors. These confidencevectors are used as raw data for the second-level aggregation in the node layer,to produce a report of the tracked targets. Using the reports from the nodes,the third-level aggregation creates aggregated reports for each group of nodes.At last, in the base layer, reports from the groups of nodes are aggregated to-gether with historical data to make the estimation of the targets. Both the data

13

35

Page 37: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

14 Chapter 2. Preliminaries

Sensor-layer Aggregation

Sensor 1 Sensor 2 Sensor N…

Detection Confidence

1

Detection Confidence

2

Detection Confidence

N

Node-layer Aggregation

Group-layer Aggregation

Node 1 Node 2 Node N…

Group 1 Group N…

Base-layer Aggregation

Figure 2.1: Data aggregation architecture of VigilNet [39]

and the aggregation processes in each level could have their unique character-istics. In VigilNet, the values of the sensor data become obsolete much fasterthan the historical data. Each type of sensor data also differs in when and howthe data are collected and used. The aggregation processes also have differentcharacteristics. In these four levels, the processes are triggered by differentconditions, and apply various functions to perform aggregation. Although allthese processes have to meet real-time requirements, the aggregation processesin the first and second levels have more strict time constraints than the otheraggregation processes.

In this thesis, we have surveyed how Data Aggregation Processes (DAP)are designed in modern information systems, and studied their common andvariable characteristics. Based on these studies we propose our taxonomy ofdata aggregation processes in Chapter 8, and tool-supported analysis of DAPspecifications in Chapter 9.

2.2 Transactions and Customized TransactionManagement

A transaction is a partially-ordered set of logically-related operations on thedatabase, which as a whole guarantees logical data consistency [5], that is,satisfying a set of integrity constraints imposed on the database [40]. Thepartially-ordered set of operations is called a work unit [14], which may in-clude read operations that read data from the database, write operations thatmodify the data in the database, and be extended with other operations that donot interact with the database directly. Initially, a transaction maintains logi-cal data consistency by ensuring the so-called ACID (Atomicity, Consistency,Isolation, and Durability) properties during the execution [5, 6]. Atomicity

14 Chapter 2. Preliminaries

Sensor-layer Aggregation

Sensor 1 Sensor 2 Sensor N…

Detection Confidence

1

Detection Confidence

2

Detection Confidence

N

Node-layer Aggregation

Group-layer Aggregation

Node 1 Node 2 Node N…

Group 1 Group N…

Base-layer Aggregation

Figure 2.1: Data aggregation architecture of VigilNet [39]

and the aggregation processes in each level could have their unique character-istics. In VigilNet, the values of the sensor data become obsolete much fasterthan the historical data. Each type of sensor data also differs in when and howthe data are collected and used. The aggregation processes also have differentcharacteristics. In these four levels, the processes are triggered by differentconditions, and apply various functions to perform aggregation. Although allthese processes have to meet real-time requirements, the aggregation processesin the first and second levels have more strict time constraints than the otheraggregation processes.

In this thesis, we have surveyed how Data Aggregation Processes (DAP)are designed in modern information systems, and studied their common andvariable characteristics. Based on these studies we propose our taxonomy ofdata aggregation processes in Chapter 8, and tool-supported analysis of DAPspecifications in Chapter 9.

2.2 Transactions and Customized TransactionManagement

A transaction is a partially-ordered set of logically-related operations on thedatabase, which as a whole guarantees logical data consistency [5], that is,satisfying a set of integrity constraints imposed on the database [40]. Thepartially-ordered set of operations is called a work unit [14], which may in-clude read operations that read data from the database, write operations thatmodify the data in the database, and be extended with other operations that donot interact with the database directly. Initially, a transaction maintains logi-cal data consistency by ensuring the so-called ACID (Atomicity, Consistency,Isolation, and Durability) properties during the execution [5, 6]. Atomicity

36

Page 38: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

2.2 Transactions and Customized Transaction Management 15

refers to the “all-or-nothing” semantics, meaning that if a transaction fails be-fore completion, all its changes should be undone. Consistency requires that atransaction executed alone should not violate any logical constraints. Isolationrefers to the property that no uncommitted changes within a transaction shouldbe seen by any other, in a concurrent execution. If a transaction is committed,durability requires that its changes should be permanent and able to survivesystem failures.

Program 2.1: Transaction T that transfers 100 from A to B

Beginread Asubtract(A, 100)write Aif A<0, Abortread Badd(B, 100)write B

Commit

Example 1. Let us consider two bank accounts, A and B, each having aninitial balance of 150. Program 2.1 shows a transaction T that transfers 100from account A to B. In this transaction, “Begin” indicates the start of thetransaction, while “Commit” and “Abort” indicate the successful terminationand failure, respectively. The transaction first reads the value of A from thedatabase to a local variable, subtracts 100 from A, and writes the new valueback to the database. Similarly, it then adds 100 to B in the database. WhenT is executed alone and commits, the values of A and B are 50 and 250, re-spectively. Let us assume that full ACID is ensured by the DBMS. In case Tis aborted during the execution, the values of A and B are exactly the same asthe values when T is started, that is, 150 for both (atomicity assurance). Anintegrity constraint is implemented to make sure that the balance of A is nevernegative, if T is executed alone (consistency assurance). If two instances of Tare executed concurrently, their effects on the database are as if they are exe-cuted one after another, that is, one transaction changes A to 50 and B to 250,while the other one gets aborted (isolation assurance). Once T has committed,the new values are permanently stored in the disk, and can be recovered if theDBMS crashes (durability assurance).

A database management system enforces transaction properties by apply-ing various mechanisms in transaction management [12]. For instance, recov-

2.2 Transactions and Customized Transaction Management 15

refers to the “all-or-nothing” semantics, meaning that if a transaction fails be-fore completion, all its changes should be undone. Consistency requires that atransaction executed alone should not violate any logical constraints. Isolationrefers to the property that no uncommitted changes within a transaction shouldbe seen by any other, in a concurrent execution. If a transaction is committed,durability requires that its changes should be permanent and able to survivesystem failures.

Program 2.1: Transaction T that transfers 100 from A to B

Beginread Asubtract(A, 100)write Aif A<0, Abortread Badd(B, 100)write B

Commit

Example 1. Let us consider two bank accounts, A and B, each having aninitial balance of 150. Program 2.1 shows a transaction T that transfers 100from account A to B. In this transaction, “Begin” indicates the start of thetransaction, while “Commit” and “Abort” indicate the successful terminationand failure, respectively. The transaction first reads the value of A from thedatabase to a local variable, subtracts 100 from A, and writes the new valueback to the database. Similarly, it then adds 100 to B in the database. WhenT is executed alone and commits, the values of A and B are 50 and 250, re-spectively. Let us assume that full ACID is ensured by the DBMS. In case Tis aborted during the execution, the values of A and B are exactly the same asthe values when T is started, that is, 150 for both (atomicity assurance). Anintegrity constraint is implemented to make sure that the balance of A is nevernegative, if T is executed alone (consistency assurance). If two instances of Tare executed concurrently, their effects on the database are as if they are exe-cuted one after another, that is, one transaction changes A to 50 and B to 250,while the other one gets aborted (isolation assurance). Once T has committed,the new values are permanently stored in the disk, and can be recovered if theDBMS crashes (durability assurance).

A database management system enforces transaction properties by apply-ing various mechanisms in transaction management [12]. For instance, recov-

37

Page 39: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

16 Chapter 2. Preliminaries

ery techniques, such as rollback that undoes all partial results of an abortedtransaction, can be applied to restore the consistency of database and achieveatomicity. Concurrency control techniques are applied by DBMS to preventunwanted interleavings of concurrent transactions from occurring, in order toguarantee isolation. One concurrency control example to provide full isolationis to lock the shared data such that the conflicting transactions are executedserially.

2.2.1 Relaxed ACID PropertiesAlthough full ACID assurance achieves a high level of logical data consistencyand has thus witnessed success in many applications, it is not a “one-size-fits-all” solution for all applications [41, 14]. First, full ACID assurance might notbe necessary, or desired, depending on the application semantics. For instance,in Computer Supported Cooperation Work (CSCW) systems, a transaction mayneed to access partial results of another concurrent transaction, which is how-ever prohibited by full isolation [16]. Second, full ACID assurance may not bepossible under the particular system constraints. As stated in the CAP theorem[42], in distributed database systems with network Partitions (P), trade-offsalways occur between logical data Consistency (C) and Availability (A). Fur-ther, the PACELC theorem [43] states that even when partitions do not exist,the database system always needs to trade off between logical data consistencyand latency. Therefore, in scenarios such as cloud computing and high-volumedata stream management, full ACID is relaxed for availability and low latency.

Example 2. Let us consider a travel agency that provides reservation ser-vices. A typical trip reservation transaction could involve the following seriesof activities: booking a flight, booking a hotel, and paying the bill. If full ACIDis ensured, when a customer books a trip, the updated information of availableflight tickets is not visible to another customer until the payment has succeededdue to full isolation. This results in long waiting time for the other customer toget updated information. In addition, due to full atomicity, failing to completethe hotel reservation will lead to the rollback of the entire transaction, includ-ing the flight reservation. The customer will need to book the flight again, butthe tickets may have already been sold out by that time. In order to providebetter service, the traveling agency may desire another transaction model, withrelaxed ACID properties.

The relaxation could be carried out in one or several of the ACID proper-ties, depending on the requirements of the developed system. Decades of re-

16 Chapter 2. Preliminaries

ery techniques, such as rollback that undoes all partial results of an abortedtransaction, can be applied to restore the consistency of database and achieveatomicity. Concurrency control techniques are applied by DBMS to preventunwanted interleavings of concurrent transactions from occurring, in order toguarantee isolation. One concurrency control example to provide full isolationis to lock the shared data such that the conflicting transactions are executedserially.

2.2.1 Relaxed ACID PropertiesAlthough full ACID assurance achieves a high level of logical data consistencyand has thus witnessed success in many applications, it is not a “one-size-fits-all” solution for all applications [41, 14]. First, full ACID assurance might notbe necessary, or desired, depending on the application semantics. For instance,in Computer Supported Cooperation Work (CSCW) systems, a transaction mayneed to access partial results of another concurrent transaction, which is how-ever prohibited by full isolation [16]. Second, full ACID assurance may not bepossible under the particular system constraints. As stated in the CAP theorem[42], in distributed database systems with network Partitions (P), trade-offsalways occur between logical data Consistency (C) and Availability (A). Fur-ther, the PACELC theorem [43] states that even when partitions do not exist,the database system always needs to trade off between logical data consistencyand latency. Therefore, in scenarios such as cloud computing and high-volumedata stream management, full ACID is relaxed for availability and low latency.

Example 2. Let us consider a travel agency that provides reservation ser-vices. A typical trip reservation transaction could involve the following seriesof activities: booking a flight, booking a hotel, and paying the bill. If full ACIDis ensured, when a customer books a trip, the updated information of availableflight tickets is not visible to another customer until the payment has succeededdue to full isolation. This results in long waiting time for the other customer toget updated information. In addition, due to full atomicity, failing to completethe hotel reservation will lead to the rollback of the entire transaction, includ-ing the flight reservation. The customer will need to book the flight again, butthe tickets may have already been sold out by that time. In order to providebetter service, the traveling agency may desire another transaction model, withrelaxed ACID properties.

The relaxation could be carried out in one or several of the ACID proper-ties, depending on the requirements of the developed system. Decades of re-

38

Page 40: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

2.2 Transactions and Customized Transaction Management 17

search have proposed a rich spectrum of transaction models, each consisting ofa particular level of A, C, I, and D [14]. For instance, in the nested transactionmodel [44], if a sub-transaction fails, its parent can decide whether to ignorethe failure, or to restart the failed sub-transaction, rather than to abort the entiretransaction as required by full atomicity. By applying the nested transactionmodel in the travel agency example, the trip reservation transaction can chooseto continue when a failure occurs in the hotel booking sub-transaction. Anotherexample of transaction models with relaxed ACID is the SAGAS model [45],in which a long-running transaction can be divided into steps. As a relaxationof full isolation, the results of these internal steps are visible to other transac-tions before the long-running transaction is committed. By using this model inthe travel agency system, the updated tickets information is allowed to be seenby other customers before the payment is finalized.

In the following subsections, we recall the atomicity and isolation variants,as well as their supporting mechanisms, within the focus of this thesis. Formore information about transaction models and relaxation variants of ACID,we refer the readers to literature [14].

2.2.2 Atomicity Variants and Abort Recovery MechanismsWe consider two atomicity variants in this thesis, failure atomicity and relaxedatomicity, differentiated by how the database consistency should be restoredwhen a transaction is terminated with partial completion due to errors. Failureatomicity requires that the database is recovered to the exact state before theaborted transaction was started. This also complies to the “nothing” semanticsof full atomicity. Relaxed atomicity, on the contrary, only requires that thedatabase is restored into such a state that is considered as consistent accordingto the application semantics, which is not necessarily the exact one before thetransaction. It is a weaker variant of atomicity compared to failure atomicity.

DBMS applies abort recovery mechanisms to realize its supported atomic-ity. The most common mechanism for failure atomicity is rollback, which re-stores database consistency by undoing all changes made by the to-be-abortedtransaction [5]. For instance, the DBMS rolls back transaction T in Program2.1 by rewriting the values of accounts A and B with their old values, whichmay be cached by the DBMS in a transaction log.

We also consider two recovery mechanisms that support relaxed atomicityin this thesis, as follows.

• Immediate compensation executes a sequence of operations immediatelyupon abortion, in order to update the database into a consistent state.

2.2 Transactions and Customized Transaction Management 17

search have proposed a rich spectrum of transaction models, each consisting ofa particular level of A, C, I, and D [14]. For instance, in the nested transactionmodel [44], if a sub-transaction fails, its parent can decide whether to ignorethe failure, or to restart the failed sub-transaction, rather than to abort the entiretransaction as required by full atomicity. By applying the nested transactionmodel in the travel agency example, the trip reservation transaction can chooseto continue when a failure occurs in the hotel booking sub-transaction. Anotherexample of transaction models with relaxed ACID is the SAGAS model [45],in which a long-running transaction can be divided into steps. As a relaxationof full isolation, the results of these internal steps are visible to other transac-tions before the long-running transaction is committed. By using this model inthe travel agency system, the updated tickets information is allowed to be seenby other customers before the payment is finalized.

In the following subsections, we recall the atomicity and isolation variants,as well as their supporting mechanisms, within the focus of this thesis. Formore information about transaction models and relaxation variants of ACID,we refer the readers to literature [14].

2.2.2 Atomicity Variants and Abort Recovery MechanismsWe consider two atomicity variants in this thesis, failure atomicity and relaxedatomicity, differentiated by how the database consistency should be restoredwhen a transaction is terminated with partial completion due to errors. Failureatomicity requires that the database is recovered to the exact state before theaborted transaction was started. This also complies to the “nothing” semanticsof full atomicity. Relaxed atomicity, on the contrary, only requires that thedatabase is restored into such a state that is considered as consistent accordingto the application semantics, which is not necessarily the exact one before thetransaction. It is a weaker variant of atomicity compared to failure atomicity.

DBMS applies abort recovery mechanisms to realize its supported atomic-ity. The most common mechanism for failure atomicity is rollback, which re-stores database consistency by undoing all changes made by the to-be-abortedtransaction [5]. For instance, the DBMS rolls back transaction T in Program2.1 by rewriting the values of accounts A and B with their old values, whichmay be cached by the DBMS in a transaction log.

We also consider two recovery mechanisms that support relaxed atomicityin this thesis, as follows.

• Immediate compensation executes a sequence of operations immediatelyupon abortion, in order to update the database into a consistent state.

39

Page 41: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

18 Chapter 2. Preliminaries

Table 2.1: Atomicity variants and the supporting recovery mechanisms

Atomicity Variants Abort Recovery MechanismsFailure Atomicity Rollback

Relaxed Atomicity Immediate CompensationDeferred Compensation

For instance, when a payment step with debit account fails in a bookingtransaction, a compensation can be initiated immediately by the DBMS,which tries to continue the booking using the client’s credits.

• Deferred compensation also executes an extra sequence of operations torestore consistency. In contrast to immediate compensation, such oper-ations are executed as an ordinary transaction, which is scheduled withother transactions in the DBMS.

Using the compensation mechanisms, the recovery operations are designedflexibly, depending on the application semantics.

To summarize, the recovery mechanisms and their supported atomicityvariants are listed in Table 2.1.

2.2.3 Isolation Variants and Pessimistic ConcurrencyControl Algorithms

In this thesis, we are particularly interested in a set of isolation variants, calledIsolation levels, which represent a well-accepted framework for relaxing iso-lation, and are implemented by most commercial DBMS. The isolation levelsare introduced in the ANSI/ISO SQL-92 standard [46], and later extended andgeneralized by Berenson et al. [47] and Adya et al. [48]. An isolation levelis defined as the property of avoiding a particular subset of phenomena (oranomalies), that is, a particular series of interleaved transaction executions thatcan lead to inconsistent data [48, 46]. Assuming that T1 and T2 are two trans-actions as defined previously, we describe the phenomena introduced by theSQL-92 standard as follows:

• Dirty Read. Transaction T2 reads a data item that was modified by trans-action T1 before T1 commits. If T1 is rolled back, the data read by T2is not valid.

18 Chapter 2. Preliminaries

Table 2.1: Atomicity variants and the supporting recovery mechanisms

Atomicity Variants Abort Recovery MechanismsFailure Atomicity Rollback

Relaxed Atomicity Immediate CompensationDeferred Compensation

For instance, when a payment step with debit account fails in a bookingtransaction, a compensation can be initiated immediately by the DBMS,which tries to continue the booking using the client’s credits.

• Deferred compensation also executes an extra sequence of operations torestore consistency. In contrast to immediate compensation, such oper-ations are executed as an ordinary transaction, which is scheduled withother transactions in the DBMS.

Using the compensation mechanisms, the recovery operations are designedflexibly, depending on the application semantics.

To summarize, the recovery mechanisms and their supported atomicityvariants are listed in Table 2.1.

2.2.3 Isolation Variants and Pessimistic ConcurrencyControl Algorithms

In this thesis, we are particularly interested in a set of isolation variants, calledIsolation levels, which represent a well-accepted framework for relaxing iso-lation, and are implemented by most commercial DBMS. The isolation levelsare introduced in the ANSI/ISO SQL-92 standard [46], and later extended andgeneralized by Berenson et al. [47] and Adya et al. [48]. An isolation levelis defined as the property of avoiding a particular subset of phenomena (oranomalies), that is, a particular series of interleaved transaction executions thatcan lead to inconsistent data [48, 46]. Assuming that T1 and T2 are two trans-actions as defined previously, we describe the phenomena introduced by theSQL-92 standard as follows:

• Dirty Read. Transaction T2 reads a data item that was modified by trans-action T1 before T1 commits. If T1 is rolled back, the data read by T2is not valid.

40

Page 42: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

2.2 Transactions and Customized Transaction Management 19

Table 2.2: Isolation levels in the ANSI/ISO SQL-92 standard [46]

Isolation level Dirty read Non-repeatable Read PhantomRead Uncommitted Possible Possible PossibleRead Committed Not Possible Possible PossibleRepeatable Reads Not Possible Not Possible PossibleSerializability Not Possible Not Possible Not Possible

• Non-repeatable Read. Transaction T1 reads a data item. Before T1commits, T2 modifies this data item and commits. If T1 reads the samedata again, it will receive a different value, and thus the data used by T1becomes inconsistent.

• Phantom. Transaction T1 reads a set of data items that satisfy a searchcondition. Before T1 commits, T2 modifies a data item that affects theresult of the search condition and commits. If T1 reads data with thesame condition again, it will receive a different set of items, and thus thedata used by T1 become inconsistent.

Four isolation levels are defined in the SQL-92 standards, which are ReadUncommitted (the most relaxed isolation), Read Committed, Repeatable Reads,and Serializability (the most strict isolation). As listed in Table 2.2, the Serial-izability level precludes all types of phenomena, the Read Uncommitted levelallows all these phenomena, whereas other levels are defined to preclude a se-lected set of the phenomena.

Among various types of concurrency control applied in DBMS, in this the-sis we focus on one of the most common types called Pessimistic Concur-rency Control (PCC), which employs locking techniques to prevent interfer-ences [12]. In PCC, a transaction needs to acquire a lock before it accessesthe data, and release the lock after using the data. The DBMS decides whichtransactions should be granted with the lock, wait, or be aborted, when lockconflicts occur [12].

A wide range of PCC algorithms have been proposed in literature [12].They differ from each other in the types of locks, the locking durations, as wellas the conflict resolution policies. As a result, these algorithms rule out varioustypes of phenomena, and achieve different levels of isolation. For instance,as explained by Gray et al. [49] and Berenson et al. [47], one can achievethe different SQL-92 isolation levels by adjusting the lock types and lockingdurations (Table 2.3). In this table, a lock on a data item refers to the fact that a

2.2 Transactions and Customized Transaction Management 19

Table 2.2: Isolation levels in the ANSI/ISO SQL-92 standard [46]

Isolation level Dirty read Non-repeatable Read PhantomRead Uncommitted Possible Possible PossibleRead Committed Not Possible Possible PossibleRepeatable Reads Not Possible Not Possible PossibleSerializability Not Possible Not Possible Not Possible

• Non-repeatable Read. Transaction T1 reads a data item. Before T1commits, T2 modifies this data item and commits. If T1 reads the samedata again, it will receive a different value, and thus the data used by T1becomes inconsistent.

• Phantom. Transaction T1 reads a set of data items that satisfy a searchcondition. Before T1 commits, T2 modifies a data item that affects theresult of the search condition and commits. If T1 reads data with thesame condition again, it will receive a different set of items, and thus thedata used by T1 become inconsistent.

Four isolation levels are defined in the SQL-92 standards, which are ReadUncommitted (the most relaxed isolation), Read Committed, Repeatable Reads,and Serializability (the most strict isolation). As listed in Table 2.2, the Serial-izability level precludes all types of phenomena, the Read Uncommitted levelallows all these phenomena, whereas other levels are defined to preclude a se-lected set of the phenomena.

Among various types of concurrency control applied in DBMS, in this the-sis we focus on one of the most common types called Pessimistic Concur-rency Control (PCC), which employs locking techniques to prevent interfer-ences [12]. In PCC, a transaction needs to acquire a lock before it accessesthe data, and release the lock after using the data. The DBMS decides whichtransactions should be granted with the lock, wait, or be aborted, when lockconflicts occur [12].

A wide range of PCC algorithms have been proposed in literature [12].They differ from each other in the types of locks, the locking durations, as wellas the conflict resolution policies. As a result, these algorithms rule out varioustypes of phenomena, and achieve different levels of isolation. For instance,as explained by Gray et al. [49] and Berenson et al. [47], one can achievethe different SQL-92 isolation levels by adjusting the lock types and lockingdurations (Table 2.3). In this table, a lock on a data item refers to the fact that a

41

Page 43: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

20 Chapter 2. Preliminaries

Table 2.3: SQL-92 isolation levels achieved by adjusting locks [49, 47]

Isolation level Read locks on data Write locks on dataREAD UNCOMMITTED no locks long write locksREAD COMMITTED short read locks on data item long write locks on data itemREPEATABLE READS long read locks on data item,

short read locks on phantomlong write locks on data item

SERIALIZABILITY long read locks on both dataitem and phantom

long write locks on data item

lock is required before reading/writing the data item, while a lock on phantomrefers to the fact that a lock on the set of data items satisfying a search conditionis required. A short read/write lock means that the lock is released immediatelyafter the read/write is performed, while a long read/write lock means that thelock is released only when the transaction is committed.

2.2.4 Real-time Transactions and Temporal Correctness

In real-time database systems, a real-time transaction is one whose correct-ness depends not only on the logical data consistency, but also on the temporalcorrectness, which is imposed from both the transaction computation and thedata [4]. As any other real-time computation, a real-time transaction shouldcomplete its work by its specified deadline. This property is referred to astimeliness. In addition, the data involved in the computation should be tempo-rally consistent, including two aspects: absolute temporal validity and relativetemporal validity [7]. A data instance is absolutely valid if its age from beingsampled is less than a specified absolute validity interval. A data instance de-rived from a group of other real-time data (base data) is relatively valid, if thesebase data are sampled within a specified relative validity interval.

In order to satisfy temporal correctness, time-cognizant scheduling tech-niques are often adopted by real-time DBMS, by taking priorities and timingconstraints of transactions and data into consideration when producing trans-action schedules [7]. For instance, transactions may be scheduled according tothe earliest deadlines among them, or based on the temporal validity of data.

In RTDBMS with real-time constraints, since the mechanisms for full ACIDmay introduce unacceptable latency and unpredictability, ACID may need tobe relaxed in order to ensure temporal correctness [11]. For instance, failureatomicity by rolling back all changes may not be affordable as deadlines could

20 Chapter 2. Preliminaries

Table 2.3: SQL-92 isolation levels achieved by adjusting locks [49, 47]

Isolation level Read locks on data Write locks on dataREAD UNCOMMITTED no locks long write locksREAD COMMITTED short read locks on data item long write locks on data itemREPEATABLE READS long read locks on data item,

short read locks on phantomlong write locks on data item

SERIALIZABILITY long read locks on both dataitem and phantom

long write locks on data item

lock is required before reading/writing the data item, while a lock on phantomrefers to the fact that a lock on the set of data items satisfying a search conditionis required. A short read/write lock means that the lock is released immediatelyafter the read/write is performed, while a long read/write lock means that thelock is released only when the transaction is committed.

2.2.4 Real-time Transactions and Temporal Correctness

In real-time database systems, a real-time transaction is one whose correct-ness depends not only on the logical data consistency, but also on the temporalcorrectness, which is imposed from both the transaction computation and thedata [4]. As any other real-time computation, a real-time transaction shouldcomplete its work by its specified deadline. This property is referred to astimeliness. In addition, the data involved in the computation should be tempo-rally consistent, including two aspects: absolute temporal validity and relativetemporal validity [7]. A data instance is absolutely valid if its age from beingsampled is less than a specified absolute validity interval. A data instance de-rived from a group of other real-time data (base data) is relatively valid, if thesebase data are sampled within a specified relative validity interval.

In order to satisfy temporal correctness, time-cognizant scheduling tech-niques are often adopted by real-time DBMS, by taking priorities and timingconstraints of transactions and data into consideration when producing trans-action schedules [7]. For instance, transactions may be scheduled according tothe earliest deadlines among them, or based on the temporal validity of data.

In RTDBMS with real-time constraints, since the mechanisms for full ACIDmay introduce unacceptable latency and unpredictability, ACID may need tobe relaxed in order to ensure temporal correctness [11]. For instance, failureatomicity by rolling back all changes may not be affordable as deadlines could

42

Page 44: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

2.2 Transactions and Customized Transaction Management 21

be missed, while relaxed atomicity with compensation can be an alternative tosatisfy the logical and temporal requirements. Concurrency control algorithmsensuring full isolation have also been considered as a bottleneck to achievetemporal correctness, as they may cause unpredictable delays introduced bylong blocking, arbitrary aborting and restarting, which could lead to dead-line misses. In fact, recent research reveals that, waiting for the acquired lockalone may contribute to 37.5% of the latency variance in the selected DBMS[50]. Therefore, RTDBMS may choose a concurrency control algorithm thatachieves relaxed isolation, and improves timeliness [10, 51, 52].

2.2.5 Customized Transaction Management in DBMSThe widely accepted DBMS development methodology [12] describes twoparallel processes for the development of database systems, as presented inFigure 2.2. The left process explains the phases for the development of datacontent and structures. Starting from the data requirements, one should ana-lyze the data concepts and their relationships, which are later consolidated asDBMS-dependent database schema, during the logical design, physical designand system implementation phases. The right process depicts the develop-ment of application logic, and to a large extent regards the design of transac-tions. Between the conceptual design and logical design phases, the developermust decide the DBMS that provides transaction management. In principle,the selected DBMS must ensure the required properties of transactions, suchas performance and other constraints, for which customization of the DBMSmechanisms is often unavoidable.

Most commercial DBMS products, for instance, Oracle 1, Mimer 2 andeXtremeDB 3 allow users to customize transaction management via configura-tions in run-time. Although failure atomicity and rollback are often the defaultsettings, developers can encode compensations flexibly through transaction er-ror handling API provided by the DBMS. Various isolation levels and concur-rency control algorithms can also be selected by developers as optimizationoptions.

Apart from adopting an off-the-shelf DBMS with configuration options,system designers can also develop a DBMS with the liberty of selecting trans-action management features. Researchers have proposed DBMS platformswith design customization and system generation in various granularity. The

1https://www.oracle.com/database/2https://www.mimer.com/3https://www.mcobject.com/extremedbfamily/

2.2 Transactions and Customized Transaction Management 21

be missed, while relaxed atomicity with compensation can be an alternative tosatisfy the logical and temporal requirements. Concurrency control algorithmsensuring full isolation have also been considered as a bottleneck to achievetemporal correctness, as they may cause unpredictable delays introduced bylong blocking, arbitrary aborting and restarting, which could lead to dead-line misses. In fact, recent research reveals that, waiting for the acquired lockalone may contribute to 37.5% of the latency variance in the selected DBMS[50]. Therefore, RTDBMS may choose a concurrency control algorithm thatachieves relaxed isolation, and improves timeliness [10, 51, 52].

2.2.5 Customized Transaction Management in DBMSThe widely accepted DBMS development methodology [12] describes twoparallel processes for the development of database systems, as presented inFigure 2.2. The left process explains the phases for the development of datacontent and structures. Starting from the data requirements, one should ana-lyze the data concepts and their relationships, which are later consolidated asDBMS-dependent database schema, during the logical design, physical designand system implementation phases. The right process depicts the develop-ment of application logic, and to a large extent regards the design of transac-tions. Between the conceptual design and logical design phases, the developermust decide the DBMS that provides transaction management. In principle,the selected DBMS must ensure the required properties of transactions, suchas performance and other constraints, for which customization of the DBMSmechanisms is often unavoidable.

Most commercial DBMS products, for instance, Oracle 1, Mimer 2 andeXtremeDB 3 allow users to customize transaction management via configura-tions in run-time. Although failure atomicity and rollback are often the defaultsettings, developers can encode compensations flexibly through transaction er-ror handling API provided by the DBMS. Various isolation levels and concur-rency control algorithms can also be selected by developers as optimizationoptions.

Apart from adopting an off-the-shelf DBMS with configuration options,system designers can also develop a DBMS with the liberty of selecting trans-action management features. Researchers have proposed DBMS platformswith design customization and system generation in various granularity. The

1https://www.oracle.com/database/2https://www.mimer.com/3https://www.mcobject.com/extremedbfamily/

43

Page 45: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

22 Chapter 2. Preliminaries

Figure 2.2: DBMS development methodology [12]

22 Chapter 2. Preliminaries

Figure 2.2: DBMS development methodology [12]

44

Page 46: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

2.3 Formal Methods Applied in this Thesis 23

essence of this trend is to abandon the monolithic “universal” database en-gines, and to advocate for creating customized application-dependent solutionswith only a proper set of data management functionalities [53]. For instance,COMET [19] uses component-based software engineering technology to con-struct a DBMS for real-time systems, in which different data access methodsand concurrency control algorithms can be selected for composition. FAME-DBMS [20] considers the data and transaction management mechanisms asselectable features of a DBMS product line, and creates particular DBMS prod-ucts via composition of the features. AspectOptima [17] decomposes commontransaction management mechanisms as aspects, and builds customized DBMSby weaving the selected aspects. Some commercial DBMS products, such asBerkeley DB 4, also allow designers to perform design-time configurations inthe source code from provided options, in order to create a customized DBMS.

Although these aforementioned products and platforms provide means tocustomize DBMS, they do not provide any methodology on how to make thecustomization choice, such that the desired transactional properties can be sat-isfied. In practice, the customization decisions are decided upon the providedfeatures (indexing, concurrency control, storage, etc.) and the resource require-ments (e.g., memory footprint), while temporal correctness is often not the con-cern. Transaction throughput experiments on standard benchmarks (such asTPC benchmarks 5) are also often used as criteria. However, these benchmarkscannot reflect the actual transaction workload of the designed real-time system,whose temporal correctness highly depends on the activation and data accesspatterns. In this thesis, we focus on proposing a methodology to guide thecustomization, based on formal analysis of the trade-offs between ACID, andtemporal correctness. The proposed formal analysis framework is presented inChapters 10, 11, 12 and 13.

2.3 Formal Methods Applied in this Thesis

In this section, we provide an overview of the formal techniques and toolsapplied in the thesis.

4https://www.oracle.com/database/technologies/related/berkeleydb.html5http://www.tpc.org/information/benchmarks.asp

2.3 Formal Methods Applied in this Thesis 23

essence of this trend is to abandon the monolithic “universal” database en-gines, and to advocate for creating customized application-dependent solutionswith only a proper set of data management functionalities [53]. For instance,COMET [19] uses component-based software engineering technology to con-struct a DBMS for real-time systems, in which different data access methodsand concurrency control algorithms can be selected for composition. FAME-DBMS [20] considers the data and transaction management mechanisms asselectable features of a DBMS product line, and creates particular DBMS prod-ucts via composition of the features. AspectOptima [17] decomposes commontransaction management mechanisms as aspects, and builds customized DBMSby weaving the selected aspects. Some commercial DBMS products, such asBerkeley DB 4, also allow designers to perform design-time configurations inthe source code from provided options, in order to create a customized DBMS.

Although these aforementioned products and platforms provide means tocustomize DBMS, they do not provide any methodology on how to make thecustomization choice, such that the desired transactional properties can be sat-isfied. In practice, the customization decisions are decided upon the providedfeatures (indexing, concurrency control, storage, etc.) and the resource require-ments (e.g., memory footprint), while temporal correctness is often not the con-cern. Transaction throughput experiments on standard benchmarks (such asTPC benchmarks 5) are also often used as criteria. However, these benchmarkscannot reflect the actual transaction workload of the designed real-time system,whose temporal correctness highly depends on the activation and data accesspatterns. In this thesis, we focus on proposing a methodology to guide thecustomization, based on formal analysis of the trade-offs between ACID, andtemporal correctness. The proposed formal analysis framework is presented inChapters 10, 11, 12 and 13.

2.3 Formal Methods Applied in this Thesis

In this section, we provide an overview of the formal techniques and toolsapplied in the thesis.

4https://www.oracle.com/database/technologies/related/berkeleydb.html5http://www.tpc.org/information/benchmarks.asp

45

Page 47: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

24 Chapter 2. Preliminaries

2.3.1 Boolean Satisfiability Problem Solving Using Z3

The Boolean Satisfiability Problem (SAT) refers to determining whether thereexists an assignment of the variables in a propositional formula, such that theformula evaluates to true [54]. Usually, the considered propositional formulais given in the conjunctive normal form, that is, a conjunction (AND, ∧) ofclauses, where each clause is a disjunction (OR,∨) of literals, and each literal iseither a variable or its negation (NOT, ¬). A SAT solver can automatically findan assignment that satisfies the formula, or otherwise return the contradictoryclauses.

Z3 [55] is one of the state-of-the-art Satisfiability Modulo Theories (SMT)solvers, developed by Microsoft. SMT generalizes the satisfiability check fromboolean logics to other background theories, such as equality reasoning, arith-metic, fixed-size bit-vectors, arrays, etc. [54]. Z3 provides “black-box” satis-fiability checks with well-defined programming interfaces in several program-ming languages. This makes Z3 an ideal choice to be integrated as part ofmany software verification and design tools. If the given propositional formulais satisfiable, Z3 gives “yes” as an answer; otherwise, in case the formula is notsatisfiable, Z3 can also return an unsatisfiable core, which is a conjunction ofunsatisfiable clauses, to help find the inconsistency in the specification.

In our work, we formulate the specifications of data aggregation processesand the constraints as propositional formulas, and check if there is any contra-diction by employing SAT solving with Z3 in our SAFARE tool [30].

2.3.2 Model Checking Using UPPAAL

Model checking is a formal analysis technique that rigorously checks the cor-rectness of a given model of the analyzed system, by exploring all possiblestates of the model, exhaustively and automatically [56]. An overview of themodel-checking technique is shown in Figure 2.3. The formal model of thesystem is described in a language such as UPPAAL Timed Automata [31] pre-sented in Chapter 2.3.2. The properties to be verified are formalized in somelogic, in our case as temporal logic (Timed Computation Tree Logic [57]) for-mulas. The model checker implementing a model-checking algorithm can thenautomatically verify whether the properties are satisfied by the system model.

The properties verified by a model checker are of two main types: (i) in-variance properties, of the form “something (bad) will never happen”, and (ii)liveness properties, of the form “something (good) will eventually happen”.The result of the verification given by the model checker is a “yes/no” answer,

24 Chapter 2. Preliminaries

2.3.1 Boolean Satisfiability Problem Solving Using Z3

The Boolean Satisfiability Problem (SAT) refers to determining whether thereexists an assignment of the variables in a propositional formula, such that theformula evaluates to true [54]. Usually, the considered propositional formulais given in the conjunctive normal form, that is, a conjunction (AND, ∧) ofclauses, where each clause is a disjunction (OR,∨) of literals, and each literal iseither a variable or its negation (NOT, ¬). A SAT solver can automatically findan assignment that satisfies the formula, or otherwise return the contradictoryclauses.

Z3 [55] is one of the state-of-the-art Satisfiability Modulo Theories (SMT)solvers, developed by Microsoft. SMT generalizes the satisfiability check fromboolean logics to other background theories, such as equality reasoning, arith-metic, fixed-size bit-vectors, arrays, etc. [54]. Z3 provides “black-box” satis-fiability checks with well-defined programming interfaces in several program-ming languages. This makes Z3 an ideal choice to be integrated as part ofmany software verification and design tools. If the given propositional formulais satisfiable, Z3 gives “yes” as an answer; otherwise, in case the formula is notsatisfiable, Z3 can also return an unsatisfiable core, which is a conjunction ofunsatisfiable clauses, to help find the inconsistency in the specification.

In our work, we formulate the specifications of data aggregation processesand the constraints as propositional formulas, and check if there is any contra-diction by employing SAT solving with Z3 in our SAFARE tool [30].

2.3.2 Model Checking Using UPPAAL

Model checking is a formal analysis technique that rigorously checks the cor-rectness of a given model of the analyzed system, by exploring all possiblestates of the model, exhaustively and automatically [56]. An overview of themodel-checking technique is shown in Figure 2.3. The formal model of thesystem is described in a language such as UPPAAL Timed Automata [31] pre-sented in Chapter 2.3.2. The properties to be verified are formalized in somelogic, in our case as temporal logic (Timed Computation Tree Logic [57]) for-mulas. The model checker implementing a model-checking algorithm can thenautomatically verify whether the properties are satisfied by the system model.

The properties verified by a model checker are of two main types: (i) in-variance properties, of the form “something (bad) will never happen”, and (ii)liveness properties, of the form “something (good) will eventually happen”.The result of the verification given by the model checker is a “yes/no” answer,

46

Page 48: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

2.3 Formal Methods Applied in this Thesis 25

Formal model of the system

Formalized Requirement

Model Checker

Yes

No

Counter-Example

(invariance properties)

Figure 2.3: Model-checking technique

indicating that the verified property is satisfied/violated, respectively. For in-variance properties, if a “no” answer is given, a model execution trace couldbe returned that acts as a counterexample to the invariance property, as shownin Fig 2.3.

UPPAAL Timed Automata

In this thesis, we use the Timed Automata (TA) formal framework [58] tomodel real-time transactions, and the UPPAAL model checker [31] to verifytheir correctness (the relaxed ACID properties and temporal correctness). Ourchoice is justified by the fact that timed automata is an expressive formalism in-tended to describe the behavior of timed systems in a continuous-time domain.Moreover, the framework is supported by the UPPAAL tool, the state-of-the-art model checker for real-time systems. UPPAAL uses an extended version ofTA for modeling, called UPPAAL TA in this thesis.

Timed automata [58] are finite-state automata extended with real-valuedclock variables. As mentioned, UPPAAL TA [31] extends TA with discretevariables as well as other modeling features, like urgent and committed loca-tions, synchronization channels, etc.

Formally, an UPPAAL timed automaton [31] is defined as the followingtuple:

TA ::= (L, l0, X, V, I, Act, E), (2.1)

in which:

• L is a finite set of locations;

• l0 is the initial location;

• X is a finite set of clock variables;

2.3 Formal Methods Applied in this Thesis 25

Formal model of the system

Formalized Requirement

Model Checker

Yes

No

Counter-Example

(invariance properties)

Figure 2.3: Model-checking technique

indicating that the verified property is satisfied/violated, respectively. For in-variance properties, if a “no” answer is given, a model execution trace couldbe returned that acts as a counterexample to the invariance property, as shownin Fig 2.3.

UPPAAL Timed Automata

In this thesis, we use the Timed Automata (TA) formal framework [58] tomodel real-time transactions, and the UPPAAL model checker [31] to verifytheir correctness (the relaxed ACID properties and temporal correctness). Ourchoice is justified by the fact that timed automata is an expressive formalism in-tended to describe the behavior of timed systems in a continuous-time domain.Moreover, the framework is supported by the UPPAAL tool, the state-of-the-art model checker for real-time systems. UPPAAL uses an extended version ofTA for modeling, called UPPAAL TA in this thesis.

Timed automata [58] are finite-state automata extended with real-valuedclock variables. As mentioned, UPPAAL TA [31] extends TA with discretevariables as well as other modeling features, like urgent and committed loca-tions, synchronization channels, etc.

Formally, an UPPAAL timed automaton [31] is defined as the followingtuple:

TA ::= (L, l0, X, V, I, Act, E), (2.1)

in which:

• L is a finite set of locations;

• l0 is the initial location;

• X is a finite set of clock variables;

47

Page 49: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

26 Chapter 2. Preliminaries

• V is a finite set of discrete variables;

• I : L → B(X) assigns invariants to locations, where B(X) denotesthe set of clock constraints, which are conjunctions of atomic constraintsin the form of xi ./ n or xi − xj ./ n , xi, xj ∈ X , n ∈ N, and./∈ {<,≤,=};

• Act = σ ∪ {τ} is a finite set of actions, where σ is a set of synchroniza-tion actions, and τ /∈ σ represents internal actions without synchroniza-tion, or empty actions;

• E ⊂ L×B(X,V )×Act×R×L is a set of edges. B(X,V ) denotes theset of guards, as a conjunction of the mentioned clock constraintsB(X),with non-clock constraintsB(V ), which are conjunctions of atomic con-straints in the form of vi ∼ m or vi ∼ vj , vi, vj ∈ V , m ∈ Z, and∼∈ {<,≤, >,≥,=, 6=}. R denotes the set of assignments that updatethe values of discrete variables, or reset clocks.

We denote an edge e ∈ E as lg,a,r−−−→ l′, where g ∈ B(X,V ), a ∈ Act, and

r ∈ R. An edge is enabled if its associated guard evaluates to true, and thesource location is active.

The state of a TA is defined as a pair (l, u), where l is the active locationand u is a valuation of all clock variables. At each state, the automaton maynon-deterministically take a delay transition, denoted by (l, u)

d−→ (l, u + d),which only increases the clock values by d time units, as long as the invari-ant associated with the current location is not violated. Alternatively, it maynon-deterministically take a discrete transition (l, u)

a−→ (l′, u′) following anenabled edge l

g,a,r−−−→ l′, while performing the action a and the assignment r.Multiple TA can form a Network of Timed Automata (NTA) via CCS par-

allel composition (“||”) [59], by which individual TA are allowed to carry outinternal actions (i.e., interleaving), while pairs of TA can communicate viachannels, or shared variables. The state of an NTA consists of the values ofall clocks in the NTA, together with the currently active locations of each TA.For a communication via channel c, the sender is denoted by “c!”, while thereceiver by “c?”. There are two types of channels. A binary channel allowsthe sender and its receiver to perform hand-shake synchronization. An edgewith the sending (or receiving) mark is enabled, only if the receiver (or sender)can perform a complementary receiving (or sending) action. Therefore, boththe sender and the receiver may be blocked, if its counterpart automaton is not

26 Chapter 2. Preliminaries

• V is a finite set of discrete variables;

• I : L → B(X) assigns invariants to locations, where B(X) denotesthe set of clock constraints, which are conjunctions of atomic constraintsin the form of xi ./ n or xi − xj ./ n , xi, xj ∈ X , n ∈ N, and./∈ {<,≤,=};

• Act = σ ∪ {τ} is a finite set of actions, where σ is a set of synchroniza-tion actions, and τ /∈ σ represents internal actions without synchroniza-tion, or empty actions;

• E ⊂ L×B(X,V )×Act×R×L is a set of edges. B(X,V ) denotes theset of guards, as a conjunction of the mentioned clock constraintsB(X),with non-clock constraintsB(V ), which are conjunctions of atomic con-straints in the form of vi ∼ m or vi ∼ vj , vi, vj ∈ V , m ∈ Z, and∼∈ {<,≤, >,≥,=, 6=}. R denotes the set of assignments that updatethe values of discrete variables, or reset clocks.

We denote an edge e ∈ E as lg,a,r−−−→ l′, where g ∈ B(X,V ), a ∈ Act, and

r ∈ R. An edge is enabled if its associated guard evaluates to true, and thesource location is active.

The state of a TA is defined as a pair (l, u), where l is the active locationand u is a valuation of all clock variables. At each state, the automaton maynon-deterministically take a delay transition, denoted by (l, u)

d−→ (l, u + d),which only increases the clock values by d time units, as long as the invari-ant associated with the current location is not violated. Alternatively, it maynon-deterministically take a discrete transition (l, u)

a−→ (l′, u′) following anenabled edge l

g,a,r−−−→ l′, while performing the action a and the assignment r.Multiple TA can form a Network of Timed Automata (NTA) via CCS par-

allel composition (“||”) [59], by which individual TA are allowed to carry outinternal actions (i.e., interleaving), while pairs of TA can communicate viachannels, or shared variables. The state of an NTA consists of the values ofall clocks in the NTA, together with the currently active locations of each TA.For a communication via channel c, the sender is denoted by “c!”, while thereceiver by “c?”. There are two types of channels. A binary channel allowsthe sender and its receiver to perform hand-shake synchronization. An edgewith the sending (or receiving) mark is enabled, only if the receiver (or sender)can perform a complementary receiving (or sending) action. Therefore, boththe sender and the receiver may be blocked, if its counterpart automaton is not

48

Page 50: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

2.3 Formal Methods Applied in this Thesis 27

C

cl:=0,a:=0

ch!

cl<=3

cl>=1

cl:=0

L1 L2

L3

inc(a)

||

(a) A1

U

ch?a<5

L4

L5

(b) A2

Figure 2.4: Example of a network of UPPAAL Timed Automata: A1 || A2

ready. A broadcast channel allows one sender to send messages to multiple re-ceivers. The sender is not blocked, if any of the receivers is not able to performthe receiving action.

We illustrate the basics of UPPAAL TA via a simple example. For moredetails, we refer the readers to the literature [31]. Figure 2.4 shows a simplenetwork of UPPAAL TA composed of automata A1 and A2. In the figure, aclock variable cl is defined in A1 to measure the elapse of time, and progressescontinuously. A discrete variable a is defined globally, and shared by A1 andA2. A1 consists of locations L1, L2 and L3, out of which L1 is the initiallocation. At each location, an automaton may non-deterministically chooseto take a delay transition or a discrete transition. For instance, A1 may stayat L2 until the value of cl reaches 3, or move to L3 when the value of c1 isgreater than or equal to 1. While moving from L2 to L3, A1 synchronizes withautomaton A2 by sending a message through the channel ch, and incrementsthe value of a by the function inc(a). Meanwhile, upon receiving the messagefrom channel ch, A2 moves from location L4 to location L5.

A location can be urgent or committed. When an automaton reaches an ur-gent location, marked as “U”, it must take the next transition without any delayin time. Another automaton may take transitions at the time, as long as thetime does not progress. In our example, L5 is an urgent location. A committedlocation, marked as “C”, indicates that no delay occurs on this location andthe following transitions from this location will be taken immediately. Whenan automaton is at a committed location, another automaton may NOT takeany transitions, unless it is also at a committed location. L3 is a committedlocation.

2.3 Formal Methods Applied in this Thesis 27

C

cl:=0,a:=0

ch!

cl<=3

cl>=1

cl:=0

L1 L2

L3

inc(a)

||

(a) A1

U

ch?a<5

L4

L5

(b) A2

Figure 2.4: Example of a network of UPPAAL Timed Automata: A1 || A2

ready. A broadcast channel allows one sender to send messages to multiple re-ceivers. The sender is not blocked, if any of the receivers is not able to performthe receiving action.

We illustrate the basics of UPPAAL TA via a simple example. For moredetails, we refer the readers to the literature [31]. Figure 2.4 shows a simplenetwork of UPPAAL TA composed of automata A1 and A2. In the figure, aclock variable cl is defined in A1 to measure the elapse of time, and progressescontinuously. A discrete variable a is defined globally, and shared by A1 andA2. A1 consists of locations L1, L2 and L3, out of which L1 is the initiallocation. At each location, an automaton may non-deterministically chooseto take a delay transition or a discrete transition. For instance, A1 may stayat L2 until the value of cl reaches 3, or move to L3 when the value of c1 isgreater than or equal to 1. While moving from L2 to L3, A1 synchronizes withautomaton A2 by sending a message through the channel ch, and incrementsthe value of a by the function inc(a). Meanwhile, upon receiving the messagefrom channel ch, A2 moves from location L4 to location L5.

A location can be urgent or committed. When an automaton reaches an ur-gent location, marked as “U”, it must take the next transition without any delayin time. Another automaton may take transitions at the time, as long as thetime does not progress. In our example, L5 is an urgent location. A committedlocation, marked as “C”, indicates that no delay occurs on this location andthe following transitions from this location will be taken immediately. Whenan automaton is at a committed location, another automaton may NOT takeany transitions, unless it is also at a committed location. L3 is a committedlocation.

49

Page 51: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

28 Chapter 2. Preliminaries

UPPAAL Model Checker

Properties of the analyzed system, modeled as a network of UPPAAL TA, canbe verified by the UPPAAL model checker [31]. UPPAAL supports verificationof invariance and liveness properties, specified in a decidable subset of (Timed)Computation Tree Logic ((T)CTL) [57]. An invariance property is often speci-fied asA [ ] P , meaning that predicate P always holds for all possible executionpaths, where A is the universal path quatifier, and [ ] is the “always” temporaloperator. If an invariance property is violated, UPPAAL can provide a trace asa counterexample to the property. In this thesis, we also focus on the livenessproperties specified as P → Q (P “leads to” Q), meaning that if P holds, Qwill eventually hold. This property is equivalent toA [ ] (P imply A <> Q),where <> is the “eventually” temporal operator.

2.3.3 Statistical Model Checking Using UPPAAL SMC

As the model grows complex, traditional exhaustive model checking may suf-fer from the state explosion problem, that is, the state space to be exploredbecomes so large that the model checking process cannot reach a conclusionwithin the given memory and computation resources. Statistical Model Check-ing (SMC) is proposed as an alternative to analyze large models without ex-haustive exploration of the entire state space, at the expense of a full guarantee.SMC is a formal technique that estimates the probability of property satisfac-tion or violation, based on a finite number of monitored simulations of themodel [60]. Each simulation generates a result on whether the checked prop-erty is satisfied or not during this run. Using the simulation statistics, SMCinfers the probability of satisfaction associated with a confidence level. Com-pared to exhaustive model checking, SMC cannot provide a guarantee of theresult, but the probability of errors can be bounded. As an advantage, SMC isfar less memory and time intensive, making it suitable for large models, whichmay lie beyond the analytical capability of exhaustive model checking.

UPPAAL Stochastic Timed Automata

We choose UPPAAL Stochastic Timed Automata (STA) [61, 35] as our for-mal representation, which can be analyzed by the state-of-art UPPAAL SMCstatistical model checker [35], the extension of UPPAAL for analyzing STAmodels.

UPPAAL Stochastic Timed Automata (STA) [61, 35] extends UPPAAL TA

28 Chapter 2. Preliminaries

UPPAAL Model Checker

Properties of the analyzed system, modeled as a network of UPPAAL TA, canbe verified by the UPPAAL model checker [31]. UPPAAL supports verificationof invariance and liveness properties, specified in a decidable subset of (Timed)Computation Tree Logic ((T)CTL) [57]. An invariance property is often speci-fied asA [ ] P , meaning that predicate P always holds for all possible executionpaths, where A is the universal path quatifier, and [ ] is the “always” temporaloperator. If an invariance property is violated, UPPAAL can provide a trace asa counterexample to the property. In this thesis, we also focus on the livenessproperties specified as P → Q (P “leads to” Q), meaning that if P holds, Qwill eventually hold. This property is equivalent toA [ ] (P imply A <> Q),where <> is the “eventually” temporal operator.

2.3.3 Statistical Model Checking Using UPPAAL SMC

As the model grows complex, traditional exhaustive model checking may suf-fer from the state explosion problem, that is, the state space to be exploredbecomes so large that the model checking process cannot reach a conclusionwithin the given memory and computation resources. Statistical Model Check-ing (SMC) is proposed as an alternative to analyze large models without ex-haustive exploration of the entire state space, at the expense of a full guarantee.SMC is a formal technique that estimates the probability of property satisfac-tion or violation, based on a finite number of monitored simulations of themodel [60]. Each simulation generates a result on whether the checked prop-erty is satisfied or not during this run. Using the simulation statistics, SMCinfers the probability of satisfaction associated with a confidence level. Com-pared to exhaustive model checking, SMC cannot provide a guarantee of theresult, but the probability of errors can be bounded. As an advantage, SMC isfar less memory and time intensive, making it suitable for large models, whichmay lie beyond the analytical capability of exhaustive model checking.

UPPAAL Stochastic Timed Automata

We choose UPPAAL Stochastic Timed Automata (STA) [61, 35] as our for-mal representation, which can be analyzed by the state-of-art UPPAAL SMCstatistical model checker [35], the extension of UPPAAL for analyzing STAmodels.

UPPAAL Stochastic Timed Automata (STA) [61, 35] extends UPPAAL TA

50

Page 52: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

2.3 Formal Methods Applied in this Thesis 29

with stochastic interpretations. Formally, an STA is defined as

STA ::= (TA, µ, γ), (2.2)

where TA is a UPPAAL timed automata defined in Equation 2.1. µ is a set ofprobability density functions that assign delays to the delay transitions in theTA, for each state s = (l, v). Let El denote the disjunction of guards g suchthat e = l

g,a,−−−−→ −, e ∈ E, for some action a. Let d(l, v) denote the infimumdelay before the action is enabled, i.e., d(l, v) = inf{d ∈ R≥0 : v+∆d |= E},and D(l, v) denote the supremum delay at location l, i.e., D(l, v) = sup{d ∈R≥0 : v + d |= I(l)}. If D(l, v) < ∞, then the delay density function µs forstate s is a uniform distribution on [d(l, v), D(l, v)]. Otherwise, when the upperbound on the possible delays does not exist, µs is an exponential distributionwith rate P (l), where P : L→ R≥0 is an additional distribution rate specifiedfor the automaton.

γ is a set of probability density functions that assign the probability distri-bution for multiple discrete transitions from a state. For each state s = (l, v),γs is a uniform distribution over the set {a : l

g,a,−−−−→ − ∈ E ∧ v |= g}.Multiple STA can form a Network of STA (NSTA). Component STA per-

forms internal actions independently, based on its probability density functions,and communicate via broadcast channels.

Let us consider the model in Figure 2.4, which is now a network of STA.Similarly to the NTA example, STA A1 repeatedly increments the value of a,while STA A2 repeatedly moves between locations L4 and L5, controlled bythe message sent by A1 via channel ch. The only syntactical change is that,the previous binary channel ch in NTA is now a broadcast channel. Semanti-cally, the transitions are taken randomly, following the probabilistic functionsdefined in the NSTA. For instance, the delay of A1 at location L1 follows anexponential distribution with rate 1, while the delay at L2 follows a uniformdistribution on [1, 3].

UPPAAL SMC

UPPAAL SMC provides probability evaluation, hypothesis testing and proba-bility comparison for STA models. In this thesis, we utilize the first two fea-tures for our analysis. The specification language of UPPAAL SMC is an ex-tension of the Weighted Metric Temporal Logic [62]. Given ? to denote eitherthe eventually (<>) or the globally ([ ]) temporal operator, probability evalua-tion calculates Pr(?x≤nφ), that is, the probability that property φ is eventually

2.3 Formal Methods Applied in this Thesis 29

with stochastic interpretations. Formally, an STA is defined as

STA ::= (TA, µ, γ), (2.2)

where TA is a UPPAAL timed automata defined in Equation 2.1. µ is a set ofprobability density functions that assign delays to the delay transitions in theTA, for each state s = (l, v). Let El denote the disjunction of guards g suchthat e = l

g,a,−−−−→ −, e ∈ E, for some action a. Let d(l, v) denote the infimumdelay before the action is enabled, i.e., d(l, v) = inf{d ∈ R≥0 : v+∆d |= E},and D(l, v) denote the supremum delay at location l, i.e., D(l, v) = sup{d ∈R≥0 : v + d |= I(l)}. If D(l, v) < ∞, then the delay density function µs forstate s is a uniform distribution on [d(l, v), D(l, v)]. Otherwise, when the upperbound on the possible delays does not exist, µs is an exponential distributionwith rate P (l), where P : L→ R≥0 is an additional distribution rate specifiedfor the automaton.

γ is a set of probability density functions that assign the probability distri-bution for multiple discrete transitions from a state. For each state s = (l, v),γs is a uniform distribution over the set {a : l

g,a,−−−−→ − ∈ E ∧ v |= g}.Multiple STA can form a Network of STA (NSTA). Component STA per-

forms internal actions independently, based on its probability density functions,and communicate via broadcast channels.

Let us consider the model in Figure 2.4, which is now a network of STA.Similarly to the NTA example, STA A1 repeatedly increments the value of a,while STA A2 repeatedly moves between locations L4 and L5, controlled bythe message sent by A1 via channel ch. The only syntactical change is that,the previous binary channel ch in NTA is now a broadcast channel. Semanti-cally, the transitions are taken randomly, following the probabilistic functionsdefined in the NSTA. For instance, the delay of A1 at location L1 follows anexponential distribution with rate 1, while the delay at L2 follows a uniformdistribution on [1, 3].

UPPAAL SMC

UPPAAL SMC provides probability evaluation, hypothesis testing and proba-bility comparison for STA models. In this thesis, we utilize the first two fea-tures for our analysis. The specification language of UPPAAL SMC is an ex-tension of the Weighted Metric Temporal Logic [62]. Given ? to denote eitherthe eventually (<>) or the globally ([ ]) temporal operator, probability evalua-tion calculates Pr(?x≤nφ), that is, the probability that property φ is eventually

51

Page 53: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

30 Chapter 2. Preliminaries

(or globally) satisfied within n time units. This is specified as Pr[≤ n](?φ) inthe UPPAAL SMC query language. Hypothesis testing compares Pr(?x≤nφ)with a given value p, specified as Pr[≤ n](?φ) ∼ p, where ∼∈ {<,≤, >,≥}.For more details about UPPAAL SMC, we refer to literature [35].

30 Chapter 2. Preliminaries

(or globally) satisfied within n time units. This is specified as Pr[≤ n](?φ) inthe UPPAAL SMC query language. Hypothesis testing compares Pr(?x≤nφ)with a given value p, specified as Pr[≤ n](?φ) ∼ p, where ∼∈ {<,≤, >,≥}.For more details about UPPAAL SMC, we refer to literature [35].

52

Page 54: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Chapter 3

Research Problem

In this chapter, we formulate our research problem and research goals ad-dressed in this thesis.

3.1 Problem Description

Designing an RTDBMS for a real-time system with complex data-related com-putations may require customization of the transaction management mecha-nisms, in order to achieve the appropriate trade-offs between ACID and tem-poral correctness. Due to a lack of support for systematic analysis, the cus-tomization decisions are often made by designers in an ad-hoc manner, withoutthorough consideration on the impact of the actual transaction workload, andtheir interplay with the transaction management mechanisms. This could leadto an inappropriate design that fails to satisfy the desired properties.

Several issues exist in the design of customized RTDBMS. First, a method-ology is needed, which guides the designer to systematically decide an ap-propriate ACID and temporal correctness trade-off, together with the concretetransaction management mechanisms, from a rich spectrum of possible choices.Such methodology is missing from the common DBMS development researchand practice. Second, the characteristics of data aggregation processes, as wellas their implications with respect to logical data consistency and temporal cor-rectness, are not well-understood. This information is crucial for the analysisof customization at an early stage, and provides required properties and con-straints for the further design. Third, systematic specification of transactions,

31

Chapter 3

Research Problem

In this chapter, we formulate our research problem and research goals ad-dressed in this thesis.

3.1 Problem Description

Designing an RTDBMS for a real-time system with complex data-related com-putations may require customization of the transaction management mecha-nisms, in order to achieve the appropriate trade-offs between ACID and tem-poral correctness. Due to a lack of support for systematic analysis, the cus-tomization decisions are often made by designers in an ad-hoc manner, withoutthorough consideration on the impact of the actual transaction workload, andtheir interplay with the transaction management mechanisms. This could leadto an inappropriate design that fails to satisfy the desired properties.

Several issues exist in the design of customized RTDBMS. First, a method-ology is needed, which guides the designer to systematically decide an ap-propriate ACID and temporal correctness trade-off, together with the concretetransaction management mechanisms, from a rich spectrum of possible choices.Such methodology is missing from the common DBMS development researchand practice. Second, the characteristics of data aggregation processes, as wellas their implications with respect to logical data consistency and temporal cor-rectness, are not well-understood. This information is crucial for the analysisof customization at an early stage, and provides required properties and con-straints for the further design. Third, systematic specification of transactions,

31

53

Page 55: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

32 Chapter 3. Research Problem

the ACID and temporal correctness variants, and the transaction managementmechanisms in a high-level language can benefit system designer with a moreintuitive way to reason about the trade-offs. However, such specification ca-pability is missing in existing design languages. Last but not least, existingtechniques cannot provide assurance that the selected mechanisms for the RT-DBMS can achieve the decided trade-offs.

3.2 Research GoalsGiven the above issues, we formulate our overall research goal as follows:

Overall goal. Facilitate the systematic design and analysis of customizedtrans-action-based data management with data aggregation support for real-time systems, such that the desired ACID properties and temporal correctnessare assured.

In order to address the overall research goal, we define concrete subgoalsthat need to be tackled in order to fulfill the former. Designing appropriatereal-time data management with data aggregation support requires a profoundunderstanding of data aggregation, as well as means to organize the characteris-tics and reason about their implications with respect to logical data consistencyand temporal correctness. Therefore, we formulate the first subgoal as follows:

Subgoal 1. Classify and analyze the common and variable characteristics ofdata aggregation, such that the consequences of design choices can be rea-soned about.

When designing the customized RTDBMS, the challenge is how to derive atransaction model with the appropriate transactional properties, based on ap-plication semantics, and decide the appropriate mechanisms from a set of can-didates. In this thesis, we focus on analyzing trade offs between atomicity,isolation and temporal correctness, and the selection of abort recovery mecha-nisms, concurrency control algorithms and scheduling policies. We select theseproperties because their mechanisms may heavily impact the assurance of eachother, while the specification and analysis techniques for all these propertiesand mechanisms are lacking [26]. Therefore, our next two subgoals addressthe specification, and the analysis support, for these properties and mecha-nisms, respectively. Our second research subgoal is formulated as follows:

32 Chapter 3. Research Problem

the ACID and temporal correctness variants, and the transaction managementmechanisms in a high-level language can benefit system designer with a moreintuitive way to reason about the trade-offs. However, such specification ca-pability is missing in existing design languages. Last but not least, existingtechniques cannot provide assurance that the selected mechanisms for the RT-DBMS can achieve the decided trade-offs.

3.2 Research GoalsGiven the above issues, we formulate our overall research goal as follows:

Overall goal. Facilitate the systematic design and analysis of customizedtrans-action-based data management with data aggregation support for real-time systems, such that the desired ACID properties and temporal correctnessare assured.

In order to address the overall research goal, we define concrete subgoalsthat need to be tackled in order to fulfill the former. Designing appropriatereal-time data management with data aggregation support requires a profoundunderstanding of data aggregation, as well as means to organize the characteris-tics and reason about their implications with respect to logical data consistencyand temporal correctness. Therefore, we formulate the first subgoal as follows:

Subgoal 1. Classify and analyze the common and variable characteristics ofdata aggregation, such that the consequences of design choices can be rea-soned about.

When designing the customized RTDBMS, the challenge is how to derive atransaction model with the appropriate transactional properties, based on ap-plication semantics, and decide the appropriate mechanisms from a set of can-didates. In this thesis, we focus on analyzing trade offs between atomicity,isolation and temporal correctness, and the selection of abort recovery mecha-nisms, concurrency control algorithms and scheduling policies. We select theseproperties because their mechanisms may heavily impact the assurance of eachother, while the specification and analysis techniques for all these propertiesand mechanisms are lacking [26]. Therefore, our next two subgoals addressthe specification, and the analysis support, for these properties and mecha-nisms, respectively. Our second research subgoal is formulated as follows:

54

Page 56: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

3.2 Research Goals 33

Subgoal 2. Specify atomicity, isolation and temporal correctness of trans-actions, as well as the abort recovery, concurrency control and schedulingmechanisms, in a systematic manner.

As mentioned, our next subgoal addresses the analysis of the properties andmechanisms selected from a set of candidates. The challenge lies in how toformally model these complex mechanisms woven with the transactional workunits, such that one can analyze our desired properties rigorously with the state-of-art tools. Due to the large number of variations in the transaction manage-ment mechanisms, we also need to provide flexibility in the modeling and theanalysis, to facilitate easier iterations of the candidate mechanisms and reducemodeling effort. Based on this, we formulate our third research subgoal asfollows:

Subgoal 3. Enable flexible formal modeling of real-time transactions withabort recovery, concurrency control, and scheduling, as well as formal analysisof atomicity, isolation and temporal correctness.

To ensure the applicability and usefulness of our proposed methods on real-world applications, we need to apply them on industrial use cases that exposethe mentioned problems. Therefore, our fourth subgoal is presented as follows:

Subgoal 4. Validate the applicability and usefulness of the proposed methodsvia industrial use cases.

3.2 Research Goals 33

Subgoal 2. Specify atomicity, isolation and temporal correctness of trans-actions, as well as the abort recovery, concurrency control and schedulingmechanisms, in a systematic manner.

As mentioned, our next subgoal addresses the analysis of the properties andmechanisms selected from a set of candidates. The challenge lies in how toformally model these complex mechanisms woven with the transactional workunits, such that one can analyze our desired properties rigorously with the state-of-art tools. Due to the large number of variations in the transaction manage-ment mechanisms, we also need to provide flexibility in the modeling and theanalysis, to facilitate easier iterations of the candidate mechanisms and reducemodeling effort. Based on this, we formulate our third research subgoal asfollows:

Subgoal 3. Enable flexible formal modeling of real-time transactions withabort recovery, concurrency control, and scheduling, as well as formal analysisof atomicity, isolation and temporal correctness.

To ensure the applicability and usefulness of our proposed methods on real-world applications, we need to apply them on industrial use cases that exposethe mentioned problems. Therefore, our fourth subgoal is presented as follows:

Subgoal 4. Validate the applicability and usefulness of the proposed methodsvia industrial use cases.

55

Page 57: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

56

Page 58: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Chapter 4

Research Methods

In this chapter, we introduce the methods used to conduct our research in orderto address the research goals. We first describe the general process that wefollow in our research, after which we explain the concrete methods used inthis thesis.

Our research process is shown in Figure 4.1. This research is initiated bythe industrial problems that have not been solved by industrial solutions northoroughly studied by academic researchers. In today’s industrial practices,software engineers lack means to develop customized provable data manage-ment solutions for emerging data-intensive time-critical applications. This gapcould lead to reduced software quality in logical and temporal correctness.Based on the industrial problems, the state of practice and the state of the art,we formulate our research goals, as introduced in the previous chapter. To ad-dress these goals, we propose a systematic methodology as our approach, anddevelop a series of techniques to facilitate this methodology, such that it canbe applied to industrial applications. Finally, we validate the approach by ap-plying it to the development of several industrial applications. Our proposedapproach, as well as the validation process and results, are documented in aseries of research papers and reports.

We apply a set of research methods during the activities of the aforemen-tioned process. For the purpose of identifying the gaps between the problemsand existing approaches and formulating the research goals, we apply the “crit-ical analysis of literature” method [63] to study the state of the art and the stateof practice of the researched area. In Paper A [29], we survey the literature indata aggregation applications, and propose our taxonomy based on the anal-

35

Chapter 4

Research Methods

In this chapter, we introduce the methods used to conduct our research in orderto address the research goals. We first describe the general process that wefollow in our research, after which we explain the concrete methods used inthis thesis.

Our research process is shown in Figure 4.1. This research is initiated bythe industrial problems that have not been solved by industrial solutions northoroughly studied by academic researchers. In today’s industrial practices,software engineers lack means to develop customized provable data manage-ment solutions for emerging data-intensive time-critical applications. This gapcould lead to reduced software quality in logical and temporal correctness.Based on the industrial problems, the state of practice and the state of the art,we formulate our research goals, as introduced in the previous chapter. To ad-dress these goals, we propose a systematic methodology as our approach, anddevelop a series of techniques to facilitate this methodology, such that it canbe applied to industrial applications. Finally, we validate the approach by ap-plying it to the development of several industrial applications. Our proposedapproach, as well as the validation process and results, are documented in aseries of research papers and reports.

We apply a set of research methods during the activities of the aforemen-tioned process. For the purpose of identifying the gaps between the problemsand existing approaches and formulating the research goals, we apply the “crit-ical analysis of literature” method [63] to study the state of the art and the stateof practice of the researched area. In Paper A [29], we survey the literature indata aggregation applications, and propose our taxonomy based on the anal-

35

57

Page 59: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

36 Chapter 4. Research Methods

Problems in industry

State of practice

State of the art

Proposed approach

Implementation of approach

Validation

Research results/papers

Industry-related activities

Academic-related activities

Research goals

Figure 4.1: The research process of the thesis

ysis on the common and variable characteristics of the surveyed works. Wealso collect literature in customized real-time data management, as well as intransaction modeling and analysis. By analyzing the strengths and weaknessesof existing approaches, we identify the challenges to be addressed related toour research goals, and propose our solutions.

During the implementation of our approach, we apply the “proof of con-cepts” method [63] to show the correctness and applicability of our proposedapproach. In Papers C [32] and D [33], we show that our UPPCART frameworkis capable of analyzing transaction isolation and temporal correctness via smallyet representative examples. In Papers E [26] and F [34], we apply our UPP-CART and UPPCART-SMC frameworks in industrial use cases, respectively,with more concrete and realistic settings. We also develop tool prototypes thatimplement our solutions as proofs of concepts. In Paper B [30], we develop theSAFARE tool as a proof of concept for our analytical method, which checksthe consistency of DAGGTAX specifications using SAT solving techniques. InPaper E [26], we implement the U2Transformer tool as a proof of concept, todemonstrate our automated conversion from UTRAN specifications to UPP-CART models.

When validating the research with industry in the loop, we apply the “proofby demonstration” method [63], by developing demonstrators in industrial usecases. The developed demonstrators, as well as the development process, areeventually evaluated with respect to our research goals by both the researchersand the industrial partners. In Paper A [29], we demonstrate the benefit ofDAGGTAX via an joint analysis of the HAT system together with its develop-ers. In Paper B [30], we develop a cloud monitoring system with the engineersin the loop, and demonstrate the strength of DAGGTAX and SAFARE.

36 Chapter 4. Research Methods

Problems in industry

State of practice

State of the art

Proposed approach

Implementation of approach

Validation

Research results/papers

Industry-related activities

Academic-related activities

Research goals

Figure 4.1: The research process of the thesis

ysis on the common and variable characteristics of the surveyed works. Wealso collect literature in customized real-time data management, as well as intransaction modeling and analysis. By analyzing the strengths and weaknessesof existing approaches, we identify the challenges to be addressed related toour research goals, and propose our solutions.

During the implementation of our approach, we apply the “proof of con-cepts” method [63] to show the correctness and applicability of our proposedapproach. In Papers C [32] and D [33], we show that our UPPCART frameworkis capable of analyzing transaction isolation and temporal correctness via smallyet representative examples. In Papers E [26] and F [34], we apply our UPP-CART and UPPCART-SMC frameworks in industrial use cases, respectively,with more concrete and realistic settings. We also develop tool prototypes thatimplement our solutions as proofs of concepts. In Paper B [30], we develop theSAFARE tool as a proof of concept for our analytical method, which checksthe consistency of DAGGTAX specifications using SAT solving techniques. InPaper E [26], we implement the U2Transformer tool as a proof of concept, todemonstrate our automated conversion from UTRAN specifications to UPP-CART models.

When validating the research with industry in the loop, we apply the “proofby demonstration” method [63], by developing demonstrators in industrial usecases. The developed demonstrators, as well as the development process, areeventually evaluated with respect to our research goals by both the researchersand the industrial partners. In Paper A [29], we demonstrate the benefit ofDAGGTAX via an joint analysis of the HAT system together with its develop-ers. In Paper B [30], we develop a cloud monitoring system with the engineersin the loop, and demonstrate the strength of DAGGTAX and SAFARE.

58

Page 60: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Chapter 5

Thesis Contributions

In this chapter, we present the contributions of this thesis that address the afore-mentioned research goals. We first introduce a development process as ourmethodology to address the overall research goal, followed by a series of meth-ods and tools to facilitate the process, which address the subgoals, respectively.

5.1 The DAGGERS Process: Data AGGregationfor Embedded Real-time Systems

As a first step towards reaching our research goals defined previously, we pro-pose, at a conceptual level, a development process called DAGGERS (DataAGGregation for Embedded Real-time Systems), as the methodology to de-sign customized real-time data management solutions in a systematic manner.This process allows designers to identify work units of data aggregation andother data-related computations, as well as the desired properties from systemrequirements, based on which to derive the appropriate transaction models andthe transaction management mechanisms via model checking techniques.

The DAGGERS process, presented in Figure 5.1, includes three majorsteps, as follows.

Step I: Specification of initial work units and requirements. The processstarts with analyzing the data-related computations, including data aggrega-tions, in the system requirements. The analysis should identify the work unitsas well as the logical and temporal constraints that need to be fulfilled. Based

37

Chapter 5

Thesis Contributions

In this chapter, we present the contributions of this thesis that address the afore-mentioned research goals. We first introduce a development process as ourmethodology to address the overall research goal, followed by a series of meth-ods and tools to facilitate the process, which address the subgoals, respectively.

5.1 The DAGGERS Process: Data AGGregationfor Embedded Real-time Systems

As a first step towards reaching our research goals defined previously, we pro-pose, at a conceptual level, a development process called DAGGERS (DataAGGregation for Embedded Real-time Systems), as the methodology to de-sign customized real-time data management solutions in a systematic manner.This process allows designers to identify work units of data aggregation andother data-related computations, as well as the desired properties from systemrequirements, based on which to derive the appropriate transaction models andthe transaction management mechanisms via model checking techniques.

The DAGGERS process, presented in Figure 5.1, includes three majorsteps, as follows.

Step I: Specification of initial work units and requirements. The processstarts with analyzing the data-related computations, including data aggrega-tions, in the system requirements. The analysis should identify the work unitsas well as the logical and temporal constraints that need to be fulfilled. Based

37

59

Page 61: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

38 Chapter 5. Thesis Contributions

System requirements

Logical and temporal

requirements

Data-related

operations

Work Unit

Transaction Model

Transaction

Variants of- Atomicity- Consistency - Isolation- Durability- Timeliness

Candidate Run-time Mechanism Models

- Concurrent control- Persistency- Recovery- …

Work UnitFormal Model Analysis with

Model Checking

Run-time Mechanism

Formal Model

construct

select

compose

compose

Property violation detected

Unresolvable conflicts detected

RTDBMS

Properties satisfied Refined Transaction Model

Transaction

Under verified:- Concurrent control- Persistency- Recovery

Step I: Specification of initial work units and requirements

Step II: Iterative refinement of transaction model

Step III: System generation

- ...

Figure 5.1: The DAGGERS process

on these work units and constraints, the system designer can propose the ini-tial transaction models, including the specification of the relationships betweenthe transactions, as well as the ACID and temporal correctness variants to beensured.

Step II: Iterative refinement of transaction model. In this step, we applyformal modeling and model-checking techniques to derive the refined transac-tion models, and select the appropriate run-time mechanisms that ensure the de-sired ACID and temporal correctness properties. We construct a formal modelof the work units, on which the transactional properties are specified formally,and can be checked by the state-of-art model checkers. We also assume thata repository of models of commonly used run-time mechanisms, in the sameformal representation, has been prepared, which can be reused and composedwith the work unit models.

The refinement is the iterative “select-check” process as follows. First, weselect one candidate mechanism from the repository and compose its modelwith the work unit models. Second, we check the composed model againstthe specified properties. If any property violation is detected, which indicatesthat the selected mechanism fails to meet the requirement, a new candidatemechanism is selected to replace the current one, and the model checking isrestarted. This iterative process continues until all properties are satisfied bysome selected mechanisms.

In case that none of the run-time mechanisms in the repository can en-

38 Chapter 5. Thesis Contributions

System requirements

Logical and temporal

requirements

Data-related

operations

Work Unit

Transaction Model

Transaction

Variants of- Atomicity- Consistency - Isolation- Durability- Timeliness

Candidate Run-time Mechanism Models

- Concurrent control- Persistency- Recovery- …

Work UnitFormal Model Analysis with

Model Checking

Run-time Mechanism

Formal Model

construct

select

compose

compose

Property violation detected

Unresolvable conflicts detected

RTDBMS

Properties satisfied Refined Transaction Model

Transaction

Under verified:- Concurrent control- Persistency- Recovery

Step I: Specification of initial work units and requirements

Step II: Iterative refinement of transaction model

Step III: System generation

- ...

Figure 5.1: The DAGGERS process

on these work units and constraints, the system designer can propose the ini-tial transaction models, including the specification of the relationships betweenthe transactions, as well as the ACID and temporal correctness variants to beensured.

Step II: Iterative refinement of transaction model. In this step, we applyformal modeling and model-checking techniques to derive the refined transac-tion models, and select the appropriate run-time mechanisms that ensure the de-sired ACID and temporal correctness properties. We construct a formal modelof the work units, on which the transactional properties are specified formally,and can be checked by the state-of-art model checkers. We also assume thata repository of models of commonly used run-time mechanisms, in the sameformal representation, has been prepared, which can be reused and composedwith the work unit models.

The refinement is the iterative “select-check” process as follows. First, weselect one candidate mechanism from the repository and compose its modelwith the work unit models. Second, we check the composed model againstthe specified properties. If any property violation is detected, which indicatesthat the selected mechanism fails to meet the requirement, a new candidatemechanism is selected to replace the current one, and the model checking isrestarted. This iterative process continues until all properties are satisfied bysome selected mechanisms.

In case that none of the run-time mechanisms in the repository can en-

60

Page 62: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

5.2 DAGGTAX: Data AGGregation TAXonomy 39

sure the specified properties, the designer needs to adjust the initial transactionmodels, that is, by adjusting the ACID and temporal correctness variants. If theconflicts cannot be resolved by any transaction model, the designer needs to ad-just the requirements as they are proven infeasible under the assumed DBMSplatform. As soon as the requirements are adjusted, the entire DAGGERS pro-cess is restarted.

The outcome of DAGGERS is the refined transaction models and a set oftransaction management mechanisms that are proved to achieve the appropriateACID and temporal correctness variants. A customized RTDBMS can then beimplemented using the transaction models and mechanisms.

Step III: System generation. The third step is to generate the RTDBMS,by implementing the verified transaction models and mechanisms, or via cus-tomization configurations provided by the DBMS platform.

In this thesis, we focus on providing design support for customized RT-DBMS, via a series of methods and tools to facilitate the specification, model-ing and analysis of transactions and transactional properties during Step I andStep II of DAGGERS. These proposed methods and tools are formulated ascontributions that address the related subgoals as follows.

5.2 DAGGTAX: Data AGGregation TAXonomyIn order to identify the data aggregation computations and their required prop-erties, we have extensively surveyed data aggregation processes as proposed intheory and used in practice, and investigated their common and variable charac-teristics. Based on a survey on data aggregation applications and industrial casestudies, we investigate the high-level characteristics relevant to logical dataconsistency and temporal correctness in Data Aggregation Processes (DAP),and propose a taxonomy, called DAGGTAX (Data AGGregation TAXonomy),in Paper A [29]. It is presented as a feature diagram [64], in which each char-acteristic is modeled as a feature that can be selected to form a software design.The features in DAGGTAX, extracted from the survey, cover the common andvariable characteristics of the main constituents of a data aggregation process,which are the raw data, the aggregate function and the aggregated data, aswell as the triggering patterns and real-time properties of the process.

Figure 5.2 presents the feature diagram of DAGGTAX. In this diagram,features presented with solid dots are mandatory features. For instance, “ag-gregate function” is mandatory for any data aggregation process. Optional

5.2 DAGGTAX: Data AGGregation TAXonomy 39

sure the specified properties, the designer needs to adjust the initial transactionmodels, that is, by adjusting the ACID and temporal correctness variants. If theconflicts cannot be resolved by any transaction model, the designer needs to ad-just the requirements as they are proven infeasible under the assumed DBMSplatform. As soon as the requirements are adjusted, the entire DAGGERS pro-cess is restarted.

The outcome of DAGGERS is the refined transaction models and a set oftransaction management mechanisms that are proved to achieve the appropriateACID and temporal correctness variants. A customized RTDBMS can then beimplemented using the transaction models and mechanisms.

Step III: System generation. The third step is to generate the RTDBMS,by implementing the verified transaction models and mechanisms, or via cus-tomization configurations provided by the DBMS platform.

In this thesis, we focus on providing design support for customized RT-DBMS, via a series of methods and tools to facilitate the specification, model-ing and analysis of transactions and transactional properties during Step I andStep II of DAGGERS. These proposed methods and tools are formulated ascontributions that address the related subgoals as follows.

5.2 DAGGTAX: Data AGGregation TAXonomyIn order to identify the data aggregation computations and their required prop-erties, we have extensively surveyed data aggregation processes as proposed intheory and used in practice, and investigated their common and variable charac-teristics. Based on a survey on data aggregation applications and industrial casestudies, we investigate the high-level characteristics relevant to logical dataconsistency and temporal correctness in Data Aggregation Processes (DAP),and propose a taxonomy, called DAGGTAX (Data AGGregation TAXonomy),in Paper A [29]. It is presented as a feature diagram [64], in which each char-acteristic is modeled as a feature that can be selected to form a software design.The features in DAGGTAX, extracted from the survey, cover the common andvariable characteristics of the main constituents of a data aggregation process,which are the raw data, the aggregate function and the aggregated data, aswell as the triggering patterns and real-time properties of the process.

Figure 5.2 presents the feature diagram of DAGGTAX. In this diagram,features presented with solid dots are mandatory features. For instance, “ag-gregate function” is mandatory for any data aggregation process. Optional

61

Page 63: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

40 Chapter 5. Thesis Contributions

Agg

rega

tio

n

Pro

cess

Raw

Dat

a

Agg

rega

te

Fun

ctio

n

Pu

llSh

ared

Rea

l-Ti

me

(RD

)

[1..*

]

Pers

iste

ntl

y St

rore

d

Shed

dab

le

Min

imu

m

Inte

rval

Har

d

Firm

Soft

Du

plic

ate

Sen

siti

ve

Exem

pla

ry

Sum

mar

y

Pro

gres

sive

Ho

listi

c

Trig

geri

ng

Patt

ern

Ap

erio

dic

Peri

od

ic

Agg

rega

ted

D

ata

Pu

sh

Shar

ed

Rea

l-Ti

me

(AD

)D

ura

ble

Har

d

Firm

Soft

Ab

solu

te

Val

idit

y In

terv

al

Rel

ativ

e V

alid

ity

Inte

rval

Rea

l-Ti

me

(P)

Dea

dlin

e

Har

d

FirmSo

ftTi

me

-to

-liv

e

Peri

od

Ab

solu

te

Val

idit

y In

terv

al

Loss

y

[m..n

]

Man

dat

ory

Op

tio

nal

Alt

ern

ativ

eC

ard

inal

ity

Raw

Dat

a Ty

pe

[1..*

]

Spo

rad

ic

Even

ts

Even

ts

Min

imu

m

Inte

rval

Max

imu

m

Inte

rval

Max

imu

m

Inte

rval

Figure 5.2: Data AGGregation TAXonomy (DAGGTAX)[29]

40 Chapter 5. Thesis Contributions

Agg

rega

tio

n

Pro

cess

Raw

Dat

a

Agg

rega

te

Fun

ctio

n

Pu

llSh

ared

Rea

l-Ti

me

(RD

)

[1..*

]

Pers

iste

ntl

y St

rore

d

Shed

dab

le

Min

imu

m

Inte

rval

Har

d

Firm

Soft

Du

plic

ate

Sen

siti

ve

Exem

pla

ry

Sum

mar

y

Pro

gres

sive

Ho

listi

c

Trig

geri

ng

Patt

ern

Ap

erio

dic

Peri

od

ic

Agg

rega

ted

D

ata

Pu

sh

Shar

ed

Rea

l-Ti

me

(AD

)D

ura

ble

Har

d

Firm

Soft

Ab

solu

te

Val

idit

y In

terv

al

Rel

ativ

e V

alid

ity

Inte

rval

Rea

l-Ti

me

(P)

Dea

dlin

e

Har

d

FirmSo

ftTi

me

-to

-liv

e

Peri

od

Ab

solu

te

Val

idit

y In

terv

al

Loss

y

[m..n

]

Man

dat

ory

Op

tio

nal

Alt

ern

ativ

eC

ard

inal

ity

Raw

Dat

a Ty

pe

[1..*

]

Spo

rad

ic

Even

ts

Even

ts

Min

imu

m

Inte

rval

Max

imu

m

Inte

rval

Max

imu

m

Inte

rval

Figure 5.2: Data AGGregation TAXonomy (DAGGTAX)[29]

62

Page 64: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

5.3 SAFARE: SAt-based Feature-oriented Data Aggregation Design41

features are denoted by circles, such as “real-time (P)”, which means that adata aggregation may have real-time constraints. Several features associatedwith a spanning curve form a group of alternative features, from which onefeature must be selected by a particular aggregation process. As an example,the “triggering pattern” of a data aggregation process must be one of the fol-lowing: “aperiodic”, “periodic”, or “sporadic”. The cardinality [m..n] (n ≥ m≥ 0) annotating a feature denotes how many instances of the feature, includingthe entire sub-tree, can be contained as children of the feature’s parent. We usea star symbol “*” to denote if the bounds of the cardinality are undecided. Forinstance, in Figure 5.2, a data aggregation process may have at least one “rawdata type”.

DAGGTAX provides a comprehensive view of data aggregation processesfor designers. A data aggregation process can be constructed via the selectionof desired features and their combination. Based on the taxonomy, we haveintroduced design constraints that eliminate some of the infeasible combina-tions of features during the design, such as conflicts between real-time data andnon-real-time processes. For instance, “persistently stored” data may lead tounpredictability in its accessing time, thus contradicting with “hard real-time”features. Since timing properties such as validity intervals and deadlines areexpressed by the taxonomy, we can also calculate the propagation of real-timeproperties along the aggregation processes in multiple levels of aggregation.We have also proposed a set of design heuristics to help the designer decidethe necessary mechanisms for achieving the selected features and other systemproperties. An example of such heuristics is that, if the data has a “shared”feature, the designer may need to consider concurrency control in the systemdesign in order to maintain logical data consistency.

5.3 SAFARE: SAt-based Feature-oriented DataAggregation Design

In order to enable automated reasoning about the correctness of data aggrega-tion design, we propose to transform the feature diagram, as well as the con-straints between features, into propositional formulas, which can be checkedautomatically by existing SAT solvers.

Given a DAGGTAX specification s consisting of a set of selected features{f1, ..., fm} and a set of de-selected features {fm+1, ..., fn}, and a system con-sisting of a set of DAP {s1, ..., sk}, we define the following rules to transformthe specifications and constraints into propositional formulas.

5.3 SAFARE: SAt-based Feature-oriented Data Aggregation Design41

features are denoted by circles, such as “real-time (P)”, which means that adata aggregation may have real-time constraints. Several features associatedwith a spanning curve form a group of alternative features, from which onefeature must be selected by a particular aggregation process. As an example,the “triggering pattern” of a data aggregation process must be one of the fol-lowing: “aperiodic”, “periodic”, or “sporadic”. The cardinality [m..n] (n ≥ m≥ 0) annotating a feature denotes how many instances of the feature, includingthe entire sub-tree, can be contained as children of the feature’s parent. We usea star symbol “*” to denote if the bounds of the cardinality are undecided. Forinstance, in Figure 5.2, a data aggregation process may have at least one “rawdata type”.

DAGGTAX provides a comprehensive view of data aggregation processesfor designers. A data aggregation process can be constructed via the selectionof desired features and their combination. Based on the taxonomy, we haveintroduced design constraints that eliminate some of the infeasible combina-tions of features during the design, such as conflicts between real-time data andnon-real-time processes. For instance, “persistently stored” data may lead tounpredictability in its accessing time, thus contradicting with “hard real-time”features. Since timing properties such as validity intervals and deadlines areexpressed by the taxonomy, we can also calculate the propagation of real-timeproperties along the aggregation processes in multiple levels of aggregation.We have also proposed a set of design heuristics to help the designer decidethe necessary mechanisms for achieving the selected features and other systemproperties. An example of such heuristics is that, if the data has a “shared”feature, the designer may need to consider concurrency control in the systemdesign in order to maintain logical data consistency.

5.3 SAFARE: SAt-based Feature-oriented DataAggregation Design

In order to enable automated reasoning about the correctness of data aggrega-tion design, we propose to transform the feature diagram, as well as the con-straints between features, into propositional formulas, which can be checkedautomatically by existing SAT solvers.

Given a DAGGTAX specification s consisting of a set of selected features{f1, ..., fm} and a set of de-selected features {fm+1, ..., fn}, and a system con-sisting of a set of DAP {s1, ..., sk}, we define the following rules to transformthe specifications and constraints into propositional formulas.

63

Page 65: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

42 Chapter 5. Thesis Contributions

1. For each feature f in a specification, create a variable f .

2. The selection of feature f is formalized in Boolean logic, as f, meaningthat the boolean variable f is true. The de-selection of f is formalized as¬f .

3. The specification s is a conjunction of propositions: s := f1 ∧ f2 ∧ ... ∧fm ∧ ¬fm+1 ∧ ... ∧ ¬fn.

4. A constraint c between features is specified as a formula c, which rep-resents the feature variables connected by logical operators ∧, ∨, ¬, and⇒ (implication). For instance, if feature f1 requires feature f2, this canbe formalized as: f1 ⇒ f2. If feature f1 excludes feature f2, this can beformalized as: f1 ⇒ (¬f2).

5. The specification of the system is inconsistent, if the propositional for-mula Ψ ⇒ false is satisfied, where Ψ := s1 ∧ ... ∧ sk ∧ c1 ∧ ... ∧ cl,where l is the number of constraints.

For instance, according to our proposed rules, the real-time strictness levelof the raw data must be higher than or equal to the real-time strictness level ofthe aggregated data. In a concrete specification of a single DAP called Deci-sionProcess, if the aggregated data Decision is required to be hard real-time,then its real-time raw data Sensor must also be hard real-time. This constraintcan be formalized as the following formula (using our naming convention inPaper B):

DecisionProcess_Decision_RealTime_Hard ∧DecisionProcess_Sensor_RealTime

⇒ DecisionProcess_Sensor_RealTime_Hard

If the specification formulated as a conjunction of such formulas is proveninconsistent, it indicates that there exists conflict among the selected features.The designer needs to resolve the conflict by selecting another feature combi-nation.

The automated formalization and analysis of DAGGTAX-based specifi-cations are realized by our design tool called SAFARE (SAt-based Feature-oriented dAta aggREgation design) (Figure 5.3), proposed in Paper B[30].This tool provides a graphical interface for the specification using DAGGTAX,and automatically checks for inconsistency using the integrated Microsoft Z3

42 Chapter 5. Thesis Contributions

1. For each feature f in a specification, create a variable f .

2. The selection of feature f is formalized in Boolean logic, as f, meaningthat the boolean variable f is true. The de-selection of f is formalized as¬f .

3. The specification s is a conjunction of propositions: s := f1 ∧ f2 ∧ ... ∧fm ∧ ¬fm+1 ∧ ... ∧ ¬fn.

4. A constraint c between features is specified as a formula c, which rep-resents the feature variables connected by logical operators ∧, ∨, ¬, and⇒ (implication). For instance, if feature f1 requires feature f2, this canbe formalized as: f1 ⇒ f2. If feature f1 excludes feature f2, this can beformalized as: f1 ⇒ (¬f2).

5. The specification of the system is inconsistent, if the propositional for-mula Ψ ⇒ false is satisfied, where Ψ := s1 ∧ ... ∧ sk ∧ c1 ∧ ... ∧ cl,where l is the number of constraints.

For instance, according to our proposed rules, the real-time strictness levelof the raw data must be higher than or equal to the real-time strictness level ofthe aggregated data. In a concrete specification of a single DAP called Deci-sionProcess, if the aggregated data Decision is required to be hard real-time,then its real-time raw data Sensor must also be hard real-time. This constraintcan be formalized as the following formula (using our naming convention inPaper B):

DecisionProcess_Decision_RealTime_Hard ∧DecisionProcess_Sensor_RealTime

⇒ DecisionProcess_Sensor_RealTime_Hard

If the specification formulated as a conjunction of such formulas is proveninconsistent, it indicates that there exists conflict among the selected features.The designer needs to resolve the conflict by selecting another feature combi-nation.

The automated formalization and analysis of DAGGTAX-based specifi-cations are realized by our design tool called SAFARE (SAt-based Feature-oriented dAta aggREgation design) (Figure 5.3), proposed in Paper B[30].This tool provides a graphical interface for the specification using DAGGTAX,and automatically checks for inconsistency using the integrated Microsoft Z3

64

Page 66: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

5.4 The UTRAN Profile: UML for TRANsactions 43

Figure 5.3: Interface of SAFARE [30]

Theorem Prover [55]. Designers specify the DAP in section A, and the depen-dencies between DAP in section B, in Figure 5.3. Tab C opens up the con-sistency check window. If the specification violates a design constraint, for in-stance, trying to obtain a hard real-time aggregated data from soft real-time rawdata, SAFARE will detect the violation, and pin-point the contradictory specifi-cation for the designer in the consistency check window. Tab D provides high-level recommendation of DBMS from the registered DBMS options, based onthe selected DAP features. For instance, if “durable” is a selected feature, thena DBMS with durability functionality will be recommended by the tool.

5.4 The UTRAN Profile: UML for TRANsactionsTo address the lack of design-time support for transactions and transactionalproperties, we propose a UML profile in Paper E[26], called UTRAN (UMLfor TRANsactions), which provides explicit specification capability for atom-icity, isolation and temporal correctness.

The overview of UTRAN [26] is presented in Figure 5.4. UTRAN speci-fies a transaction as an activity, and includes modeling elements to explicitlyexpress the three properties as well as the corresponding transaction manage-ment mechanisms. Using UTRAN, one can specify different atomicity vari-

5.4 The UTRAN Profile: UML for TRANsactions 43

Figure 5.3: Interface of SAFARE [30]

Theorem Prover [55]. Designers specify the DAP in section A, and the depen-dencies between DAP in section B, in Figure 5.3. Tab C opens up the con-sistency check window. If the specification violates a design constraint, for in-stance, trying to obtain a hard real-time aggregated data from soft real-time rawdata, SAFARE will detect the violation, and pin-point the contradictory specifi-cation for the designer in the consistency check window. Tab D provides high-level recommendation of DBMS from the registered DBMS options, based onthe selected DAP features. For instance, if “durable” is a selected feature, thena DBMS with durability functionality will be recommended by the tool.

5.4 The UTRAN Profile: UML for TRANsactionsTo address the lack of design-time support for transactions and transactionalproperties, we propose a UML profile in Paper E[26], called UTRAN (UMLfor TRANsactions), which provides explicit specification capability for atom-icity, isolation and temporal correctness.

The overview of UTRAN [26] is presented in Figure 5.4. UTRAN speci-fies a transaction as an activity, and includes modeling elements to explicitlyexpress the three properties as well as the corresponding transaction manage-ment mechanisms. Using UTRAN, one can specify different atomicity vari-

65

Page 67: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

44 Chapter 5. Thesis Contributions

<<Metaclass>>

Com

ment

<<Metaclass>>

Com

ment

<<Metaclass>>

Activity

<<Metaclass>>

Activity

<<Metaclass>>

Action

<<Metaclass>>

Action

tid

: Int

eger

<<stereotype>>

Transaction

tid

: Int

eger

<<stereotype>>

Transaction

pid

: Int

eger

<<stereotype>>

IsolationPhenomenon

pid

: Int

eger

<<stereotype>>

IsolationPhenomenon

<<stereotype>>

Com

pensation

<<stereotype>>

Com

pensation

tid

: Int

eger

<<stereotype>>

Operation

tid

: Int

eger

<<stereotype>>

Operation

<<Metaclass>>

ActivityEdge

<<Metaclass>>

ActivityEdge

max

_de

lay:

M

AR

TE::

NFP

_D

ura

tion

min

_de

lay:

M

AR

TE::

NFP

_D

ura

tion

<<stereotype>>

DelayedNext

max

_de

lay:

M

AR

TE::

NFP

_D

ura

tion

min

_de

lay:

M

AR

TE::

NFP

_D

ura

tion

<<stereotype>>

DelayedNext

exec

Tim

e:

MA

RTE

::N

FP_

Du

rati

ond

id: I

nteg

er

<<stereotype>>

DBOperation

exec

Tim

e:

MA

RTE

::N

FP_

Du

rati

ond

id: I

nteg

er

<<stereotype>>

DBOperation

<<stereotype>>

WriteOP

<<stereotype>>

WriteOP

exec

Tim

e:

MA

RTE

::N

FP_

Du

rati

on

<<stereotype>>

TMOperation

exec

Tim

e:

MA

RTE

::N

FP_

Du

rati

on

<<stereotype>>

TMOperation

<<stereotype>>

BeginOP

<<stereotype>>

BeginOP

<<stereotype>>

Com

mitOP

<<stereotype>>

Com

mitOP

<<stereotype>>

AbortOP

<<stereotype>>

AbortOP

<<Metaclass>>

Nam

edElem

ent

<<Metaclass>>

Nam

edElem

ent

tran

sact

ion

s:

Inte

ger[

*]

Sch

ed: S

che

dPol

icy

<<stereotype>>

RTD

BMSScope

tran

sact

ion

s:

Inte

ger[

*]

Sch

ed: S

che

dPol

icy

<<stereotype>>

RTD

BMSScope

isol

atio

nLe

vel:

Isol

atio

nLev

eld

isal

low

edP

hen

om

ena

: In

tege

r[*

]cc

: CC

Alg

ori

thm

<<stereotype>>

IsolationSpecification

isol

atio

nLe

vel:

Isol

atio

nLev

eld

isal

low

edP

hen

om

ena

: In

tege

r[*

]cc

: CC

Alg

ori

thm

<<stereotype>>

IsolationSpecification

relD

ead

line:

M

AR

TE::

NFP

_D

ura

tion

pri

orit

y: In

tege

rp

atte

rn:

MA

RTE

::A

rriv

alP

atte

rnp

erio

d: M

AR

TE::

NFP

_Du

rati

on

relV

alid

ity:

MA

RTE:

:NFP

_Dur

atio

nre

lVal

Gro

up:

Inte

ger[

*]

<<stereotype>>

TemporalCorrectnessSpecification

relD

ead

line:

M

AR

TE::

NFP

_D

ura

tion

pri

orit

y: In

tege

rp

atte

rn:

MA

RTE

::A

rriv

alP

atte

rnp

erio

d: M

AR

TE::

NFP

_Du

rati

on

relV

alid

ity:

MA

RTE:

:NFP

_Dur

atio

nre

lVal

Gro

up:

Inte

ger[

*]

<<stereotype>>

TemporalCorrectnessSpecification

atom

Var

ian

t: A

tom

icit

yVa

rian

tar

Mec

h: A

RM

echa

nis

mre

cove

rTim

e: M

AR

TE::

NFP

_D

ura

tion

com

pID

: In

tege

r

<<stereotype>>

AtomicitySpecification

atom

Var

ian

t: A

tom

icit

yVa

rian

tar

Mec

h: A

RM

echa

nis

mre

cove

rTim

e: M

AR

TE::

NFP

_D

ura

tion

com

pID

: In

tege

r

<<stereotype>>

AtomicitySpecification

<<Metaclass>>

Com

ment

<<Metaclass>>

Com

ment

Rea

dU

ncom

mit

ted

Rea

dCo

mm

itte

dR

epea

tabl

eRea

dSe

rial

izab

leC

usto

miz

ed

<<Enum

eration>>

IsolationLevel

Rea

dU

ncom

mit

ted

Rea

dCo

mm

itte

dR

epea

tabl

eRea

dSe

rial

izab

leC

usto

miz

ed

<<Enum

eration>>

IsolationLevel

Rol

lbac

kIm

med

iate

Com

pen

sate

Def

erre

dCo

mpe

nsat

e

<<Enum

eration>>

ARMechanism

Rol

lbac

kIm

med

iate

Com

pen

sate

Def

erre

dCo

mpe

nsat

e

<<Enum

eration>>

ARMechanism

R2P

LSh

ortR

ead

lock

2PL-

HP

<<Enum

eration>>

CCA

lgorithm

R2P

LSh

ortR

ead

lock

2PL-

HP

<<Enum

eration>>

CCA

lgorithm

FIFO

Rou

ndR

obi

nP

rior

ity

<<Enum

eration>>

SchedPolicy

FIFO

Rou

ndR

obi

nP

rior

ity

<<Enum

eration>>

SchedPolicy

absV

alid

ity:

M

AR

TE::

NFP

_D

ura

tio

n

<<stereotype>>

ReadO

P

absV

alid

ity:

M

AR

TE::

NFP

_D

ura

tio

n

<<stereotype>>

ReadO

P

Failu

reA

tom

icit

yR

elax

edA

tom

icit

y

<<Enum

eration>>

AtomicityVariant

Failu

reA

tom

icit

yR

elax

edA

tom

icit

y

<<Enum

eration>>

AtomicityVariant

<<Metaclass>>

StructuredActivityN

ode

<<Metaclass>>

StructuredActivityN

ode

tran

sact

ion

s: In

tege

r[*]

<<stereotype>>

TransactionSequence

tran

sact

ion

s: In

tege

r[*]

<<stereotype>>

TransactionSequence

Figure 5.4: The UTRAN profile[26]

44 Chapter 5. Thesis Contributions

<<Metaclass>>

Com

ment

<<Metaclass>>

Com

ment

<<Metaclass>>

Activity

<<Metaclass>>

Activity

<<Metaclass>>

Action

<<Metaclass>>

Action

tid

: Int

eger

<<stereotype>>

Transaction

tid

: Int

eger

<<stereotype>>

Transaction

pid

: Int

eger

<<stereotype>>

IsolationPhenomenon

pid

: Int

eger

<<stereotype>>

IsolationPhenomenon

<<stereotype>>

Com

pensation

<<stereotype>>

Com

pensation

tid

: Int

eger

<<stereotype>>

Operation

tid

: Int

eger

<<stereotype>>

Operation

<<Metaclass>>

ActivityEdge

<<Metaclass>>

ActivityEdge

max

_de

lay:

M

AR

TE::

NFP

_D

ura

tion

min

_de

lay:

M

AR

TE::

NFP

_D

ura

tion

<<stereotype>>

DelayedNext

max

_de

lay:

M

AR

TE::

NFP

_D

ura

tion

min

_de

lay:

M

AR

TE::

NFP

_D

ura

tion

<<stereotype>>

DelayedNext

exec

Tim

e:

MA

RTE

::N

FP_

Du

rati

ond

id: I

nteg

er

<<stereotype>>

DBOperation

exec

Tim

e:

MA

RTE

::N

FP_

Du

rati

ond

id: I

nteg

er

<<stereotype>>

DBOperation

<<stereotype>>

WriteOP

<<stereotype>>

WriteOP

exec

Tim

e:

MA

RTE

::N

FP_

Du

rati

on

<<stereotype>>

TMOperation

exec

Tim

e:

MA

RTE

::N

FP_

Du

rati

on

<<stereotype>>

TMOperation

<<stereotype>>

BeginOP

<<stereotype>>

BeginOP

<<stereotype>>

Com

mitOP

<<stereotype>>

Com

mitOP

<<stereotype>>

AbortOP

<<stereotype>>

AbortOP

<<Metaclass>>

Nam

edElem

ent

<<Metaclass>>

Nam

edElem

ent

tran

sact

ion

s:

Inte

ger[

*]

Sch

ed: S

che

dPol

icy

<<stereotype>>

RTD

BMSScope

tran

sact

ion

s:

Inte

ger[

*]

Sch

ed: S

che

dPol

icy

<<stereotype>>

RTD

BMSScope

isol

atio

nLe

vel:

Isol

atio

nLev

eld

isal

low

edP

hen

om

ena

: In

tege

r[*

]cc

: CC

Alg

ori

thm

<<stereotype>>

IsolationSpecification

isol

atio

nLe

vel:

Isol

atio

nLev

eld

isal

low

edP

hen

om

ena

: In

tege

r[*

]cc

: CC

Alg

ori

thm

<<stereotype>>

IsolationSpecification

relD

ead

line:

M

AR

TE::

NFP

_D

ura

tion

pri

orit

y: In

tege

rp

atte

rn:

MA

RTE

::A

rriv

alP

atte

rnp

erio

d: M

AR

TE::

NFP

_Du

rati

on

relV

alid

ity:

MA

RTE:

:NFP

_Dur

atio

nre

lVal

Gro

up:

Inte

ger[

*]

<<stereotype>>

TemporalCorrectnessSpecification

relD

ead

line:

M

AR

TE::

NFP

_D

ura

tion

pri

orit

y: In

tege

rp

atte

rn:

MA

RTE

::A

rriv

alP

atte

rnp

erio

d: M

AR

TE::

NFP

_Du

rati

on

relV

alid

ity:

MA

RTE:

:NFP

_Dur

atio

nre

lVal

Gro

up:

Inte

ger[

*]

<<stereotype>>

TemporalCorrectnessSpecification

atom

Var

ian

t: A

tom

icit

yVa

rian

tar

Mec

h: A

RM

echa

nis

mre

cove

rTim

e: M

AR

TE::

NFP

_D

ura

tion

com

pID

: In

tege

r

<<stereotype>>

AtomicitySpecification

atom

Var

ian

t: A

tom

icit

yVa

rian

tar

Mec

h: A

RM

echa

nis

mre

cove

rTim

e: M

AR

TE::

NFP

_D

ura

tion

com

pID

: In

tege

r

<<stereotype>>

AtomicitySpecification

<<Metaclass>>

Com

ment

<<Metaclass>>

Com

ment

Rea

dU

ncom

mit

ted

Rea

dCo

mm

itte

dR

epea

tabl

eRea

dSe

rial

izab

leC

usto

miz

ed

<<Enum

eration>>

IsolationLevel

Rea

dU

ncom

mit

ted

Rea

dCo

mm

itte

dR

epea

tabl

eRea

dSe

rial

izab

leC

usto

miz

ed

<<Enum

eration>>

IsolationLevel

Rol

lbac

kIm

med

iate

Com

pen

sate

Def

erre

dCo

mpe

nsat

e

<<Enum

eration>>

ARMechanism

Rol

lbac

kIm

med

iate

Com

pen

sate

Def

erre

dCo

mpe

nsat

e

<<Enum

eration>>

ARMechanism

R2P

LSh

ortR

ead

lock

2PL-

HP

<<Enum

eration>>

CCA

lgorithm

R2P

LSh

ortR

ead

lock

2PL-

HP

<<Enum

eration>>

CCA

lgorithm

FIFO

Rou

ndR

obi

nP

rior

ity

<<Enum

eration>>

SchedPolicy

FIFO

Rou

ndR

obi

nP

rior

ity

<<Enum

eration>>

SchedPolicy

absV

alid

ity:

M

AR

TE::

NFP

_D

ura

tio

n

<<stereotype>>

ReadO

P

absV

alid

ity:

M

AR

TE::

NFP

_D

ura

tio

n

<<stereotype>>

ReadO

P

Failu

reA

tom

icit

yR

elax

edA

tom

icit

y

<<Enum

eration>>

AtomicityVariant

Failu

reA

tom

icit

yR

elax

edA

tom

icit

y

<<Enum

eration>>

AtomicityVariant

<<Metaclass>>

StructuredActivityN

ode

<<Metaclass>>

StructuredActivityN

ode

tran

sact

ion

s: In

tege

r[*]

<<stereotype>>

TransactionSequence

tran

sact

ion

s: In

tege

r[*]

<<stereotype>>

TransactionSequence

Figure 5.4: The UTRAN profile[26]

66

Page 68: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

5.5 The UPPCART Framework: UPPaal for Concurrent AtomicReal-time Transactions 45

ants and their supporting recovery mechanisms in the activity diagram, withthe corresponding stereotypes provided by UTRAN. The customized isolationproperties can be specified as a set of transaction interleavings, stereotyped asIsolationPhenomenon, that should be prevented by the selected CC algorithm.Time-related information such as deadlines and periods, which are reused fromthe UML-MARTE (Modeling and Analysis of Real-Time Embedded systems)profile [65] for expressing timing information in real-time systems, can be an-notated to transactions and operations. We also propose a set of syntactic con-straints for UTRAN specifications, formulated in the Object Constraint Lan-guage (OCL).

5.5 The UPPCART Framework: UPPaal forConcurrent Atomic Real-time Transactions

One challenge of reasoning about the trade-offs between atomicity, isolationand temporal correctness lies in the analysis of these properties in a uniformedframework, together with different abort recovery, concurrency control andscheduling mechanisms. To address this, we propose a formal framework,called UPPCART (UPPAAL for Concurrent Atomic Real-time Transactions)[33, 32, 26], that facilitates flexible modeling of real-time transactions withthese mechanisms, and verification of the specified trade-offs between the men-tioned properties.

5.5.1 Modeling RTDBMS as a Network of Timed AutomataIn UPPCART, the RTDBMS is modeled as a network of UPPAAL TA, whichis composed of automata representing the computational work to be executed,and automata serving as monitors for the desired properties. An illustration ofUPPCART is presented in Figure 5.5. Formally, we define an RTDBMS N asfollows:

N ::= W1 || ... ||Wn ||ACCManager ||AATManager

||O1 || ... ||Ok ||D1 || ... ||Dm ||S1 || ... ||Sl,(5.1)

where W1, ..., Wn are work unit automata of transactions T1, ..., Tn, respec-tively. They also model the WU’s interaction with the transaction manager withrespect to concurrency control and abort recovery. ACCManager is the CC-Manager automaton that models the CC algorithm, and interacts with the work

5.5 The UPPCART Framework: UPPaal for Concurrent AtomicReal-time Transactions 45

ants and their supporting recovery mechanisms in the activity diagram, withthe corresponding stereotypes provided by UTRAN. The customized isolationproperties can be specified as a set of transaction interleavings, stereotyped asIsolationPhenomenon, that should be prevented by the selected CC algorithm.Time-related information such as deadlines and periods, which are reused fromthe UML-MARTE (Modeling and Analysis of Real-Time Embedded systems)profile [65] for expressing timing information in real-time systems, can be an-notated to transactions and operations. We also propose a set of syntactic con-straints for UTRAN specifications, formulated in the Object Constraint Lan-guage (OCL).

5.5 The UPPCART Framework: UPPaal forConcurrent Atomic Real-time Transactions

One challenge of reasoning about the trade-offs between atomicity, isolationand temporal correctness lies in the analysis of these properties in a uniformedframework, together with different abort recovery, concurrency control andscheduling mechanisms. To address this, we propose a formal framework,called UPPCART (UPPAAL for Concurrent Atomic Real-time Transactions)[33, 32, 26], that facilitates flexible modeling of real-time transactions withthese mechanisms, and verification of the specified trade-offs between the men-tioned properties.

5.5.1 Modeling RTDBMS as a Network of Timed AutomataIn UPPCART, the RTDBMS is modeled as a network of UPPAAL TA, whichis composed of automata representing the computational work to be executed,and automata serving as monitors for the desired properties. An illustration ofUPPCART is presented in Figure 5.5. Formally, we define an RTDBMS N asfollows:

N ::= W1 || ... ||Wn ||ACCManager ||AATManager

||O1 || ... ||Ok ||D1 || ... ||Dm ||S1 || ... ||Sl,(5.1)

where W1, ..., Wn are work unit automata of transactions T1, ..., Tn, respec-tively. They also model the WU’s interaction with the transaction manager withrespect to concurrency control and abort recovery. ACCManager is the CC-Manager automaton that models the CC algorithm, and interacts with the work

67

Page 69: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

46 Chapter 5. Thesis Contributions

CCManager Automaton

Work Unit Automaton

miss_deadlineIsolationObserver

phenomenonCandidate CCManager Automaton

Data Automaton

age:=0

ATManager Automaton Candidate ATManager Automaton

|| ||

Figure 5.5: An illustration of the UPPCART framework

unit TA. AATManager is the ATManager automaton that models the atomic-ity controller of recovery mechanisms upon abort of transactions. O1, ..., Ok

are IsolationObserver automata that observe the phenomena to be precludedby isolation, respectively. D1, ..., Dm are data automata for the data with tem-poral validity constraints, respectively. S1, ..., Sl are automata for transactionsequences, respectively.

5.5.2 Pattern-based Construction

For each type of the aforementioned TA in N , we propose a set of parameter-ized patterns and connectors for the pattern-based construction. A parameter-ized pattern of TA is a reusable structure that models a repetitive behavior orproperty. Formally, we define a parameterized pattern as follows:

PP (Para) ::=(Lpp, Lpinit, Xpp, Vpp, Ipp, Actpp, Epp)

∪ Function,(5.2)

where, aligned with the definition in Equation 2.1, Lpp is a finite set oflocations, Lpinit is a finite set of initial locations, Xpp is a finite set of clockvariables, Vpp is a finite set of discrete variables, Ipp assigns invariants to loca-tions, Actpp is a finite set of actions, and Epp is a set of edges. Para is a set ofparameters (para1, para2, ...) that appears in the tuple, and Function is a setof function signatures that appear in Epp.

A parameterized connector is a set of edges that connect two parameter-ized patterns. Formally, a parameterized connector connecting parameterized

46 Chapter 5. Thesis Contributions

CCManager Automaton

Work Unit Automaton

miss_deadlineIsolationObserver

phenomenonCandidate CCManager Automaton

Data Automaton

age:=0

ATManager Automaton Candidate ATManager Automaton

|| ||

Figure 5.5: An illustration of the UPPCART framework

unit TA. AATManager is the ATManager automaton that models the atomic-ity controller of recovery mechanisms upon abort of transactions. O1, ..., Ok

are IsolationObserver automata that observe the phenomena to be precludedby isolation, respectively. D1, ..., Dm are data automata for the data with tem-poral validity constraints, respectively. S1, ..., Sl are automata for transactionsequences, respectively.

5.5.2 Pattern-based Construction

For each type of the aforementioned TA in N , we propose a set of parameter-ized patterns and connectors for the pattern-based construction. A parameter-ized pattern of TA is a reusable structure that models a repetitive behavior orproperty. Formally, we define a parameterized pattern as follows:

PP (Para) ::=(Lpp, Lpinit, Xpp, Vpp, Ipp, Actpp, Epp)

∪ Function,(5.2)

where, aligned with the definition in Equation 2.1, Lpp is a finite set oflocations, Lpinit is a finite set of initial locations, Xpp is a finite set of clockvariables, Vpp is a finite set of discrete variables, Ipp assigns invariants to loca-tions, Actpp is a finite set of actions, and Epp is a set of edges. Para is a set ofparameters (para1, para2, ...) that appears in the tuple, and Function is a setof function signatures that appear in Epp.

A parameterized connector is a set of edges that connect two parameter-ized patterns. Formally, a parameterized connector connecting parameterized

68

Page 70: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

5.5 The UPPCART Framework: UPPaal for Concurrent AtomicReal-time Transactions 47

patterns PPi and PPj is defined as follows:

PCon(PPi, PPj ,Para) ::= (Lpp_i ×B(Xpcon, Vpcon)

×Actpcon × Lpp_j) ∪ Function.(5.3)

A parameterized pattern can be constructed from sub patterns and the con-nectors connecting them, as the unions of their locations, variables, invariances,edges, actions, and parameters.

The instantiation of PP and PCon assigns actual values to the parametersin Para, and provides the functions in Function with implementations.

Given a TA A = (L, l0, X, V, I, Act, E), a set of instantiated patterns P,and a set of instantiated connectors CON, A is a pattern-based constructionfrom P and CON, iff :

• L =⋃

Pi∈P Lp_i,

•⋃

Pi∈P Linit_i = {l0},

• X =⋃

Pi∈P Xp_i⋃

Conj∈CON Xcon_j ,

• V =⋃

Pi∈P Vp_i⋃

Conj∈CON Vcon_j ,

• Act =⋃

Pi∈P Actp_i⋃

Conj∈CON Actcon_j ,

• E =⋃

Pi∈P Ep_i⋃

CON.

We denote it as A =⋃

(P,CON), in which⋃

stands for the pattern-basedconstruction operator.

For the convenience of later presentations, we call a pattern as a skeletonof TA A, if Linit 6= ∅ .

We list the proposed patterns in Table 5.1, and describe the details of themajor patterns in the following texts. For detailed descriptions of all patterns,we refer to Paper E [26].

A Work Unit Skeleton models the basic structure of a work unit of a trans-action and its interaction with the CC and atomicity managers. As shown inFigure 5.6, the automaton starts from the initial location, initializes the trans-action with the specified id ti and priority p using function initialize(ti, p), andmoves to the location ready. Upon receiving the start_trans[ti] message, itmoves to the location trans_started, which represents the begin of the transac-tion, and resets clock variable tc. The location trans_committed indicates thecommitted state of the transaction. If the value of tc is greater than the specified

5.5 The UPPCART Framework: UPPaal for Concurrent AtomicReal-time Transactions 47

patterns PPi and PPj is defined as follows:

PCon(PPi, PPj ,Para) ::= (Lpp_i ×B(Xpcon, Vpcon)

×Actpcon × Lpp_j) ∪ Function.(5.3)

A parameterized pattern can be constructed from sub patterns and the con-nectors connecting them, as the unions of their locations, variables, invariances,edges, actions, and parameters.

The instantiation of PP and PCon assigns actual values to the parametersin Para, and provides the functions in Function with implementations.

Given a TA A = (L, l0, X, V, I, Act, E), a set of instantiated patterns P,and a set of instantiated connectors CON, A is a pattern-based constructionfrom P and CON, iff :

• L =⋃

Pi∈P Lp_i,

•⋃

Pi∈P Linit_i = {l0},

• X =⋃

Pi∈P Xp_i⋃

Conj∈CON Xcon_j ,

• V =⋃

Pi∈P Vp_i⋃

Conj∈CON Vcon_j ,

• Act =⋃

Pi∈P Actp_i⋃

Conj∈CON Actcon_j ,

• E =⋃

Pi∈P Ep_i⋃

CON.

We denote it as A =⋃

(P,CON), in which⋃

stands for the pattern-basedconstruction operator.

For the convenience of later presentations, we call a pattern as a skeletonof TA A, if Linit 6= ∅ .

We list the proposed patterns in Table 5.1, and describe the details of themajor patterns in the following texts. For detailed descriptions of all patterns,we refer to Paper E [26].

A Work Unit Skeleton models the basic structure of a work unit of a trans-action and its interaction with the CC and atomicity managers. As shown inFigure 5.6, the automaton starts from the initial location, initializes the trans-action with the specified id ti and priority p using function initialize(ti, p), andmoves to the location ready. Upon receiving the start_trans[ti] message, itmoves to the location trans_started, which represents the begin of the transac-tion, and resets clock variable tc. The location trans_committed indicates thecommitted state of the transaction. If the value of tc is greater than the specified

69

Page 71: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

48 Chapter 5. Thesis Contributions

Table 5.1: Patterns in UPPCART

Pattern DescriptionWork Unit Skeleton Basic structure of a work unit automatonOperation Pattern Basic structure of a begin, commit, read, or

write operation within a work unitUserAbort Pattern Basic structure of a user-abort operation within

a work unitDelay Pattern Basic structure of a delay between operations

or transactionsLocking Pattern Basic structure of a locking activityUnlocking Pattern Basic structure of an unlocking activityRollbackImComp Pattern Basic structure of a rollback or immediate com-

pensation mechanismDeferredComp Pattern Basic structure of a deferred compensation

mechanismTransactionSequence Skeleton

Basic structure of a transaction sequence

Sequence Sub-transactionSkeleton

Basic structure of a sub-transaction within atransaction sequence

CCManager Skeleton Basic structure of a CCManager automatonATManager Skeleton Basic structure of an ATManager automatonIsolationObserver Skeleton Basic structure of an IsolationObserver au-

tomatonData Skeleton Basic structure of a data automaton

48 Chapter 5. Thesis Contributions

Table 5.1: Patterns in UPPCART

Pattern DescriptionWork Unit Skeleton Basic structure of a work unit automatonOperation Pattern Basic structure of a begin, commit, read, or

write operation within a work unitUserAbort Pattern Basic structure of a user-abort operation within

a work unitDelay Pattern Basic structure of a delay between operations

or transactionsLocking Pattern Basic structure of a locking activityUnlocking Pattern Basic structure of an unlocking activityRollbackImComp Pattern Basic structure of a rollback or immediate com-

pensation mechanismDeferredComp Pattern Basic structure of a deferred compensation

mechanismTransactionSequence Skeleton

Basic structure of a transaction sequence

Sequence Sub-transactionSkeleton

Basic structure of a sub-transaction within atransaction sequence

CCManager Skeleton Basic structure of a CCManager automatonATManager Skeleton Basic structure of an ATManager automatonIsolationObserver Skeleton Basic structure of an IsolationObserver au-

tomatonData Skeleton Basic structure of a data automaton

70

Page 72: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

5.5 The UPPCART Framework: UPPaal for Concurrent AtomicReal-time Transactions 49

trans_started

U trans_committed

Operations with CC and abort recovery

C

tc:=0

ready

U

miss_deadline

trans_aborted

tc>DEADLINE tr>RECOVERY_DEADLINE

C

initialize(ti, p)

…tc<=DEADLINE

tc<=PERIODtc>=PERIODtc:=0

tr<=RECOVERY_DEADLINE

wait

initial

start_trans[ti]?

Delays

Figure 5.6: The Work Unit Skeleton [26]

DEADLINE, the automaton moves to the location miss_deadline, indicating adeadline miss. Otherwise, it waits until the specified PERIOD has reached, andmoves to begin for the next activation. The location trans_aborted representsthe aborted state of the transaction. Similarly, if the value of tr is greater thanthe specified RECOVERY_DEADLINE, timeliness is breached, and the workunit automaton moves to miss_deadline.

Between trans_started and trans_committed are a set of connected instan-tiated patterns that model the database and transaction management operations,as well as the delays between the operations. As an example, Figure 5.7presents the Operation Pattern for modeling database read and write oper-ations, integrated with Locking Pattern and Unlocking Pattern. In this com-pound pattern, we model the scheduling policy using three functions, namely,enq_sch(ti), deq_sch(ti) and sch(). After the start_operation location, the func-tion enq_sch(ti) is called, which pushes the transaction into the schedulingqueue. On the edges from the location check_sched, the function sch() checkswhether the transaction is the next one to be executed. If yes, the automatonmoves to do_operation, representing the execution of the operation; otherwise,the automaton waits at location wait, until the CPU is released by the occupyingtransaction or the RTDBMS, indicated via the signal in the cpu_free channel.

5.5 The UPPCART Framework: UPPaal for Concurrent AtomicReal-time Transactions 49

trans_started

U trans_committed

Operations with CC and abort recovery

C

tc:=0

ready

U

miss_deadline

trans_aborted

tc>DEADLINE tr>RECOVERY_DEADLINE

C

initialize(ti, p)

…tc<=DEADLINE

tc<=PERIODtc>=PERIODtc:=0

tr<=RECOVERY_DEADLINE

wait

initial

start_trans[ti]?

Delays

Figure 5.6: The Work Unit Skeleton [26]

DEADLINE, the automaton moves to the location miss_deadline, indicating adeadline miss. Otherwise, it waits until the specified PERIOD has reached, andmoves to begin for the next activation. The location trans_aborted representsthe aborted state of the transaction. Similarly, if the value of tr is greater thanthe specified RECOVERY_DEADLINE, timeliness is breached, and the workunit automaton moves to miss_deadline.

Between trans_started and trans_committed are a set of connected instan-tiated patterns that model the database and transaction management operations,as well as the delays between the operations. As an example, Figure 5.7presents the Operation Pattern for modeling database read and write oper-ations, integrated with Locking Pattern and Unlocking Pattern. In this com-pound pattern, we model the scheduling policy using three functions, namely,enq_sch(ti), deq_sch(ti) and sch(). After the start_operation location, the func-tion enq_sch(ti) is called, which pushes the transaction into the schedulingqueue. On the edges from the location check_sched, the function sch() checkswhether the transaction is the next one to be executed. If yes, the automatonmoves to do_operation, representing the execution of the operation; otherwise,the automaton waits at location wait, until the CPU is released by the occupyingtransaction or the RTDBMS, indicated via the signal in the cpu_free channel.

71

Page 73: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

50 Chapter 5. Thesis Contributions

sch()==tics:=ti

check_sched

C

C

enq_sch(ti)

sch()!=ti

cpu_free?

do_operationtp<=WCRT_op

C

C

tp>=BCRT_opnotify_op[ti]!

cpu_free!cs:=FREE, deq_sch(ti)

finish_operation

start_operation

Instantiated Locking/Unlocking Patterns

Instantiated Locking/Unlocking Patterns

tp:=0

wait

notified_observer

Figure 5.7: Operation Pattern with Locking and Unlocking Patterns[26]

The automaton may stay at do_operation for at most WCRT_op time units,and at least BCRT_op time units, which represent the longest and shortest timeto complete the operation. Upon the completion of the operation, a signal issent to the IsolationObservers via channel notify_op[ti]. Before reaching fin-ish_operation, the CPU is set to be free, and the transaction is removed fromthe scheduling queue by the function deq_sch(ti). The interactions with theCC manager are modeled by the Locking Pattern that models the behavior ofacquiring a lock, and the Unlocking Pattern that models the release of the lock.

The IsolationObserver Skeleton is shown in Figure 5.8. Each IsolationOb-server observes a specified sequence of operations, by accepting the corre-sponding notification messages from the work unit automata via channel no-tify_op[ti][di] when an operation is completed. If the monitored sequence oc-curs, the automaton moves to the isolation_phenomenon location, indicatingthat the phenomeon has taken place.

Figure 5.9 presents the Data Skeleton. The clock variable age is resetevery time a write operation is performed on the data. The value of age hencerepresents how old the data is since the last update.

We also propose patterns for modeling common abort recovery and con-

50 Chapter 5. Thesis Contributions

sch()==tics:=ti

check_sched

C

C

enq_sch(ti)

sch()!=ti

cpu_free?

do_operationtp<=WCRT_op

C

C

tp>=BCRT_opnotify_op[ti]!

cpu_free!cs:=FREE, deq_sch(ti)

finish_operation

start_operation

Instantiated Locking/Unlocking Patterns

Instantiated Locking/Unlocking Patterns

tp:=0

wait

notified_observer

Figure 5.7: Operation Pattern with Locking and Unlocking Patterns[26]

The automaton may stay at do_operation for at most WCRT_op time units,and at least BCRT_op time units, which represent the longest and shortest timeto complete the operation. Upon the completion of the operation, a signal issent to the IsolationObservers via channel notify_op[ti]. Before reaching fin-ish_operation, the CPU is set to be free, and the transaction is removed fromthe scheduling queue by the function deq_sch(ti). The interactions with theCC manager are modeled by the Locking Pattern that models the behavior ofacquiring a lock, and the Unlocking Pattern that models the release of the lock.

The IsolationObserver Skeleton is shown in Figure 5.8. Each IsolationOb-server observes a specified sequence of operations, by accepting the corre-sponding notification messages from the work unit automata via channel no-tify_op[ti][di] when an operation is completed. If the monitored sequence oc-curs, the automaton moves to the isolation_phenomenon location, indicatingthat the phenomeon has taken place.

Figure 5.9 presents the Data Skeleton. The clock variable age is resetevery time a write operation is performed on the data. The value of age hencerepresents how old the data is since the last update.

We also propose patterns for modeling common abort recovery and con-

72

Page 74: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

5.5 The UPPCART Framework: UPPaal for Concurrent AtomicReal-time Transactions 51

isolation_phenomenon

notify_read [ti][tj]?

notify_write[tm][dn]?

r_i_j

r_i_j_w_m_n

idle

C

notify_commit[ti]?/notify_abort[ti]?

notify_commit[ti]?/notify_abort[ti]?

ti_committed/ti_aborted

Figure 5.8: TA skeleton for the IsolationObserver[26]

notify_write[di]?age:=0

C updated

Figure 5.9: TA skeleton for Data[26]

currency control algorithms. The ATManager Skeleton models the commonbehavior of the atomicity manager that performs various recovery activities.The CCManager Skeleton models the common structure for various CC al-gorithms, as well as the interaction with the transactions and the atomicitymanager. The details of these skeletons are presented in the paper [33, 26].

Automated Model Construction. To enable easier construction of UPP-CART models, we have developed a tool, called U2Transformer, which im-plements a translational semantics from UTRAN specifications to UPPCARTmodels. We define the translational semantics of UTRAN by mapping theUTRAN concepts with the UPPCART patterns and connectors. These mappedconcepts include «RTDBMSScope», «Transaction», «TransactionSequence»,«Operation», «IsolationPhenomenon», «DelayedNext», and their descendants.The specifications «TemporalCorrectnessSpecification», «AtomicitySpecifica-tion» and «IsolationSpecification» are annotations that contain information forthe selection and instantiation of variant patterns.

As shown in Figure 5.10, U2Transformer accepts a system model definedin UML with the UTRAN profile, created in common UML editors including

5.5 The UPPCART Framework: UPPaal for Concurrent AtomicReal-time Transactions 51

isolation_phenomenon

notify_read [ti][tj]?

notify_write[tm][dn]?…

r_i_j

r_i_j_w_m_n

idle

C

notify_commit[ti]?/notify_abort[ti]?

notify_commit[ti]?/notify_abort[ti]?

ti_committed/ti_aborted

Figure 5.8: TA skeleton for the IsolationObserver[26]

notify_write[di]?age:=0

C updated

Figure 5.9: TA skeleton for Data[26]

currency control algorithms. The ATManager Skeleton models the commonbehavior of the atomicity manager that performs various recovery activities.The CCManager Skeleton models the common structure for various CC al-gorithms, as well as the interaction with the transactions and the atomicitymanager. The details of these skeletons are presented in the paper [33, 26].

Automated Model Construction. To enable easier construction of UPP-CART models, we have developed a tool, called U2Transformer, which im-plements a translational semantics from UTRAN specifications to UPPCARTmodels. We define the translational semantics of UTRAN by mapping theUTRAN concepts with the UPPCART patterns and connectors. These mappedconcepts include «RTDBMSScope», «Transaction», «TransactionSequence»,«Operation», «IsolationPhenomenon», «DelayedNext», and their descendants.The specifications «TemporalCorrectnessSpecification», «AtomicitySpecifica-tion» and «IsolationSpecification» are annotations that contain information forthe selection and instantiation of variant patterns.

As shown in Figure 5.10, U2Transformer accepts a system model definedin UML with the UTRAN profile, created in common UML editors including

73

Page 75: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

52 Chapter 5. Thesis Contributions

U2

UTRAN specification

UPPCART models

(XML for UPPAAL)

(XML in Eclipse Papyrus or IBM RSA)

UTRAN profile

JAVA internal

for UTRAN

JAVA internal

for UPPCART

Figure 5.10: Transformation process by U2Transformer [26]

Eclipse Papyrus modeling environment 1 and IBM Rational Software Archi-tect (RSA) environment 2, in their respective XML format. A command-lineinterface is provided by the tool for the user to specify the editor in use. Thena three-step process is performed by U2Transformer. In the first step, the toolconverts the UTRAN specification in XML into intermediate data structures inJAVA. This step is performed by the UTRANParser module. The second stepis performed by the UPPCARTGenerator module, which implements the con-version between the internal UTRAN and UPPCART structures, and returnsthe XML-format UPPCART models for the UPPAAL tool.

5.5.3 Verification

With the transactions as well as the mechanisms modeled as UPPAAL TA,we are able to formally verify atomicity, isolation and temporal correctnessusing UPPAAL Model Checker. Table 5.2 lists the patterns to formalize theproperties in UPPAAL queries. Among them, atomicity is formalized as aliveness property, that is, Ai will eventually reach locations trans_rollback ortrans_compensated if the variable abort_id equals i. solation and temporalcorrectness are formalized as invariance properties. Respectively, the isolationproperty specifies that the isolation_phenomenon locations are not reachable,the timeliness property specifies that the miss_deadline location of the analyzedTi is not reachable, while temporal validity properties specify that the stateswhere the ages of data exceed their thresholds are never reachable.

To ensure full correctness, we also check the reachability of the antecedentsof the properties that contain operators “lead-to” or “imply” in Table 5.2, re-spectively. If we denote the antecedent as P , its reachability is encoded as

1https://www.eclipse.org/papyrus/2https://www.ibm.com/developerworks/downloads/r/architect

52 Chapter 5. Thesis Contributions

U2

UTRAN specification

UPPCART models

(XML for UPPAAL)

(XML in Eclipse Papyrus or IBM RSA)

UTRAN profile

JAVA internal

for UTRAN

JAVA internal

for UPPCART

Figure 5.10: Transformation process by U2Transformer [26]

Eclipse Papyrus modeling environment 1 and IBM Rational Software Archi-tect (RSA) environment 2, in their respective XML format. A command-lineinterface is provided by the tool for the user to specify the editor in use. Thena three-step process is performed by U2Transformer. In the first step, the toolconverts the UTRAN specification in XML into intermediate data structures inJAVA. This step is performed by the UTRANParser module. The second stepis performed by the UPPCARTGenerator module, which implements the con-version between the internal UTRAN and UPPCART structures, and returnsthe XML-format UPPCART models for the UPPAAL tool.

5.5.3 Verification

With the transactions as well as the mechanisms modeled as UPPAAL TA,we are able to formally verify atomicity, isolation and temporal correctnessusing UPPAAL Model Checker. Table 5.2 lists the patterns to formalize theproperties in UPPAAL queries. Among them, atomicity is formalized as aliveness property, that is, Ai will eventually reach locations trans_rollback ortrans_compensated if the variable abort_id equals i. solation and temporalcorrectness are formalized as invariance properties. Respectively, the isolationproperty specifies that the isolation_phenomenon locations are not reachable,the timeliness property specifies that the miss_deadline location of the analyzedTi is not reachable, while temporal validity properties specify that the stateswhere the ages of data exceed their thresholds are never reachable.

To ensure full correctness, we also check the reachability of the antecedentsof the properties that contain operators “lead-to” or “imply” in Table 5.2, re-spectively. If we denote the antecedent as P , its reachability is encoded as

1https://www.eclipse.org/papyrus/2https://www.ibm.com/developerworks/downloads/r/architect

74

Page 76: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

5.6 The UPPCART-SMC Framework 53

Table 5.2: UPPAAL query patterns for verifying transactional properties[26]

PropertyType

Property Description UPPAAL Query Pattern

Atomicity Ti aborted due to ER-RORTYPE is eventuallyrolled back

(ATManager.abort_id == i &&ATManager.error_type ==ERRORTYPE)→ Ai.trans_rolledback

Isolation The specified isolationphenomena never occur

A [ ] not (O1.isolation_phenomenon || ... ||On.isolation_phenomenon)

Timeliness Ti never misses itsdeadline

A [ ] notAi.miss_deadline

AbsoluteValidity

When read by Ti, Dj

is never older than theabsolute validity intervalAVI(j)

A [ ] (Ai.read_di_done implyDj.age <= AV I(j))

RelativeValidity

Whenever Ti reads Dj

or Dl, the age differ-ences of Dj and Dl issmaller than or equal tothe relative validity in-terval RVI(j,l)

A[ ] ((Ai.read_dj_done ||Ai.read_dl_done)imply ((Dj.age−Dl.age <= RV I(j, l))&& (Dl.age−Dj.age <= RV I(j, l))))

“E <> P ”, and verified in UPPAAL. However, we have omitted these fromTable 5.2.

The basic idea of UPPCART that models the RTDBMS as an NTA is firstproposed as a general approach to verify temporal correctness for concurrenttransactions in Paper C [32], and is extended as a pattern-based framework forboth temporal correctness and isolation in Paper D [33]. In Paper E [26], weextend the framework for the atomicity of transactions, and develop the trans-lation and automated construction of TA models from UTRAN specification.

5.6 The UPPCART-SMC FrameworkFor the purpose of analyzing large scale RTDBMS with complex mechanisms,we propose a framework called UPPCART-SMC in Paper F [34], to modelthe transactions and the mechanisms as a network of stochastic timed au-tomata, and analyze atomicity, isolation and temporal correctness using sta-tistical model checking. Similar to UPPCART, in UPPCART-SMC, we modelthe RTDBMS as a parallel composition of STA that represents the transactionwork units and the mechanisms, as well as observers to monitor the properties.

5.6 The UPPCART-SMC Framework 53

Table 5.2: UPPAAL query patterns for verifying transactional properties[26]

PropertyType

Property Description UPPAAL Query Pattern

Atomicity Ti aborted due to ER-RORTYPE is eventuallyrolled back

(ATManager.abort_id == i &&ATManager.error_type ==ERRORTYPE)→ Ai.trans_rolledback

Isolation The specified isolationphenomena never occur

A [ ] not (O1.isolation_phenomenon || ... ||On.isolation_phenomenon)

Timeliness Ti never misses itsdeadline

A [ ] notAi.miss_deadline

AbsoluteValidity

When read by Ti, Dj

is never older than theabsolute validity intervalAVI(j)

A [ ] (Ai.read_di_done implyDj.age <= AV I(j))

RelativeValidity

Whenever Ti reads Dj

or Dl, the age differ-ences of Dj and Dl issmaller than or equal tothe relative validity in-terval RVI(j,l)

A[ ] ((Ai.read_dj_done ||Ai.read_dl_done)imply ((Dj.age−Dl.age <= RV I(j, l))&& (Dl.age−Dj.age <= RV I(j, l))))

“E <> P ”, and verified in UPPAAL. However, we have omitted these fromTable 5.2.

The basic idea of UPPCART that models the RTDBMS as an NTA is firstproposed as a general approach to verify temporal correctness for concurrenttransactions in Paper C [32], and is extended as a pattern-based framework forboth temporal correctness and isolation in Paper D [33]. In Paper E [26], weextend the framework for the atomicity of transactions, and develop the trans-lation and automated construction of TA models from UTRAN specification.

5.6 The UPPCART-SMC FrameworkFor the purpose of analyzing large scale RTDBMS with complex mechanisms,we propose a framework called UPPCART-SMC in Paper F [34], to modelthe transactions and the mechanisms as a network of stochastic timed au-tomata, and analyze atomicity, isolation and temporal correctness using sta-tistical model checking. Similar to UPPCART, in UPPCART-SMC, we modelthe RTDBMS as a parallel composition of STA that represents the transactionwork units and the mechanisms, as well as observers to monitor the properties.

75

Page 77: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

54 Chapter 5. Thesis Contributions

Denoted by N ′, the NSTA of the modeled RTDBMS is defined as follows:

N ′ ::= W ′1 || ... ||W ′n ||A′CCManager ||A′ATManager

||O′1 || ... ||O′k ||D′1 || ... ||D′m ||S′1 || ... ||S′l(5.4)

Since we are modeling the exact same RTDBMS as in Section 5.5, eachSTA in Equation 5.4 corresponds to a TA in Equation 5.1. That is to say,W ′1, ..., W ′n are the STA of work units of transactions T1, ..., Tn, respectively.A′CCManager is the CCManager STA. A′ATManager is the ATManager STA.O′1, ..., O′k are the STA of IsolationObservers. D1, ..., Dm are the STA thatmonitor the age of data. S1, ..., Sl are automata for transaction sequences,respectively.

We also propose patterns to construct the STA in UPPCART-SMC. Thesepatterns are similar to and based on the ones proposed for UPPCART, but withmodifications to incorporate the syntax and semantics of STA. A significantchange is to achieve handshake synchronization in UPPCART-SMC via broad-cast channels and shared variables, since the paired synchronization channelsused in UPPCART are not supported by the tool UPPAAL SMC.

We use UPPAAL SMC to analyze the STA models, and check the trans-actional properties. The queries for checking isolation, timeliness, absolutevalidity and relative validity are listed as SQ2-SQ4 in Table 5.3, respectively.They encode the probability of property satisfaction, over a chosen simulationtime, and over a number of runs computed by the tool. For hypothesis testing,these queries can be extended with a comparison to a predefined probabilityvalue.

As the atomicity property specified with “leads-to” in Table 5.2 cannot bechecked statistically using UPPAAL SMC, we choose to analyze time-boundedatomicity, a stricter version of atomicity, which can be specified as a check-able query. We analyze the probability that Ti is rolled back (or compensated)within a time bound (e.g., Ti’s RECOVERY_DEADLINE) after its abortion,specified as the following time-bounded property:

(ATManager.abort_id == i &&

ATManager.error_type == ERRORTYPE)

⇒≤RECOV ERY _DEADLINE Wi.trans_rolledback.

This property can be checked by UPPAAL SMC with some modificationsin the models, as suggested by literature [66]. We first introduce a clockvariable ta in Wi, whose value is reset when ATManager.abort_id == i

54 Chapter 5. Thesis Contributions

Denoted by N ′, the NSTA of the modeled RTDBMS is defined as follows:

N ′ ::= W ′1 || ... ||W ′n ||A′CCManager ||A′ATManager

||O′1 || ... ||O′k ||D′1 || ... ||D′m ||S′1 || ... ||S′l(5.4)

Since we are modeling the exact same RTDBMS as in Section 5.5, eachSTA in Equation 5.4 corresponds to a TA in Equation 5.1. That is to say,W ′1, ..., W ′n are the STA of work units of transactions T1, ..., Tn, respectively.A′CCManager is the CCManager STA. A′ATManager is the ATManager STA.O′1, ..., O′k are the STA of IsolationObservers. D1, ..., Dm are the STA thatmonitor the age of data. S1, ..., Sl are automata for transaction sequences,respectively.

We also propose patterns to construct the STA in UPPCART-SMC. Thesepatterns are similar to and based on the ones proposed for UPPCART, but withmodifications to incorporate the syntax and semantics of STA. A significantchange is to achieve handshake synchronization in UPPCART-SMC via broad-cast channels and shared variables, since the paired synchronization channelsused in UPPCART are not supported by the tool UPPAAL SMC.

We use UPPAAL SMC to analyze the STA models, and check the trans-actional properties. The queries for checking isolation, timeliness, absolutevalidity and relative validity are listed as SQ2-SQ4 in Table 5.3, respectively.They encode the probability of property satisfaction, over a chosen simulationtime, and over a number of runs computed by the tool. For hypothesis testing,these queries can be extended with a comparison to a predefined probabilityvalue.

As the atomicity property specified with “leads-to” in Table 5.2 cannot bechecked statistically using UPPAAL SMC, we choose to analyze time-boundedatomicity, a stricter version of atomicity, which can be specified as a check-able query. We analyze the probability that Ti is rolled back (or compensated)within a time bound (e.g., Ti’s RECOVERY_DEADLINE) after its abortion,specified as the following time-bounded property:

(ATManager.abort_id == i &&

ATManager.error_type == ERRORTYPE)

⇒≤RECOV ERY _DEADLINE Wi.trans_rolledback.

This property can be checked by UPPAAL SMC with some modificationsin the models, as suggested by literature [66]. We first introduce a clockvariable ta in Wi, whose value is reset when ATManager.abort_id == i

76

Page 78: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

5.6 The UPPCART-SMC Framework 55

Table 5.3: UPPAAL SMC queries for analyzing transactional properties [34]

PropertyType

Property Description UPPAAL Query Pattern ID

Time-boundedAtomicity

Ti is rolled back orcompensated withinRECOVERY_DEADLINE

Pr [<= n] (<> Wi.b) SQ1.1Pr [<= n] ([ ]

(Wi.b imply Wi.ta <=

RECOV ERY _DEADLINE))SQ1.2

Isolation The probability of that thespecified isolation phenom-ena never occur

Pr [<= n] ([ ] not (O1.isolation_phenomenon|| ...||On.isolation_phenomenon))

SQ2

Timeliness The probability of Ti nevermissing its deadline

Pr[<= n]([ ] not Wi.miss_deadline)

SQ3

AbsoluteValidity

The probability of that,when read by Ti, Dj

is never older than theabsolute validity intervalAVI(j)

Pr[<= n]([ ] (Wi.read_di_done implyDj.age <= AV I(j)))

SQ4

RelativeValidity

The probability of that,whenever Ti reads Dj orDl, the age differencesof Dj and Dl is smallerthan or equal to the relativevalidity interval RVI(j,l)

Pr[<= n]([ ]((Wi.read_dj_done ||Wi.read_dl_done) imply((Dj.age − Dl.age <=RV I(j, l)) &&(Dl.age − Dj.age <=RV I(j, l)))))

SQ5

5.6 The UPPCART-SMC Framework 55

Table 5.3: UPPAAL SMC queries for analyzing transactional properties [34]

PropertyType

Property Description UPPAAL Query Pattern ID

Time-boundedAtomicity

Ti is rolled back orcompensated withinRECOVERY_DEADLINE

Pr [<= n] (<> Wi.b) SQ1.1Pr [<= n] ([ ]

(Wi.b imply Wi.ta <=

RECOV ERY _DEADLINE))SQ1.2

Isolation The probability of that thespecified isolation phenom-ena never occur

Pr [<= n] ([ ] not (O1.isolation_phenomenon|| ...||On.isolation_phenomenon))

SQ2

Timeliness The probability of Ti nevermissing its deadline

Pr[<= n]([ ] not Wi.miss_deadline)

SQ3

AbsoluteValidity

The probability of that,when read by Ti, Dj

is never older than theabsolute validity intervalAVI(j)

Pr[<= n]([ ] (Wi.read_di_done implyDj.age <= AV I(j)))

SQ4

RelativeValidity

The probability of that,whenever Ti reads Dj orDl, the age differencesof Dj and Dl is smallerthan or equal to the relativevalidity interval RVI(j,l)

Pr[<= n]([ ]((Wi.read_dj_done ||Wi.read_dl_done) imply((Dj.age − Dl.age <=RV I(j, l)) &&(Dl.age − Dj.age <=RV I(j, l)))))

SQ5

77

Page 79: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

56 Chapter 5. Thesis Contributions

&& ATManager.error_type == ERRORTYPE holds. We also introduce aboolean variable b inWi, whose value is set to true whenATManager.abort_id== i&&ATManager.error_type == ERRORTYPE holds, and to falseas soon as Wi.trans_rolledback holds. The probability of the time-boundedleads-to property is then reduced to checking the probability of: [] (Wi.b implyWi.ta <= RECOV ERY _DEADLINE), which holds over the number ofruns checked during analysis, and is specified as the UPPAAL SMC querySQ1.2 in Table 5.3. To ensure that this query is not trivially satisfied, we alsocheck that Wi.b is reachable, via the query SQ1.1.

5.7 Validation on Industrial Use CasesTo validate our proposed techniques, we apply them on a set of industrial usecases, and evaluate their applicability and usefulness. These use cases are pre-sented in Paper A [29], Paper B [30] and Paper F [34], respectively.

Analysis of the Hardware Assisted Trace (HAT) System

In Paper A [29], we apply the proposed taxonomy to the analysis of an indus-trial project, the Hardware Assisted Trace (HAT) framework [67], together withits proposers from Ericsson. HAT, as shown in Figure 5.11, is a framework fordebugging functional errors in an embedded system. In this framework, a de-bugger function runs in the same system as the debugged program, and collectsboth hardware and software run-time traces continuously. Two data aggrega-tion processes are identified in the current design. At a lower level, a ProgramTrace Macrocell (PTM) aggregation process aggregates traces from hardware.These aggregated PTM traces, together with software instrumentation tracesfrom the System Trace Macrocell (STM), are then aggregated by a higher levelApplicationTrace aggregation process, to create an informative trace for thedebugged application.

With the DAGGTAX diagrams showing the features of the aggregation pro-cesses, the engineers could immediately identify a problem in the PTM buffermanagement. The problem is that the data in the buffer may be overwrittenbefore they are aggregated. It arises due to the lack of a holistic considerationon the PTM aggregation process and the ApplicationTrace aggregation processat design time. Triggered by aperiodic external events, the PTM process couldproduce a large number of traces within a short period and fill up the PTMbuffer. The ApplicationTrace process, on the other hand, is triggered with a

56 Chapter 5. Thesis Contributions

&& ATManager.error_type == ERRORTYPE holds. We also introduce aboolean variable b inWi, whose value is set to true whenATManager.abort_id== i&&ATManager.error_type == ERRORTYPE holds, and to falseas soon as Wi.trans_rolledback holds. The probability of the time-boundedleads-to property is then reduced to checking the probability of: [] (Wi.b implyWi.ta <= RECOV ERY _DEADLINE), which holds over the number ofruns checked during analysis, and is specified as the UPPAAL SMC querySQ1.2 in Table 5.3. To ensure that this query is not trivially satisfied, we alsocheck that Wi.b is reachable, via the query SQ1.1.

5.7 Validation on Industrial Use CasesTo validate our proposed techniques, we apply them on a set of industrial usecases, and evaluate their applicability and usefulness. These use cases are pre-sented in Paper A [29], Paper B [30] and Paper F [34], respectively.

Analysis of the Hardware Assisted Trace (HAT) System

In Paper A [29], we apply the proposed taxonomy to the analysis of an indus-trial project, the Hardware Assisted Trace (HAT) framework [67], together withits proposers from Ericsson. HAT, as shown in Figure 5.11, is a framework fordebugging functional errors in an embedded system. In this framework, a de-bugger function runs in the same system as the debugged program, and collectsboth hardware and software run-time traces continuously. Two data aggrega-tion processes are identified in the current design. At a lower level, a ProgramTrace Macrocell (PTM) aggregation process aggregates traces from hardware.These aggregated PTM traces, together with software instrumentation tracesfrom the System Trace Macrocell (STM), are then aggregated by a higher levelApplicationTrace aggregation process, to create an informative trace for thedebugged application.

With the DAGGTAX diagrams showing the features of the aggregation pro-cesses, the engineers could immediately identify a problem in the PTM buffermanagement. The problem is that the data in the buffer may be overwrittenbefore they are aggregated. It arises due to the lack of a holistic considerationon the PTM aggregation process and the ApplicationTrace aggregation processat design time. Triggered by aperiodic external events, the PTM process couldproduce a large number of traces within a short period and fill up the PTMbuffer. The ApplicationTrace process, on the other hand, is triggered with a

78

Page 80: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

5.7 Validation on Industrial Use Cases 57

Program Trace Macrocell (PTM)

PTM Cluster Buffer

System Trace Macrocell (STM)

STM Cluster Buffer

Software Instrumentation

Dedicated System Memory

Hardware 1 Hardware n

Debugger Function

Figure 5.11: General architecture of the Hardware Assisted Trace system[29]

minimum inter-arrival time, and consumes the PTM traces as unsheddable rawdata, meaning that each PTM trace should be aggregated by the former. Whenthe inter-arrival time of the PTM triggering events is shorter than the minimuminter-arrival time of the ApplicationTrace process, the PTM traces in the buffermay be overwritten before they could be aggregated by the ApplicationTraceprocess. This problem has been observed on Ericsson’s implemented system,and awaits a solution. However, if the taxonomy was applied on the systemdesign, this problem could have been identified before it was propagated toimplementation. We have provided two solutions at design level to solve theidentified problem.

This evaluation shows that the taxonomy enhances the understanding of thesystem by the designers. By applying analysis based on our taxonomy, designflaws can be identified and fixed prior to implementation. Design solutions canbe constructed by composing reusable features, and reasoned about based onthe taxonomy. As a result, the design space of the solutions could be reduced.

Design a Cloud Monitoring System

In Paper B [30], we evaluate DAGGTAX and SAFARE using an industrialcase study provided by Ericsson that aims to design a cloud monitoring systemfor an enhanced auto-scaling functionality in a video streaming system, byextending the existing open-source OpenStack framework 3. OpenStack is acloud operating system that supports auto-scaling of computation and memoryresources based on aggregation of resource usages in the virtual machine level.For more accurate and efficient auto-scaling, application-level resource usages

3https://www.openstack.org/software/

5.7 Validation on Industrial Use Cases 57

Program Trace Macrocell (PTM)

PTM Cluster Buffer

System Trace Macrocell (STM)

STM Cluster Buffer

Software Instrumentation

Dedicated System Memory

Hardware 1 Hardware n

Debugger Function

Figure 5.11: General architecture of the Hardware Assisted Trace system[29]

minimum inter-arrival time, and consumes the PTM traces as unsheddable rawdata, meaning that each PTM trace should be aggregated by the former. Whenthe inter-arrival time of the PTM triggering events is shorter than the minimuminter-arrival time of the ApplicationTrace process, the PTM traces in the buffermay be overwritten before they could be aggregated by the ApplicationTraceprocess. This problem has been observed on Ericsson’s implemented system,and awaits a solution. However, if the taxonomy was applied on the systemdesign, this problem could have been identified before it was propagated toimplementation. We have provided two solutions at design level to solve theidentified problem.

This evaluation shows that the taxonomy enhances the understanding of thesystem by the designers. By applying analysis based on our taxonomy, designflaws can be identified and fixed prior to implementation. Design solutions canbe constructed by composing reusable features, and reasoned about based onthe taxonomy. As a result, the design space of the solutions could be reduced.

Design a Cloud Monitoring System

In Paper B [30], we evaluate DAGGTAX and SAFARE using an industrialcase study provided by Ericsson that aims to design a cloud monitoring systemfor an enhanced auto-scaling functionality in a video streaming system, byextending the existing open-source OpenStack framework 3. OpenStack is acloud operating system that supports auto-scaling of computation and memoryresources based on aggregation of resource usages in the virtual machine level.For more accurate and efficient auto-scaling, application-level resource usages

3https://www.openstack.org/software/

79

Page 81: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

58 Chapter 5. Thesis Contributions

ScalingDecisionMaking

CPUAlarmStatusEvaluation

AlarmStatus

VNFCPU [1…n]

AlarmType

CPUAlarm

DecisionVNFProfileType

VNFProfile [1…n]

VNFProfileGeneration

VNFProfile

VNFCProfile

AppProfileGeneration

Throughput DroppedPacket

AppProfile

MongoDB

[1…n]

Controller

VNFVNFCProfileGeneration

Composition VNFCProfile

Push

Triggering Pattern

Periodic

Period

VNFCCPUType

VNFCCPU

MinT

MaxT

AppProfileType

AppProfile [1…n]

MinTMaxT

Pull

Real-time (P)

Deadline

SoftPull

Composition

Composition

Periodic

ScalingPolicyEvaluation

Aperiodic

EvaluationPolicy

Periodic

MimerRTDB

Pull

Persistent

Period

MinT

MaxTPull

Push

Push

Triggering Pattern

MinT

MaxT

Push MinT

MaxT

PushPush Periodic

Period

Triggering Pattern

Real-time (P)

Deadline

Soft

RESTful API

1

123

3

4

4

5

56

7

Data flow. The same i indicates the same data entity

featureExisting features in OpenStack feature

New features to be added

i

Durable

Figure 5.12: Applying DAGGTAX to the design of a cloud monitoringsystem[30]

need to be taken into account.

We apply DAGGTAX to the current features provided by the existing Open-Stack framework for auto-scaling, based on which we design the new featuresof the extended system (Figure 5.12). We implement the designed layers of ag-gregation, propagated from raw resource measurements such as CPU consump-tion of individual applications, to the final . We also use SAFARE to formallyanalyze the consistency of the specification. For instance, when an aggrega-tion process was specified to generate hard real-time data from a soft real-timeprocess during the design, the consistency check of SAFARE detected and pin-pointed the violation so that we could fix it prior to implementation.

Our experience shows that our taxonomy promotes a deeper understandingof the systems behavior, and raises awareness about characteristics that needto be considered as well as issues that need to be solved during the design. Ithelps designers to perform better analysis than otherwise, such as to identifyreusable design solutions, make data management decisions, eliminate infea-sible feature combinations, and calculate time-related parameters. Throughformal verification, SAFARE helps to detect and eliminate contradictions atthe early design stage of data aggregation processes.

58 Chapter 5. Thesis Contributions

ScalingDecisionMaking

CPUAlarmStatusEvaluation

AlarmStatus

VNFCPU [1…n]

AlarmType

CPUAlarm

DecisionVNFProfileType

VNFProfile [1…n]

VNFProfileGeneration

VNFProfile

VNFCProfile

AppProfileGeneration

Throughput DroppedPacket

AppProfile

MongoDB

[1…n]

Controller

VNFVNFCProfileGeneration

Composition VNFCProfile

Push

Triggering Pattern

Periodic

Period

VNFCCPUType

VNFCCPU

MinT

MaxT

AppProfileType

AppProfile [1…n]

MinTMaxT

Pull

Real-time (P)

Deadline

SoftPull

Composition

Composition

Periodic

ScalingPolicyEvaluation

Aperiodic

EvaluationPolicy

Periodic

MimerRTDB

Pull

Persistent

Period

MinT

MaxTPull

Push

Push

Triggering Pattern

MinT

MaxT

Push MinT

MaxT

PushPush Periodic

Period

Triggering Pattern

Real-time (P)

Deadline

Soft

RESTful API

1

123

3

4

4

5

56

7

Data flow. The same i indicates the same data entity

featureExisting features in OpenStack feature

New features to be added

i

Durable

Figure 5.12: Applying DAGGTAX to the design of a cloud monitoringsystem[30]

need to be taken into account.

We apply DAGGTAX to the current features provided by the existing Open-Stack framework for auto-scaling, based on which we design the new featuresof the extended system (Figure 5.12). We implement the designed layers of ag-gregation, propagated from raw resource measurements such as CPU consump-tion of individual applications, to the final . We also use SAFARE to formallyanalyze the consistency of the specification. For instance, when an aggrega-tion process was specified to generate hard real-time data from a soft real-timeprocess during the design, the consistency check of SAFARE detected and pin-pointed the violation so that we could fix it prior to implementation.

Our experience shows that our taxonomy promotes a deeper understandingof the systems behavior, and raises awareness about characteristics that needto be considered as well as issues that need to be solved during the design. Ithelps designers to perform better analysis than otherwise, such as to identifyreusable design solutions, make data management decisions, eliminate infea-sible feature combinations, and calculate time-related parameters. Throughformal verification, SAFARE helps to detect and eliminate contradictions atthe early design stage of data aggregation processes.

80

Page 82: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

5.7 Validation on Industrial Use Cases 59

1 2 3 4 5 6 7 8 9 10

11 12 13 14 15 16 17 18 19 20

21 22 23 24 25 26 27 28 29 30

31 32 33 34 35 36 37 38 39 40

41 42 43 44 45 46 47 48 49 50

51 52 53 54 55 56 57 58 59 60

61 62 63 64 65 66 67 68 69 70

71 72 73 74 75 75 77 78 79 80

L1

L2

L3

L4 L5

L6

E1

E2

E3

Excavator Crusher Power stationWheel loaderN Cell N

Figure 5.13: An illustration of the map of quarry, and the missions of vehicles

Design a Collision Avoidance System

We apply UTRAN, UPPCART and UPPCART-SMC to the design and verifica-tion of a collision avoidance system for multiple construction vehicles workingautonomously in a quarry. The system should prevent vehicles from collidinginto each other or local obstacles. Due to productivity reasons, the vehiclesneed to accomplish their missions within given deadlines. To achieve this, wedesign a two-layer collision avoidance system, both relying on the data man-agement and transaction control provided by their DBMS.

The center of the global collision avoidance layer is a global DBMS thatstores the map of the quarry, which is divided into smaller cells (Figure 5.13).The missions of vehicles are modeled as a series of transactions. Via con-currency control provided by the DBMS, the transactions are not allowed toaccess the same cell data, such that the vehicles cannot operate in the samecells and collision is avoided. Isolation is the main concern in this scenario.For productivity, vehicles may be prioritized such that some of the missionscan be carried out more timely, which is addressed as temporal correctness ofthe transactions. Lower prioritized missions may be aborted, and compensated

5.7 Validation on Industrial Use Cases 59

1 2 3 4 5 6 7 8 9 10

11 12 13 14 15 16 17 18 19 20

21 22 23 24 25 26 27 28 29 30

31 32 33 34 35 36 37 38 39 40

41 42 43 44 45 46 47 48 49 50

51 52 53 54 55 56 57 58 59 60

61 62 63 64 65 66 67 68 69 70

71 72 73 74 75 75 77 78 79 80

L1

L2

L3

L4 L5

L6

E1

E2

E3

Excavator Crusher Power stationWheel loaderN Cell N

Figure 5.13: An illustration of the map of quarry, and the missions of vehicles

Design a Collision Avoidance System

We apply UTRAN, UPPCART and UPPCART-SMC to the design and verifica-tion of a collision avoidance system for multiple construction vehicles workingautonomously in a quarry. The system should prevent vehicles from collidinginto each other or local obstacles. Due to productivity reasons, the vehiclesneed to accomplish their missions within given deadlines. To achieve this, wedesign a two-layer collision avoidance system, both relying on the data man-agement and transaction control provided by their DBMS.

The center of the global collision avoidance layer is a global DBMS thatstores the map of the quarry, which is divided into smaller cells (Figure 5.13).The missions of vehicles are modeled as a series of transactions. Via con-currency control provided by the DBMS, the transactions are not allowed toaccess the same cell data, such that the vehicles cannot operate in the samecells and collision is avoided. Isolation is the main concern in this scenario.For productivity, vehicles may be prioritized such that some of the missionscan be carried out more timely, which is addressed as temporal correctness ofthe transactions. Lower prioritized missions may be aborted, and compensated

81

Page 83: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

60 Chapter 5. Thesis Contributions

later, which is formulated as an atomicity issue.The local collision avoidance layer in each vehicle monitors the surround-

ings using a camera, a sensor and a lidar, whose readings are stored in the localdatabase. Transactions are used to update the database, and discover the occur-rence of obstacles. Timely update and access of the surrounding data, as wellas correct abortion and recovery of transactions upon detection of obstacles,are crucial to the safety of the vehicle.

We present the design and verification of the collision avoidance systemin two papers. In Paper E [26], we consider a system with fewer vehiclesand a smaller map. We apply UTRAN to describe the DBMS in both layers,during which the required behaviors are specified as atomicity, isolation andtemporal correctness properties, respectively. The UTRAN specifications arethen translated into UPPCART models using U2Transformer. Atomicity, iso-lation and temporal correctness of the designed system are model checked byUPPAAL, which proves that the current RTDBMS designs can guarantee thedesired properties.

In Paper F [34], we present the analysis of the global collision avoidancelayer designed for a larger number of vehicles on a bigger map. Since exhaus-tive model checking with UPPCART cannot reach a conclusion due to the dras-tic growth of states, we resort to statistical model checking with UPPCART-SMC for a probabilistic guarantee of the properties. We apply the UPPCART-SMC patterns to model the transactions and mechanisms as stochastic timedautomata, which are analyzed by UPPAAL SMC. The analysis results showthat the properties are satisfied with probabilities no lower than 0.9999999 andwith a confidence level of 0.99, over the specified simulation time and rounds.Higher probability thresholds and confidence levels entail longer analysis time.As the system scales up with larger amounts of transactions and data, or morecomplex transaction management mechanisms, longer analysis time is also ex-pected, but memory exhaustion due to state explosion is avoided.

5.8 Research Goals Revisited

Table 5.4 summarizes the relationship between the included papers, the con-tributions of this thesis, and the research goals. Among the contributions, theDAGGERS process proposed in Chapter 5.1 addresses our overall researchgoal directly, by providing a systematic process as our methodology. The othercontributions are proposed in the included papers, and address the subgoals asfollows:

60 Chapter 5. Thesis Contributions

later, which is formulated as an atomicity issue.The local collision avoidance layer in each vehicle monitors the surround-

ings using a camera, a sensor and a lidar, whose readings are stored in the localdatabase. Transactions are used to update the database, and discover the occur-rence of obstacles. Timely update and access of the surrounding data, as wellas correct abortion and recovery of transactions upon detection of obstacles,are crucial to the safety of the vehicle.

We present the design and verification of the collision avoidance systemin two papers. In Paper E [26], we consider a system with fewer vehiclesand a smaller map. We apply UTRAN to describe the DBMS in both layers,during which the required behaviors are specified as atomicity, isolation andtemporal correctness properties, respectively. The UTRAN specifications arethen translated into UPPCART models using U2Transformer. Atomicity, iso-lation and temporal correctness of the designed system are model checked byUPPAAL, which proves that the current RTDBMS designs can guarantee thedesired properties.

In Paper F [34], we present the analysis of the global collision avoidancelayer designed for a larger number of vehicles on a bigger map. Since exhaus-tive model checking with UPPCART cannot reach a conclusion due to the dras-tic growth of states, we resort to statistical model checking with UPPCART-SMC for a probabilistic guarantee of the properties. We apply the UPPCART-SMC patterns to model the transactions and mechanisms as stochastic timedautomata, which are analyzed by UPPAAL SMC. The analysis results showthat the properties are satisfied with probabilities no lower than 0.9999999 andwith a confidence level of 0.99, over the specified simulation time and rounds.Higher probability thresholds and confidence levels entail longer analysis time.As the system scales up with larger amounts of transactions and data, or morecomplex transaction management mechanisms, longer analysis time is also ex-pected, but memory exhaustion due to state explosion is avoided.

5.8 Research Goals Revisited

Table 5.4 summarizes the relationship between the included papers, the con-tributions of this thesis, and the research goals. Among the contributions, theDAGGERS process proposed in Chapter 5.1 addresses our overall researchgoal directly, by providing a systematic process as our methodology. The othercontributions are proposed in the included papers, and address the subgoals asfollows:

82

Page 84: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

5.8 Research Goals Revisited 61

Table 5.4: Contribution of included papers with respect to research subgoals

Papers (Contributions) OverallGoal

SG 1 SG 2 SG 3 SG 4

Thesis (DAGGERS) XPaper A (DAGGTAX, validation) X XPaper B (SAFARE, validation) X XPaper C (UPPCART) XPaper D (UPPCART) XPaper E (UTRAN, UPPCART, validation) X X XPaper F (UPPCART-SMC, validation) X X

• Paper A [29] proposes DAGGTAX to organize the common and vari-able features of data aggregation processes, such that the designers cananalyze their design choices at an early development stage. SAFAREproposed in Paper B [30] develops a method and a tool to formalizeDAGGTAX specifications and analyze their consistency. These contri-butions address Subgoal 1: Classify and analyze the common and vari-able characteristics of data aggregation, such that the consequences ofdesign choices can be reasoned about.

• Paper E [26] proposes the UTRAN profile for the specification of trans-actions with atomicity, isolation and temporal correctness properties,which addresses Subgoal 2: Specify atomicity, isolation and temporalcorrectness of transactions, as well as the abort recovery, concurrencycontrol and scheduling mechanisms, in a systematic manner.

• Papers C [32], D [33] and E [26] propose the UPPCART frameworkthat models the transactions together with various mechanisms as UP-PAAL TA, and model checks the properties using UPPAAL. Paper F[34] proposes UPPCART-SMC for probabilistic analysis of larger-scaleRTDBMS that cannot be analyzed by applying UPPCART. These con-tributions addresses Subgoal 3: Facilitate flexible modeling of real-timetransactions with abort recovery, concurrency control, and scheduling,as well as formal analysis of atomicity, isolation and temporal correct-ness.

• By applying our proposed methods to a series of industrial case studies,Papers A [29], B [30], E [26] and F [34] addresses Subgoal 4: Validate

5.8 Research Goals Revisited 61

Table 5.4: Contribution of included papers with respect to research subgoals

Papers (Contributions) OverallGoal

SG 1 SG 2 SG 3 SG 4

Thesis (DAGGERS) XPaper A (DAGGTAX, validation) X XPaper B (SAFARE, validation) X XPaper C (UPPCART) XPaper D (UPPCART) XPaper E (UTRAN, UPPCART, validation) X X XPaper F (UPPCART-SMC, validation) X X

• Paper A [29] proposes DAGGTAX to organize the common and vari-able features of data aggregation processes, such that the designers cananalyze their design choices at an early development stage. SAFAREproposed in Paper B [30] develops a method and a tool to formalizeDAGGTAX specifications and analyze their consistency. These contri-butions address Subgoal 1: Classify and analyze the common and vari-able characteristics of data aggregation, such that the consequences ofdesign choices can be reasoned about.

• Paper E [26] proposes the UTRAN profile for the specification of trans-actions with atomicity, isolation and temporal correctness properties,which addresses Subgoal 2: Specify atomicity, isolation and temporalcorrectness of transactions, as well as the abort recovery, concurrencycontrol and scheduling mechanisms, in a systematic manner.

• Papers C [32], D [33] and E [26] propose the UPPCART frameworkthat models the transactions together with various mechanisms as UP-PAAL TA, and model checks the properties using UPPAAL. Paper F[34] proposes UPPCART-SMC for probabilistic analysis of larger-scaleRTDBMS that cannot be analyzed by applying UPPCART. These con-tributions addresses Subgoal 3: Facilitate flexible modeling of real-timetransactions with abort recovery, concurrency control, and scheduling,as well as formal analysis of atomicity, isolation and temporal correct-ness.

• By applying our proposed methods to a series of industrial case studies,Papers A [29], B [30], E [26] and F [34] addresses Subgoal 4: Validate

83

Page 85: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

62 Chapter 5. Thesis Contributions

the applicability and usefulness of the proposed methods via industrialuse cases.

These contributions together provide a solution for designing customizedreal-time data management solutions based on systematic trade-offs of trans-actional properties, which addresses our overall research goal.

62 Chapter 5. Thesis Contributions

the applicability and usefulness of the proposed methods via industrialuse cases.

These contributions together provide a solution for designing customizedreal-time data management solutions based on systematic trade-offs of trans-actional properties, which addresses our overall research goal.

84

Page 86: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Chapter 6

Related Work

In this chapter, we discuss the related work with respect to customized transac-tion management in DBMS, data aggregation, as well as the formalization andanalysis of transactions.

6.1 Design Methodologies for CustomizedTransaction Management

Designing effective and efficient transaction management to suit applications’needs has been a hot topic in the development of DBMS. Various design method-ologies have been proposed in literature for developing transaction manage-ment for DBMS. KIDS [15], an early effort to construct a customized DBMS,identifies transaction management as an aspect, and decomposes it into sub-aspects representing functionalities such as concurrency control and recovery.During the process proposed in KIDS, the database system designer has to de-cide the selection of run-time implementation techniques, based on the analysisof requirements and a classification of the implementation algorithms. Aspec-tOPTIMA [17] proposes a reusable aspect-oriented framework for constructingcustomized transaction management. The designer selects particular aspects,such as a particular concurrency control algorithm and a recovery algorithm,which are composed to provide ACID assurance. These methodologies mainlyfocus on DBMS without real-time constraints. Moreover, since formal meth-ods are not used to guide the design decisions, these methods do not enjoy thehigh degree of assurance provided by formal analysis.

63

Chapter 6

Related Work

In this chapter, we discuss the related work with respect to customized transac-tion management in DBMS, data aggregation, as well as the formalization andanalysis of transactions.

6.1 Design Methodologies for CustomizedTransaction Management

Designing effective and efficient transaction management to suit applications’needs has been a hot topic in the development of DBMS. Various design method-ologies have been proposed in literature for developing transaction manage-ment for DBMS. KIDS [15], an early effort to construct a customized DBMS,identifies transaction management as an aspect, and decomposes it into sub-aspects representing functionalities such as concurrency control and recovery.During the process proposed in KIDS, the database system designer has to de-cide the selection of run-time implementation techniques, based on the analysisof requirements and a classification of the implementation algorithms. Aspec-tOPTIMA [17] proposes a reusable aspect-oriented framework for constructingcustomized transaction management. The designer selects particular aspects,such as a particular concurrency control algorithm and a recovery algorithm,which are composed to provide ACID assurance. These methodologies mainlyfocus on DBMS without real-time constraints. Moreover, since formal meth-ods are not used to guide the design decisions, these methods do not enjoy thehigh degree of assurance provided by formal analysis.

63

85

Page 87: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

64 Chapter 6. Related Work

PRISMA [14] is a software product-line-oriented process for requirementengineering of flexible transaction models, which supports identification, rea-soning and composition of ACID variants and their sub-features in the require-ment phase. Formal methods are applied to reason about the consistency ofthe selected ACID variants, but not to the analysis of the transactional behav-iors under various selected transaction management mechanisms. Temporalcorrectness of transactions is not considered in PRISMA.

Mentis et al. [18] propose a model-driven approach for generating the im-plementation of selected transaction models. The implementation is modeledin state machines and verified against the ACID properties, after which thecode of the transaction management can be generated. Temporal correctness isnot considered in this approach.

Khachana et al. [16] propose an approach to produce a monolithic trans-action processing system able to adjust the relaxation of ACID properties atruntime, according to business requirements through user interaction. This ap-proach, however, does not perform design-time analysis on the transactionalproperties, and does not target real-time applications.

Several research efforts have been made to customize DBMS specially forembedded, real-time application domains. COMET [19] combines a component-based approach and aspect-oriented programing to build tailored RTDBMS.Encapsulating database functionalities as components, and crosscutting fea-tures such as transaction management as aspects, COMET generates a tai-lored RTDBMS by weaving the selected components and aspects together. InFAME-DBMS [20], functional requirements on a DBMS are represented asfeatures, which are composed to construct DBMS variants. Built on top ofFAME-DBMS, AUTODAMA [68] generates tailorable DBMS specially forautomotive systems. In these methodologies, the selection of building modulesis based on functional requirements analysis, as well as constraints on code-size and performance. They mainly address resource consumption and foot-print issues for embedded systems, rather than temporal correctness and thepossible conflicts with ACID assurance. A more recent work in customizeddatabase management system is conducted by Wölfl [69], who proposes theFlyDB framework to generate tailored data management solutions for avionicsystems from high-level models described in a domain specific language. Inhis work, the database product line incorporates commonalities and variationsin data schema, storage, and access methods, especially designed for avionicsystems. The primary goal is to achieve optimal memory footprint and re-sponse time. Although read and write operations, as well as simple referentialintegrity by foreign keys, are covered in the query models, FlyDB does not

64 Chapter 6. Related Work

PRISMA [14] is a software product-line-oriented process for requirementengineering of flexible transaction models, which supports identification, rea-soning and composition of ACID variants and their sub-features in the require-ment phase. Formal methods are applied to reason about the consistency ofthe selected ACID variants, but not to the analysis of the transactional behav-iors under various selected transaction management mechanisms. Temporalcorrectness of transactions is not considered in PRISMA.

Mentis et al. [18] propose a model-driven approach for generating the im-plementation of selected transaction models. The implementation is modeledin state machines and verified against the ACID properties, after which thecode of the transaction management can be generated. Temporal correctness isnot considered in this approach.

Khachana et al. [16] propose an approach to produce a monolithic trans-action processing system able to adjust the relaxation of ACID properties atruntime, according to business requirements through user interaction. This ap-proach, however, does not perform design-time analysis on the transactionalproperties, and does not target real-time applications.

Several research efforts have been made to customize DBMS specially forembedded, real-time application domains. COMET [19] combines a component-based approach and aspect-oriented programing to build tailored RTDBMS.Encapsulating database functionalities as components, and crosscutting fea-tures such as transaction management as aspects, COMET generates a tai-lored RTDBMS by weaving the selected components and aspects together. InFAME-DBMS [20], functional requirements on a DBMS are represented asfeatures, which are composed to construct DBMS variants. Built on top ofFAME-DBMS, AUTODAMA [68] generates tailorable DBMS specially forautomotive systems. In these methodologies, the selection of building modulesis based on functional requirements analysis, as well as constraints on code-size and performance. They mainly address resource consumption and foot-print issues for embedded systems, rather than temporal correctness and thepossible conflicts with ACID assurance. A more recent work in customizeddatabase management system is conducted by Wölfl [69], who proposes theFlyDB framework to generate tailored data management solutions for avionicsystems from high-level models described in a domain specific language. Inhis work, the database product line incorporates commonalities and variationsin data schema, storage, and access methods, especially designed for avionicsystems. The primary goal is to achieve optimal memory footprint and re-sponse time. Although read and write operations, as well as simple referentialintegrity by foreign keys, are covered in the query models, FlyDB does not

86

Page 88: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

6.2 Taxonomies of Data Aggregation 65

consider more complex transaction semantics with concurrency control and re-covery.

Compared with these aforementioned works, our DAGGERS process startsfrom deriving the real-time transaction models accounting for both temporalcorrectness and ACID properties. More importantly, we emphasize formalanalysis of trade-offs between these properties, and focus on a systematic ap-proach to analyze different decisions. By iteratively applying formal modelingand analysis of the transaction models, we are able to select the appropriatetransaction management mechanisms that are assured to satisfy the desiredtransactional properties.

6.2 Taxonomies of Data Aggregation

Many researchers have promoted the understanding of data aggregation on var-ious aspects. Among these works, considerable efforts have been made on thestudy of aggregate functions. Mesiar et al. [70], Marichal [71], and Rudas et al.[21] have studied the mathematical properties of aggregate functions, such ascontinuity and stability, and discussed these properties of common aggregatefunctions in detail. A procedure for the construction of an appropriate aggre-gate function is also proposed by Rudas et al. [21]. In order to design a soft-ware system that computes aggregation efficiently, Gray et al. [72] have clas-sified aggregate functions into distributive, algebraic and holistic, dependingon the amount of intermediate states required for partial aggregates. Later, inorder to study the influence of aggregate functions on the performance of sen-sor data aggregation, Madden et al. [73] have extended Gray’s taxonomy, andclassified aggregate functions according to their state requirements, toleranceof loss, duplicate sensitivity, and monotonicity. Fasolo et al. [37] classify ag-gregate functions with respect to four dimensions, which are lossy aggregation,duplicate sensitivity, resilience to losses/failures and correlation awareness. Allthese works above only address the characteristics of aggregate functions. Ourtaxonomy, although inspired by these works in the classification of aggregatefunctions, includes all constituents of data aggregation processes and the timeconstraints, and provides a feature-diagram-based representation to organizethe commonalities and variabilities of data aggregation processes.

A large proportion of existing works have their focus on in-network dataaggregation, which is commonly used in sensor networks. In-network aggre-gation is the process of processing and aggregating data at intermediate nodeswhen data are transmitted from sensor nodes to sinks through the network [37].

6.2 Taxonomies of Data Aggregation 65

consider more complex transaction semantics with concurrency control and re-covery.

Compared with these aforementioned works, our DAGGERS process startsfrom deriving the real-time transaction models accounting for both temporalcorrectness and ACID properties. More importantly, we emphasize formalanalysis of trade-offs between these properties, and focus on a systematic ap-proach to analyze different decisions. By iteratively applying formal modelingand analysis of the transaction models, we are able to select the appropriatetransaction management mechanisms that are assured to satisfy the desiredtransactional properties.

6.2 Taxonomies of Data Aggregation

Many researchers have promoted the understanding of data aggregation on var-ious aspects. Among these works, considerable efforts have been made on thestudy of aggregate functions. Mesiar et al. [70], Marichal [71], and Rudas et al.[21] have studied the mathematical properties of aggregate functions, such ascontinuity and stability, and discussed these properties of common aggregatefunctions in detail. A procedure for the construction of an appropriate aggre-gate function is also proposed by Rudas et al. [21]. In order to design a soft-ware system that computes aggregation efficiently, Gray et al. [72] have clas-sified aggregate functions into distributive, algebraic and holistic, dependingon the amount of intermediate states required for partial aggregates. Later, inorder to study the influence of aggregate functions on the performance of sen-sor data aggregation, Madden et al. [73] have extended Gray’s taxonomy, andclassified aggregate functions according to their state requirements, toleranceof loss, duplicate sensitivity, and monotonicity. Fasolo et al. [37] classify ag-gregate functions with respect to four dimensions, which are lossy aggregation,duplicate sensitivity, resilience to losses/failures and correlation awareness. Allthese works above only address the characteristics of aggregate functions. Ourtaxonomy, although inspired by these works in the classification of aggregatefunctions, includes all constituents of data aggregation processes and the timeconstraints, and provides a feature-diagram-based representation to organizethe commonalities and variabilities of data aggregation processes.

A large proportion of existing works have their focus on in-network dataaggregation, which is commonly used in sensor networks. In-network aggre-gation is the process of processing and aggregating data at intermediate nodeswhen data are transmitted from sensor nodes to sinks through the network [37].

87

Page 89: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

66 Chapter 6. Related Work

Besides a classification of aggregate functions that we have discussed in theprevious paragraph, Fasolo et al. [37] classify the existing routing protocolsaccording to the aggregation method, resilience to link failures, overhead to se-tup/maintain aggregation structure, scalability, resilience to node mobility, en-ergy saving method and timing strategy. Their work, however, does not addressthe characteristics of the data, and does not provide a structured representationfor the common and variable characteristics. The aggregation protocols arealso classified by Solis et al. [74], Makhloufi et al. [75], and Rajagopalan [76],with respect to different classification criteria. In contrast to the above worksfocusing mainly on aggregation protocols, Alzaid et al. [77] have proposeda taxonomy of secure aggregation schemes that classifies them into differentmodels. All these works differ from our taxonomy in that they provide tax-onomies from a different perspective, such as network topology for instance.Instead, our work strives to understand the features and their implications ofdata aggregation processes and its constituents in design.

6.3 Formal Specification and Analysis ofTransactions

Another large body of work related to this thesis is produced within the for-malization and formal analysis of transactions. In the real-time community,the common technique to formally analyze transaction performance is schedu-lability analysis [78, 79]. However, this technique only analyzes the temporalcorrectness of transactions. To our knowledge, less attention has been devotedto studying to which extent logical data consistency can be achieved in thereal-time paradigm. Many researchers have contributed to the verification ofconcurrent programs. For instance, Amighi et al. [80] applies theorem-provingbased techniques to verify various properties, such as deadlock and data racefreedom, of concurrent programs. Their technique, although with the poten-tial to analyze transaction atomicity and isolation, requires high expertise tospecify high-level transaction semantics and properties. In addition, temporalinformation and properties are not considered in their framework.

A substantial group of work on formal specification and analysis of trans-action models is represented by the ACTA framework [94] and its successors,which are summarized in literature [14]. ACTA provides a first-order logicformalization to specify the transactional effects of data objects and the inter-action between transactions, facilitating reasoning about transaction properties,as well as flexible synthesis of transaction models. Real-Time ACTA [95] ex-

66 Chapter 6. Related Work

Besides a classification of aggregate functions that we have discussed in theprevious paragraph, Fasolo et al. [37] classify the existing routing protocolsaccording to the aggregation method, resilience to link failures, overhead to se-tup/maintain aggregation structure, scalability, resilience to node mobility, en-ergy saving method and timing strategy. Their work, however, does not addressthe characteristics of the data, and does not provide a structured representationfor the common and variable characteristics. The aggregation protocols arealso classified by Solis et al. [74], Makhloufi et al. [75], and Rajagopalan [76],with respect to different classification criteria. In contrast to the above worksfocusing mainly on aggregation protocols, Alzaid et al. [77] have proposeda taxonomy of secure aggregation schemes that classifies them into differentmodels. All these works differ from our taxonomy in that they provide tax-onomies from a different perspective, such as network topology for instance.Instead, our work strives to understand the features and their implications ofdata aggregation processes and its constituents in design.

6.3 Formal Specification and Analysis ofTransactions

Another large body of work related to this thesis is produced within the for-malization and formal analysis of transactions. In the real-time community,the common technique to formally analyze transaction performance is schedu-lability analysis [78, 79]. However, this technique only analyzes the temporalcorrectness of transactions. To our knowledge, less attention has been devotedto studying to which extent logical data consistency can be achieved in thereal-time paradigm. Many researchers have contributed to the verification ofconcurrent programs. For instance, Amighi et al. [80] applies theorem-provingbased techniques to verify various properties, such as deadlock and data racefreedom, of concurrent programs. Their technique, although with the poten-tial to analyze transaction atomicity and isolation, requires high expertise tospecify high-level transaction semantics and properties. In addition, temporalinformation and properties are not considered in their framework.

A substantial group of work on formal specification and analysis of trans-action models is represented by the ACTA framework [94] and its successors,which are summarized in literature [14]. ACTA provides a first-order logicformalization to specify the transactional effects of data objects and the inter-action between transactions, facilitating reasoning about transaction properties,as well as flexible synthesis of transaction models. Real-Time ACTA [95] ex-

88

Page 90: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

6.3 Formal Specification and Analysis of Transactions 67

Table 6.1: Summary of non-ACTA related work

Relatedwork

Properties Formalism AnalysisTechnique

Mentis et al.[18]

ACID state machines model checking

Cerone et al.[81]

logical consistencymodels, no explicitACID

axioms and rules theorem proving

Bocchi et al.[82]

consistency process calculi model checking

Kokash etal. [83]

atomicity Reo, constraintautomata

model checking

Grov et al.[84] and Liuet al. [85]

atomicity, isolation Real-TimeMaude

model checking

Suryavanshiet al. [86]

various properties,no explicit ACID

Event-B theorem proving

Kirchberg[87]

various properties,no explicit ACID

transition rules model checking

Makni et al.[88]

various properties,no explicit ACID

SPIN model checking

Gaaloul etal. [89]

atomicity event calculus model checking

Bourne [90] atomicity temporal logics model checkingLanotte etal. [91]

atomicity and time-liness

timed automata model checking

Kot [92] various properties,timeliness, no ex-plicit ACID

timed automata model checking

Liu et al.[93]

atomicity, isolation Real-TimeMaude

statistical modelchecking

6.3 Formal Specification and Analysis of Transactions 67

Table 6.1: Summary of non-ACTA related work

Relatedwork

Properties Formalism AnalysisTechnique

Mentis et al.[18]

ACID state machines model checking

Cerone et al.[81]

logical consistencymodels, no explicitACID

axioms and rules theorem proving

Bocchi et al.[82]

consistency process calculi model checking

Kokash etal. [83]

atomicity Reo, constraintautomata

model checking

Grov et al.[84] and Liuet al. [85]

atomicity, isolation Real-TimeMaude

model checking

Suryavanshiet al. [86]

various properties,no explicit ACID

Event-B theorem proving

Kirchberg[87]

various properties,no explicit ACID

transition rules model checking

Makni et al.[88]

various properties,no explicit ACID

SPIN model checking

Gaaloul etal. [89]

atomicity event calculus model checking

Bourne [90] atomicity temporal logics model checkingLanotte etal. [91]

atomicity and time-liness

timed automata model checking

Kot [92] various properties,timeliness, no ex-plicit ACID

timed automata model checking

Liu et al.[93]

atomicity, isolation Real-TimeMaude

statistical modelchecking

89

Page 91: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

68 Chapter 6. Related Work

tends ACTA with formalization of real-time constraints on transactions anddata. However, the formal syntax and semantics for the specification of ACIDvariants provided by ACTA and Real-Time ACTA are limited, and tool sup-port for verification is missing. SPECTRA [96], which improves the formalsyntax of ACTA, and is used in KIDS for specifying transaction models, doesnot focus on the ACID and timeliness variants. GOLOG [97] improves ACTAby providing formal semantics for the building blocks, using situation calculusand tool support for simulation. However, organizing the building blocks withrespect to ACID properties is not in their focus, and real-time properties arenot supported. Used in the PRISMA process [14], SPLACID [98] improvesACTA by providing a more expressive and structured language support forACID variants and their sub-features. Real-time properties are not consideredin SPLACID.

In addition to the thread of ACTA, a variety of methods have been proposedto formalize transactions. For instance, Mentis et al. [18] model transactionmodels as state machines, and verify that the ACID properties can be satisfiedby an implementation using model checking. Other works are intended foranalyzing a selected subset of properties in particular scenarios. A list of non-ACTA related works are presented in Table 6.1. Compared with these works,our work is different in several aspects. First, our process strives to analyzeboth ACID and temporal correctness, which are not entirely covered by theaforementioned works. Second, we contribute to a general, reusable and flex-ible modeling approach for modeling ACID and temporal correctness proper-ties, as well as the supporting transaction management mechanisms. In partic-ular, our timed-automata framework provides flexible modeling capability fora range of concurrency control mechanisms by using skeletons and patterns.

68 Chapter 6. Related Work

tends ACTA with formalization of real-time constraints on transactions anddata. However, the formal syntax and semantics for the specification of ACIDvariants provided by ACTA and Real-Time ACTA are limited, and tool sup-port for verification is missing. SPECTRA [96], which improves the formalsyntax of ACTA, and is used in KIDS for specifying transaction models, doesnot focus on the ACID and timeliness variants. GOLOG [97] improves ACTAby providing formal semantics for the building blocks, using situation calculusand tool support for simulation. However, organizing the building blocks withrespect to ACID properties is not in their focus, and real-time properties arenot supported. Used in the PRISMA process [14], SPLACID [98] improvesACTA by providing a more expressive and structured language support forACID variants and their sub-features. Real-time properties are not consideredin SPLACID.

In addition to the thread of ACTA, a variety of methods have been proposedto formalize transactions. For instance, Mentis et al. [18] model transactionmodels as state machines, and verify that the ACID properties can be satisfiedby an implementation using model checking. Other works are intended foranalyzing a selected subset of properties in particular scenarios. A list of non-ACTA related works are presented in Table 6.1. Compared with these works,our work is different in several aspects. First, our process strives to analyzeboth ACID and temporal correctness, which are not entirely covered by theaforementioned works. Second, we contribute to a general, reusable and flex-ible modeling approach for modeling ACID and temporal correctness proper-ties, as well as the supporting transaction management mechanisms. In partic-ular, our timed-automata framework provides flexible modeling capability fora range of concurrency control mechanisms by using skeletons and patterns.

90

Page 92: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Chapter 7

Conclusions and FutureWork

In this thesis, we have proposed a systematic process called DAGGERS for de-veloping customized database management systems with data aggregation sup-port for real-time applications. Our contribution augments the existing DBSMdesign methodology with systematic decisions on the customization of trans-action management mechanisms, based on the trade-offs between ACID andtemporal correctness of the application-specific transactions. The DAGGERSprocess guides the selection of appropriate transaction management mecha-nisms for the RTDBMS, via systematic specification and formal analysis ofthe traded-off properties, which can offer a high-degree of assurance.

A series of techniques have been proposed to facilitate the proposed DAG-GERS process. We have proposed the DAGGTAX taxonomy to specify thefeatures of data aggregation processes, which are later modeled as transactions.Three design rules and a set of design heuristics have been proposed based onthe taxonomy to provide guidance for the design of data aggregation processes.The consistency of a DAGGTAX-based specification can be checked formallyand automatically by our SAFARE tool, using SAT solving techniques.

We have proposed a UML-profile called UTRAN, which supports high-level, explicit specification of transactions, transactional properties (atomic-ity, isolation and temporal correctness), as well as the underlying transactionalmanagement mechanisms (abort recovery, concurrency control, scheduling).We have proposed two formal frameworks, UPPCART and UPPCART-SMC,for the formal analysis of the transactions. Our UPPCART framework enables

69

Chapter 7

Conclusions and FutureWork

In this thesis, we have proposed a systematic process called DAGGERS for de-veloping customized database management systems with data aggregation sup-port for real-time applications. Our contribution augments the existing DBSMdesign methodology with systematic decisions on the customization of trans-action management mechanisms, based on the trade-offs between ACID andtemporal correctness of the application-specific transactions. The DAGGERSprocess guides the selection of appropriate transaction management mecha-nisms for the RTDBMS, via systematic specification and formal analysis ofthe traded-off properties, which can offer a high-degree of assurance.

A series of techniques have been proposed to facilitate the proposed DAG-GERS process. We have proposed the DAGGTAX taxonomy to specify thefeatures of data aggregation processes, which are later modeled as transactions.Three design rules and a set of design heuristics have been proposed based onthe taxonomy to provide guidance for the design of data aggregation processes.The consistency of a DAGGTAX-based specification can be checked formallyand automatically by our SAFARE tool, using SAT solving techniques.

We have proposed a UML-profile called UTRAN, which supports high-level, explicit specification of transactions, transactional properties (atomic-ity, isolation and temporal correctness), as well as the underlying transactionalmanagement mechanisms (abort recovery, concurrency control, scheduling).We have proposed two formal frameworks, UPPCART and UPPCART-SMC,for the formal analysis of the transactions. Our UPPCART framework enables

69

91

Page 93: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

70 Chapter 7. Conclusions and Future Work

pattern-based formal modeling of atomic, concurrent, real-time transactions,which allows the desired atomicity, isolation and temporal correctness prop-erties to be model checked rigorously. Our UPPCART-SMC framework alsooffers pattern-based model construction, and allows large and complex DBMSto be analyzed by statistical model checking. The transformation from UTRANto UPPCART and UPPCART-SMC is automated by our tool U2Transformer.

The validation on a series of real-world industrial use cases have demon-strated that our proposed techniques are useful to the design of customizedRTDBMS. Our taxonomy enhances the understanding of the designed system,and raises awareness about the characteristics that need to be considered dur-ing the design. By applying the taxonomy, design flaws could be spotted andfixed prior to implementation. The underlying feature model allows data ag-gregation processes to be constructed by composing reusable features, whosefeasibility can be reasoned about while time-related parameters can be derived.Our timed-automata-based frameworks allows designers to model transactionswith various transaction management mechanisms, and formally analyze thesatisfiability of atomicity, isolation and temporal correctness. Among them,UPPCART provides formal proof for the designed system model with the se-lected transaction models and mechanisms. UPPCART-SMC provides proba-bilistic guarantee for the system design, and is suitable for larger scale systems.Based on the analysis, the designer can choose a desired trade-off and selectthe appropriate mechanisms that have been assured to achieve the selected tradeoff.

7.1 Limitations

Our DAGGERS process and the proposed methods assume finite numbers ofdata and transactions. The data access patterns of these transactions must beable to be identified and described during the design phase, which is the casein many real-time systems. Database systems with undecidable data or trans-actions are out of scope of our design methodology. A typical example ofsuch systems is the cloud databases, where the amount of data can grow with-out bound, and transactions may be constructed dynamically at run time. Inthis case, one can neither specify all data in the system using DAGGTAX, normodel the transactions during system design.

The taxonomy provides the common and variable features of data aggrega-tion processes, with a focus on the high-level real-time properties, and based onour surveyed applications. Since the survey is by no means exhaustive, some

70 Chapter 7. Conclusions and Future Work

pattern-based formal modeling of atomic, concurrent, real-time transactions,which allows the desired atomicity, isolation and temporal correctness prop-erties to be model checked rigorously. Our UPPCART-SMC framework alsooffers pattern-based model construction, and allows large and complex DBMSto be analyzed by statistical model checking. The transformation from UTRANto UPPCART and UPPCART-SMC is automated by our tool U2Transformer.

The validation on a series of real-world industrial use cases have demon-strated that our proposed techniques are useful to the design of customizedRTDBMS. Our taxonomy enhances the understanding of the designed system,and raises awareness about the characteristics that need to be considered dur-ing the design. By applying the taxonomy, design flaws could be spotted andfixed prior to implementation. The underlying feature model allows data ag-gregation processes to be constructed by composing reusable features, whosefeasibility can be reasoned about while time-related parameters can be derived.Our timed-automata-based frameworks allows designers to model transactionswith various transaction management mechanisms, and formally analyze thesatisfiability of atomicity, isolation and temporal correctness. Among them,UPPCART provides formal proof for the designed system model with the se-lected transaction models and mechanisms. UPPCART-SMC provides proba-bilistic guarantee for the system design, and is suitable for larger scale systems.Based on the analysis, the designer can choose a desired trade-off and selectthe appropriate mechanisms that have been assured to achieve the selected tradeoff.

7.1 Limitations

Our DAGGERS process and the proposed methods assume finite numbers ofdata and transactions. The data access patterns of these transactions must beable to be identified and described during the design phase, which is the casein many real-time systems. Database systems with undecidable data or trans-actions are out of scope of our design methodology. A typical example ofsuch systems is the cloud databases, where the amount of data can grow with-out bound, and transactions may be constructed dynamically at run time. Inthis case, one can neither specify all data in the system using DAGGTAX, normodel the transactions during system design.

The taxonomy provides the common and variable features of data aggrega-tion processes, with a focus on the high-level real-time properties, and based onour surveyed applications. Since the survey is by no means exhaustive, some

92

Page 94: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

7.2 Future Work 71

characteristics may not be included in the taxonomy if the applications demon-strating these characteristics are not covered in the survey. For instance, wehave realized that in many telecommunication systems, probabilistic featuresmay have impact on the real-time performance, and therefore are of interest tothe system designers. To incorporate new application-specific features into thetaxonomy, one may need to construct a new feature model. To achieve this,DAGGTAX can serve as a basis for the evolution of the new feature model,since it contains the basic constituents of data aggregation processes.

As for the formal models of the RTDBMS, we have only proposed pat-terns and their automated transformation for common pessimistic concurrencycontrol algorithms. Other algorithms in the optimistic or version-based concur-rency control categories are not considered in this work. We also do not con-sider other recovery algorithms than rollback and compensation. The patternsand transformation of other concurrency control and abort recovery mecha-nisms, however, can be constructed in the future using our principles.

Another limitation lies in the need of manual adjustments in the generatedTA models. Although we have proposed automated construction of TA forUPPCART and UPPCART-SMC, which reduces modeling efforts to a greatextent, manual adjustments of the models may still be needed, especially forthe purpose of optimization with respect to verification time. This optimizationcan be related to the particular transaction workload and the assumed DBMS.As shown in Paper E [26], if a transaction has only one read or write opera-tion, whose execution time is sufficiently short, we may consider to abstractthe entire transaction as one atomic unit, and remove the begin and commitoperation patterns from its model. This reduces the number of states for theverification. Manual adjustment is also required when we iterate through dif-ferent transaction management mechanisms. The designer needs to manuallyadjust the UTRAN model in order to select a different candidate mechanism,which can be transformed and analyzed automatically later.

7.2 Future Work

The work of this thesis opens several future research directions. One possi-ble future work involves the methods for trading off other transaction proper-ties and mechanisms, in addition to the ones already considered in our currentwork. In this thesis we have proposed the method of modeling transactionswith abort recovery, concurrency control, and scheduling, with the aim of ana-lyzing atomicity, isolation and temporal correctness. In the future work we can

7.2 Future Work 71

characteristics may not be included in the taxonomy if the applications demon-strating these characteristics are not covered in the survey. For instance, wehave realized that in many telecommunication systems, probabilistic featuresmay have impact on the real-time performance, and therefore are of interest tothe system designers. To incorporate new application-specific features into thetaxonomy, one may need to construct a new feature model. To achieve this,DAGGTAX can serve as a basis for the evolution of the new feature model,since it contains the basic constituents of data aggregation processes.

As for the formal models of the RTDBMS, we have only proposed pat-terns and their automated transformation for common pessimistic concurrencycontrol algorithms. Other algorithms in the optimistic or version-based concur-rency control categories are not considered in this work. We also do not con-sider other recovery algorithms than rollback and compensation. The patternsand transformation of other concurrency control and abort recovery mecha-nisms, however, can be constructed in the future using our principles.

Another limitation lies in the need of manual adjustments in the generatedTA models. Although we have proposed automated construction of TA forUPPCART and UPPCART-SMC, which reduces modeling efforts to a greatextent, manual adjustments of the models may still be needed, especially forthe purpose of optimization with respect to verification time. This optimizationcan be related to the particular transaction workload and the assumed DBMS.As shown in Paper E [26], if a transaction has only one read or write opera-tion, whose execution time is sufficiently short, we may consider to abstractthe entire transaction as one atomic unit, and remove the begin and commitoperation patterns from its model. This reduces the number of states for theverification. Manual adjustment is also required when we iterate through dif-ferent transaction management mechanisms. The designer needs to manuallyadjust the UTRAN model in order to select a different candidate mechanism,which can be transformed and analyzed automatically later.

7.2 Future Work

The work of this thesis opens several future research directions. One possi-ble future work involves the methods for trading off other transaction proper-ties and mechanisms, in addition to the ones already considered in our currentwork. In this thesis we have proposed the method of modeling transactionswith abort recovery, concurrency control, and scheduling, with the aim of ana-lyzing atomicity, isolation and temporal correctness. In the future work we can

93

Page 95: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

72 Chapter 7. Conclusions and Future Work

develop methods to address the analysis of consistency and durability, togetherwith the corresponding DBMS mechanisms.

An interesting direction is to provide methods for system generation inDAGGERS, such as generating data management code from the proved mod-els, or generating configuration files for configurable DBMS. Another exten-sion of DAGGERS is to introduce model-based testing, which creates test casesfrom the UML specifications and the formal models [99], in order to test thegenerated RTDBMS against the temporal and logical correctness requirements.

One future direction to advance our work is the integration of other formalmethods into the DAGGERS process. In order to provide rigorous analysisfor advanced constraints, techniques based on Satisfiability Modulo Theories(SMT) [54] can be integrated into SAFARE, which in the current version canonly analyze boolean propositional formulas with SAT solving. Program ver-ification tools and techniques [100, 101] can be integrated into the process forthe verification of user-defined functions that implement the lock resolutionsin the concurrency control algorithms, especially for their functional correct-ness. In this thesis, we assume that this code is correctly provided. In thefuture work, this code can also be verified formally to provide a more rigorousguarantee for the system design.

72 Chapter 7. Conclusions and Future Work

develop methods to address the analysis of consistency and durability, togetherwith the corresponding DBMS mechanisms.

An interesting direction is to provide methods for system generation inDAGGERS, such as generating data management code from the proved mod-els, or generating configuration files for configurable DBMS. Another exten-sion of DAGGERS is to introduce model-based testing, which creates test casesfrom the UML specifications and the formal models [99], in order to test thegenerated RTDBMS against the temporal and logical correctness requirements.

One future direction to advance our work is the integration of other formalmethods into the DAGGERS process. In order to provide rigorous analysisfor advanced constraints, techniques based on Satisfiability Modulo Theories(SMT) [54] can be integrated into SAFARE, which in the current version canonly analyze boolean propositional formulas with SAT solving. Program ver-ification tools and techniques [100, 101] can be integrated into the process forthe verification of user-defined functions that implement the lock resolutionsin the concurrency control algorithms, especially for their functional correct-ness. In this thesis, we assume that this code is correctly provided. In thefuture work, this code can also be verified formally to provide a more rigorousguarantee for the system design.

94

Page 96: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Bibliography

[1] Rajeshwari Hegde, Geetishree Mishra, and KS Gurumurthy. An insightinto the hardware and software complexity of ECUs in vehicles. InProceedings of the International Conference on Advances in Computingand Information Technology, pages 99–106. Springer, 2011.

[2] Simon Fürst and Markus Bechter. AUTOSAR for connected and au-tonomous vehicles: The AUTOSAR adaptive platform. In Proceedingsof the 46th Annual IEEE/IFIP International Conference on DependableSystems and Networks Workshop (DSN-W), pages 215–217. IEEE, 2016.

[3] Heiner Lasi, Peter Fettke, Hans-Georg Kemper, Thomas Feld, andMichael Hoffmann. Industry 4.0. Business & Information Systems En-gineering, 6(4):239–242, 2014.

[4] Krithi Ramamritham. Real-time databases. Distributed and ParallelDatabases, 1(2):199–226, 1993.

[5] Jim Gray and Andreas Reuter. Transaction processing: concepts andtechniques. Morgan Kaufmann Publishers Inc., 1992.

[6] Theo Haerder and Andreas Reuter. Principles of transaction-orienteddatabase recovery. ACM Computing Surveys, 15(4):287–317, 1983.

[7] Xiaohui Song and Jane WS Liu. How well can data temporal consis-tency be maintained? In Proceedings of the 1992 IEEE Symposiumon Computer-Aided Control System Design (CACSD), pages 275–284,1992.

[8] Udai Shanker, Manoj Misra, and Anil K Sarje. Distributed real timedatabase systems: background and literature review. Distributed andparallel databases, 23(2):127–149, 2008.

73

Bibliography

[1] Rajeshwari Hegde, Geetishree Mishra, and KS Gurumurthy. An insightinto the hardware and software complexity of ECUs in vehicles. InProceedings of the International Conference on Advances in Computingand Information Technology, pages 99–106. Springer, 2011.

[2] Simon Fürst and Markus Bechter. AUTOSAR for connected and au-tonomous vehicles: The AUTOSAR adaptive platform. In Proceedingsof the 46th Annual IEEE/IFIP International Conference on DependableSystems and Networks Workshop (DSN-W), pages 215–217. IEEE, 2016.

[3] Heiner Lasi, Peter Fettke, Hans-Georg Kemper, Thomas Feld, andMichael Hoffmann. Industry 4.0. Business & Information Systems En-gineering, 6(4):239–242, 2014.

[4] Krithi Ramamritham. Real-time databases. Distributed and ParallelDatabases, 1(2):199–226, 1993.

[5] Jim Gray and Andreas Reuter. Transaction processing: concepts andtechniques. Morgan Kaufmann Publishers Inc., 1992.

[6] Theo Haerder and Andreas Reuter. Principles of transaction-orienteddatabase recovery. ACM Computing Surveys, 15(4):287–317, 1983.

[7] Xiaohui Song and Jane WS Liu. How well can data temporal consis-tency be maintained? In Proceedings of the 1992 IEEE Symposiumon Computer-Aided Control System Design (CACSD), pages 275–284,1992.

[8] Udai Shanker, Manoj Misra, and Anil K Sarje. Distributed real timedatabase systems: background and literature review. Distributed andparallel databases, 23(2):127–149, 2008.

73

95

Page 97: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

74 Bibliography

[9] A. H. Datta and Sang Hyuk Son. A study of concurrency control in real-time, active database systems. IEEE Transactions on Knowledge andData Engineering, 14(3):465–484, 2002.

[10] Philip S Yu, Kun-Lung Wu, Kwei-Jay Lin, and Sang H Son. On real-time databases: concurrency control and scheduling. Proceedings of theIEEE, 82(1):140–157, Jan 1994.

[11] Sang Hyuk Son Stankovic, John A. and Jörgen Hansson. Misconcep-tions about real-time databases. Computer, 32(6):29–36, 1999.

[12] Ramez Elmasri and Shamkant B. Navathe. Fundamentals of DatabaseSystems. Addison-Wesley Longman Publishing Co., Inc., Boston, MA,USA, 6th edition, 2013.

[13] Robert K. Abbott and Hector Garcia-Molina. Scheduling real-timetransactions: A performance evaluation. ACM Trans. Database Syst.,17(3):513–560, September 1992.

[14] Barbara Gallina. PRISMA: a software product line-oriented process forthe requirements engineering of flexible transaction models. PhD thesis,University of Luxembourg, 2010.

[15] Andreas Geppert, Stefan Scherrer, and Klaus R Dittrich. KIDS: Con-struction of database management systems based on reuse. Technicalreport, 1997. Accessed on: 2019/07/18.

[16] Rose Tshoganetso Khachana, Anne James, and Rahat Iqbal. Relaxationof ACID properties in AuTrA, the adaptive user-defined transaction re-laxing approach. Future Generation Computer Systems, 27(1):58–66,2011.

[17] J. Kienzle, E. Duala-Ekoko, and S. Gélineau. AspectOptima: A casestudy on aspect dependencies and interactions. In Transactions onAspect-Oriented Software Development V, pages 187–234. Springer,2009.

[18] Anakreon Mentis and Panagiotis Katsaros. Model checking and codegeneration for transaction processing software. Concurrency and Com-putation: Practice and Experience, 24(7):711–722, 2012.

74 Bibliography

[9] A. H. Datta and Sang Hyuk Son. A study of concurrency control in real-time, active database systems. IEEE Transactions on Knowledge andData Engineering, 14(3):465–484, 2002.

[10] Philip S Yu, Kun-Lung Wu, Kwei-Jay Lin, and Sang H Son. On real-time databases: concurrency control and scheduling. Proceedings of theIEEE, 82(1):140–157, Jan 1994.

[11] Sang Hyuk Son Stankovic, John A. and Jörgen Hansson. Misconcep-tions about real-time databases. Computer, 32(6):29–36, 1999.

[12] Ramez Elmasri and Shamkant B. Navathe. Fundamentals of DatabaseSystems. Addison-Wesley Longman Publishing Co., Inc., Boston, MA,USA, 6th edition, 2013.

[13] Robert K. Abbott and Hector Garcia-Molina. Scheduling real-timetransactions: A performance evaluation. ACM Trans. Database Syst.,17(3):513–560, September 1992.

[14] Barbara Gallina. PRISMA: a software product line-oriented process forthe requirements engineering of flexible transaction models. PhD thesis,University of Luxembourg, 2010.

[15] Andreas Geppert, Stefan Scherrer, and Klaus R Dittrich. KIDS: Con-struction of database management systems based on reuse. Technicalreport, 1997. Accessed on: 2019/07/18.

[16] Rose Tshoganetso Khachana, Anne James, and Rahat Iqbal. Relaxationof ACID properties in AuTrA, the adaptive user-defined transaction re-laxing approach. Future Generation Computer Systems, 27(1):58–66,2011.

[17] J. Kienzle, E. Duala-Ekoko, and S. Gélineau. AspectOptima: A casestudy on aspect dependencies and interactions. In Transactions onAspect-Oriented Software Development V, pages 187–234. Springer,2009.

[18] Anakreon Mentis and Panagiotis Katsaros. Model checking and codegeneration for transaction processing software. Concurrency and Com-putation: Practice and Experience, 24(7):711–722, 2012.

96

Page 98: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Bibliography 75

[19] Dag Nyström, Aleksandra Tešanovic, Mikael Nolin, Christer Norström,and Jörgen Hansson. COMET: a component-based real-time databasefor automotive systems. In Proceedings of the Workshop on SoftwareEngineering for Automotive Systems, pages 1–8. IET, 2004.

[20] M. Rosenmüller, N. Siegmund, H. Schirmeier, J. Sincero, S. Apel, T. Le-ich, O. Spinczyk, and G. Saake. FAME-DBMS: tailor-made data man-agement solutions for embedded systems. In Proceedings of the 2008EDBT workshop on Software engineering for tailor-made data manage-ment, pages 1–6. ACM, 2008.

[21] Imre J Rudas, Endre Pap, and János Fodor. Information aggregationin intelligent systems: An application oriented approach. Knowledge-Based Systems, 38:3–13, 2013.

[22] Kaan Bur, Peter Omiyi, and Yang Yang. Wireless sensor and actuatornetworks: Enabling the nervous system of the active aircraft. Commu-nications Magazine, IEEE, 48(7):118–125, 2010.

[23] Gurulingesh R Goud, Neera Sharma, Krithi Ramamritham, and Sachi-tanand Malewar. Efficient real-time support for automotive applications:A case study. In Proceedings of the 12th IEEE International Confer-ence on Embedded and Real-Time Computing Systems and Applications,pages 335–341, 2006.

[24] Le-Nam Hoang, Elisabeth Uhlemann, and Magnus Jonsson. Relay-ing with packet aggregation for half-duplex all-to-all broadcast in time-critical wireless networks. In Proceedings of the 2017 IEEE GlobecomWorkshops (GC Wkshps), pages 1–6. IEEE, 2017.

[25] Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu.Specification and formal verification of atomic concurrent real-timetransactions. In Proceedings of the 23rd Pacific Rim InternationalSymposium on Dependable Computing (PRDC), pages 104–114. IEEE,2018.

[26] Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu.Specification and automated verification of atomic concurrent real-timetransactions. Technical report, 2019. Submitted to Software and Sys-tems Modeling (SoSym).

Bibliography 75

[19] Dag Nyström, Aleksandra Tešanovic, Mikael Nolin, Christer Norström,and Jörgen Hansson. COMET: a component-based real-time databasefor automotive systems. In Proceedings of the Workshop on SoftwareEngineering for Automotive Systems, pages 1–8. IET, 2004.

[20] M. Rosenmüller, N. Siegmund, H. Schirmeier, J. Sincero, S. Apel, T. Le-ich, O. Spinczyk, and G. Saake. FAME-DBMS: tailor-made data man-agement solutions for embedded systems. In Proceedings of the 2008EDBT workshop on Software engineering for tailor-made data manage-ment, pages 1–6. ACM, 2008.

[21] Imre J Rudas, Endre Pap, and János Fodor. Information aggregationin intelligent systems: An application oriented approach. Knowledge-Based Systems, 38:3–13, 2013.

[22] Kaan Bur, Peter Omiyi, and Yang Yang. Wireless sensor and actuatornetworks: Enabling the nervous system of the active aircraft. Commu-nications Magazine, IEEE, 48(7):118–125, 2010.

[23] Gurulingesh R Goud, Neera Sharma, Krithi Ramamritham, and Sachi-tanand Malewar. Efficient real-time support for automotive applications:A case study. In Proceedings of the 12th IEEE International Confer-ence on Embedded and Real-Time Computing Systems and Applications,pages 335–341, 2006.

[24] Le-Nam Hoang, Elisabeth Uhlemann, and Magnus Jonsson. Relay-ing with packet aggregation for half-duplex all-to-all broadcast in time-critical wireless networks. In Proceedings of the 2017 IEEE GlobecomWorkshops (GC Wkshps), pages 1–6. IEEE, 2017.

[25] Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu.Specification and formal verification of atomic concurrent real-timetransactions. In Proceedings of the 23rd Pacific Rim InternationalSymposium on Dependable Computing (PRDC), pages 104–114. IEEE,2018.

[26] Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu.Specification and automated verification of atomic concurrent real-timetransactions. Technical report, 2019. Submitted to Software and Sys-tems Modeling (SoSym).

97

Page 99: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

76 Bibliography

[27] Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu.Trading-off data consistency for timeliness in real-time database sys-tems. In Proceedings of the 27th Euromicro Conference on Real-TimeSystems, Work-in-Progress, pages 13–16, 2015.

[28] Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu.DAGGTAX: a taxonomy of data aggregation processes. In Proceed-ings of the International Conference on Model and Data Engineering,pages 324–339. Springer, 2017.

[29] Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu. Dataaggregation processes: a survey, a taxonomy, and design guidelines.Computing, pages 1–33, 2018.

[30] Simin Cai, Barbara Gallina, Dag Nyström, Cristina Seceleanu, and AlfLarsson. Tool-supported design of data aggregation processes in cloudmonitoring systems. Journal of Ambient Intelligence and HumanizedComputing, pages 1–17, 2018.

[31] Kim. G. Larsen, Paul. Pettersson, and Yi. Wang. UPPAAL in a nut-shell. International Journal on Software Tools for Technology Transfer,1(1):134–152, 1997.

[32] Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu. To-wards the verification of temporal data consistency in real-time datamanagement. In Modelling, Analysis, and Control of Complex CPS(CPS Data), 2016 2nd International Workshop on, pages 1–6. IEEE,2016.

[33] Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu. Aformal approach for flexible modeling and analysis of transaction timeli-ness and isolation. In Proceedings of the 24th International Conferenceon Real-Time Networks and Systems, pages 3–12. ACM, 2016.

[34] Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu. Sta-tistical model checking for real-time database management systems: acase study. In Proceedings of the 24th IEEE Conference on EmergingTechnologies and Factory Automation (ETFA). IEEE, 2019.

[35] Alexandre David, Kim G Larsen, Axel Legay, Marius Mikucionis, andDanny Bøgsted Poulsen. UPPAAL SMC tutorial. International Journalon Software Tools for Technology Transfer, 17(4):397–415, 2015.

76 Bibliography

[27] Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu.Trading-off data consistency for timeliness in real-time database sys-tems. In Proceedings of the 27th Euromicro Conference on Real-TimeSystems, Work-in-Progress, pages 13–16, 2015.

[28] Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu.DAGGTAX: a taxonomy of data aggregation processes. In Proceed-ings of the International Conference on Model and Data Engineering,pages 324–339. Springer, 2017.

[29] Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu. Dataaggregation processes: a survey, a taxonomy, and design guidelines.Computing, pages 1–33, 2018.

[30] Simin Cai, Barbara Gallina, Dag Nyström, Cristina Seceleanu, and AlfLarsson. Tool-supported design of data aggregation processes in cloudmonitoring systems. Journal of Ambient Intelligence and HumanizedComputing, pages 1–17, 2018.

[31] Kim. G. Larsen, Paul. Pettersson, and Yi. Wang. UPPAAL in a nut-shell. International Journal on Software Tools for Technology Transfer,1(1):134–152, 1997.

[32] Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu. To-wards the verification of temporal data consistency in real-time datamanagement. In Modelling, Analysis, and Control of Complex CPS(CPS Data), 2016 2nd International Workshop on, pages 1–6. IEEE,2016.

[33] Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu. Aformal approach for flexible modeling and analysis of transaction timeli-ness and isolation. In Proceedings of the 24th International Conferenceon Real-Time Networks and Systems, pages 3–12. ACM, 2016.

[34] Simin Cai, Barbara Gallina, Dag Nyström, and Cristina Seceleanu. Sta-tistical model checking for real-time database management systems: acase study. In Proceedings of the 24th IEEE Conference on EmergingTechnologies and Factory Automation (ETFA). IEEE, 2019.

[35] Alexandre David, Kim G Larsen, Axel Legay, Marius Mikucionis, andDanny Bøgsted Poulsen. UPPAAL SMC tutorial. International Journalon Software Tools for Technology Transfer, 17(4):397–415, 2015.

98

Page 100: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Bibliography 77

[36] Sten F Andler, Lars Niklasson, Björn Olsson, Anne Persson, Leo JDe Vin, Benkt Wangler, Tom Ziemke, and Tomas Planstedt. Informa-tion fusion from databases, sensors and simulations: A collaborativeresearch program. In Proceedings of the 29th Annual IEEE/NASA Soft-ware Engineering Workshop, pages 234–244, April 2005.

[37] Elena Fasolo, Michele Rossi, Jorg Widmer, and Michele Zorzi. In-network aggregation techniques for wireless sensor networks: a survey.Wireless Communications, IEEE, 14(2):70–87, 2007.

[38] José Luís Azevedo, Bernardo Cunha, and Luís Almeida. Hierarchicaldistributed architectures for autonomous mobile robots: A case study.In Proceedings of the 2007 IEEE Conference on Emerging Technologiesand Factory Automation, pages 973–980, Sept 2007.

[39] Tian He, Lin Gu, Liqian Luo, Ting Yan, John A Stankovic, andSang Hyuk Son. An overview of data aggregation architecture for real-time tracking with sensor networks. In Proceedings of the 20th Inter-national Parallel and Distributed Processing Symposium, pages 8 pp.–,2006.

[40] Krithi Ramamritham and Panos K. Chrysanthis. A taxonomy of correct-ness criteria in database applications. The International Journal on VeryLarge Data Bases, 5(1):085–097, January 1996.

[41] Hector Garcia-Molina. Using semantic knowledge for transaction pro-cessing in a distributed database. ACM Transactions on Database Sys-tems, 8(2):186–213, June 1983.

[42] Seth Gilbert and Nancy Lynch. Brewer’s conjecture and the feasibilityof consistent, available, partition-tolerant web services. ACM SIGACTNews, 33(2):51–59, June 2002.

[43] Daniel Abadi. Consistency tradeoffs in modern distributed database sys-tem design: CAP is only part of the story. Computer, 45(2):37–42, 2012.

[44] John Eliot Blakeslee Moss. NESTED TRANSACTIONS: AN AP-PROACH TO RELIABLE DISTRIBUTED COMPUTING. PhD thesis,Massachusetts Institute of Technology, USA, 1981.

[45] Hector Garcia-Molina and Kenneth Salem. Sagas. ACM SIGMODRecord, 16(3):249–259, December 1987.

Bibliography 77

[36] Sten F Andler, Lars Niklasson, Björn Olsson, Anne Persson, Leo JDe Vin, Benkt Wangler, Tom Ziemke, and Tomas Planstedt. Informa-tion fusion from databases, sensors and simulations: A collaborativeresearch program. In Proceedings of the 29th Annual IEEE/NASA Soft-ware Engineering Workshop, pages 234–244, April 2005.

[37] Elena Fasolo, Michele Rossi, Jorg Widmer, and Michele Zorzi. In-network aggregation techniques for wireless sensor networks: a survey.Wireless Communications, IEEE, 14(2):70–87, 2007.

[38] José Luís Azevedo, Bernardo Cunha, and Luís Almeida. Hierarchicaldistributed architectures for autonomous mobile robots: A case study.In Proceedings of the 2007 IEEE Conference on Emerging Technologiesand Factory Automation, pages 973–980, Sept 2007.

[39] Tian He, Lin Gu, Liqian Luo, Ting Yan, John A Stankovic, andSang Hyuk Son. An overview of data aggregation architecture for real-time tracking with sensor networks. In Proceedings of the 20th Inter-national Parallel and Distributed Processing Symposium, pages 8 pp.–,2006.

[40] Krithi Ramamritham and Panos K. Chrysanthis. A taxonomy of correct-ness criteria in database applications. The International Journal on VeryLarge Data Bases, 5(1):085–097, January 1996.

[41] Hector Garcia-Molina. Using semantic knowledge for transaction pro-cessing in a distributed database. ACM Transactions on Database Sys-tems, 8(2):186–213, June 1983.

[42] Seth Gilbert and Nancy Lynch. Brewer’s conjecture and the feasibilityof consistent, available, partition-tolerant web services. ACM SIGACTNews, 33(2):51–59, June 2002.

[43] Daniel Abadi. Consistency tradeoffs in modern distributed database sys-tem design: CAP is only part of the story. Computer, 45(2):37–42, 2012.

[44] John Eliot Blakeslee Moss. NESTED TRANSACTIONS: AN AP-PROACH TO RELIABLE DISTRIBUTED COMPUTING. PhD thesis,Massachusetts Institute of Technology, USA, 1981.

[45] Hector Garcia-Molina and Kenneth Salem. Sagas. ACM SIGMODRecord, 16(3):249–259, December 1987.

99

Page 101: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

78 Bibliography

[46] ISO/IEC 9075:1992 Database Language SQL. Standard, InternationalOrganization for Standardization. Accessed on: 2019/07/18.

[47] Hal Berenson, Phil Bernstein, Jim Gray, Jim Melton, Elizabeth O’Neil,and Patrick O’Neil. A critique of ANSI SQL isolation levels. ACMSIGMOD Record, 24(2):1–10, May 1995.

[48] Atul Adya, Barbara Liskov, and Patrick O’Neil. Generalized isolationlevel definitions. In Proceedings of the 16th IEEE International Confer-ence on Data Engineering, pages 67–78, 2000.

[49] Jim N Gray, Raymond A Lorie, Gianfranco R Putzolu, and Irving LTraiger. Readings in database systems. chapter Granularity of Locks andDegrees of Consistency in a Shared Data Base, pages 175–193. MorganKaufmann Publishers Inc., 1998.

[50] Jiamin Huang, Barzan Mozafari, and Thomas F Wenisch. Statisti-cal analysis of latency through semantic profiling. In Proceedings ofthe Twelfth European Conference on Computer Systems, pages 64–79.ACM, 2017.

[51] T-W Kuo and Aloysius K Mok. Application semantics and concurrencycontrol of real-time data-intensive applications. In Proceedings of the13th Real-Time Systems Symposium, pages 35–45, Dec 1992.

[52] Lisa B Cingiser DiPippo and Victor Fay Wolfe. Object-based semanticreal-time concurrency control. In Proceedings of the 14th Real-TimeSystems Symposium, pages 87–96, 1993.

[53] Surajit Chaudhuri and Gerhard Weikum. Rethinking database systemarchitecture: Towards a self-tuning RISC-style database system. InProceedings of the 26th International Conference on Very Large DataBases, pages 1–10, 2000.

[54] Clark W Barrett, Roberto Sebastiani, Sanjit A Seshia, and CesareTinelli. Satisfiability modulo theories. Handbook of Satisfiability,185:825–885, 2009.

[55] Leonardo De Moura and Nikolaj Bjørner. Z3: An efficient SMT solver.Tools and Algorithms for the Construction and Analysis of Systems,pages 337–340, 2008.

78 Bibliography

[46] ISO/IEC 9075:1992 Database Language SQL. Standard, InternationalOrganization for Standardization. Accessed on: 2019/07/18.

[47] Hal Berenson, Phil Bernstein, Jim Gray, Jim Melton, Elizabeth O’Neil,and Patrick O’Neil. A critique of ANSI SQL isolation levels. ACMSIGMOD Record, 24(2):1–10, May 1995.

[48] Atul Adya, Barbara Liskov, and Patrick O’Neil. Generalized isolationlevel definitions. In Proceedings of the 16th IEEE International Confer-ence on Data Engineering, pages 67–78, 2000.

[49] Jim N Gray, Raymond A Lorie, Gianfranco R Putzolu, and Irving LTraiger. Readings in database systems. chapter Granularity of Locks andDegrees of Consistency in a Shared Data Base, pages 175–193. MorganKaufmann Publishers Inc., 1998.

[50] Jiamin Huang, Barzan Mozafari, and Thomas F Wenisch. Statisti-cal analysis of latency through semantic profiling. In Proceedings ofthe Twelfth European Conference on Computer Systems, pages 64–79.ACM, 2017.

[51] T-W Kuo and Aloysius K Mok. Application semantics and concurrencycontrol of real-time data-intensive applications. In Proceedings of the13th Real-Time Systems Symposium, pages 35–45, Dec 1992.

[52] Lisa B Cingiser DiPippo and Victor Fay Wolfe. Object-based semanticreal-time concurrency control. In Proceedings of the 14th Real-TimeSystems Symposium, pages 87–96, 1993.

[53] Surajit Chaudhuri and Gerhard Weikum. Rethinking database systemarchitecture: Towards a self-tuning RISC-style database system. InProceedings of the 26th International Conference on Very Large DataBases, pages 1–10, 2000.

[54] Clark W Barrett, Roberto Sebastiani, Sanjit A Seshia, and CesareTinelli. Satisfiability modulo theories. Handbook of Satisfiability,185:825–885, 2009.

[55] Leonardo De Moura and Nikolaj Bjørner. Z3: An efficient SMT solver.Tools and Algorithms for the Construction and Analysis of Systems,pages 337–340, 2008.

100

Page 102: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Bibliography 79

[56] Edmund M. Clarke, Orna Grumberg, and Doron Peled. Model checking.MIT press, 1999.

[57] Rajeev Alur, Costas Courcoubetis, and David Dill. Model-checking indense real-time. Information and Computation, 104(1):2 – 34, 1993.

[58] Rajeev Alur and David L. Dill. A theory of timed automata. Theoreticalcomputer science, 126(2):183–235, 1994.

[59] Robin Milner. Communication and concurrency, volume 84. Prenticehall New York, 1989.

[60] Håkan LS Younes and Reid G Simmons. Probabilistic verification ofdiscrete event systems using acceptance sampling. In Proceedings of theInternational Conference on Computer Aided Verification, pages 223–235. Springer, 2002.

[61] Alexandre David, Kim G Larsen, Axel Legay, Marius Mikucionis,Danny Bøgsted Poulsen, Jonas Van Vliet, and Zheng Wang. Statisticalmodel checking for networks of priced timed automata. In Proceedingsof the International Conference on Formal Modeling and Analysis ofTimed Systems, pages 80–96. Springer, 2011.

[62] Peter Bulychev, Alexandre David, Kim G Larsen, Axel Legay,Guangyuan Li, and Danny Bøgsted Poulsen. Rewrite-based statisticalmodel checking of WMTL. In Proceedings of the International Confer-ence on Runtime Verification, pages 260–275. Springer, 2012.

[63] Hilary J. Holz, Anne Applin, Bruria Haberman, Donald Joyce, HelenPurchase, and Catherine Reed. Research methods in computing: Whatare they, and how should we teach them? ACM SIGCSE Bulletin,38(4):96–114, June 2006.

[64] Kyo C. Kang, Sholom G. Cohen, James A. Hess, William E. Novak,and A. Spencer Peterson. Feature-oriented domain analysis (FODA)feasibility study. Technical Report CMU/SEI-90-TR-021, Software En-gineering Institute, Carnegie Mellon University, USA, 1990.

[65] UML profile for marte specification version 1.1. Standard, Object Man-agement Group. Accessed on: 2019/07/18.

Bibliography 79

[56] Edmund M. Clarke, Orna Grumberg, and Doron Peled. Model checking.MIT press, 1999.

[57] Rajeev Alur, Costas Courcoubetis, and David Dill. Model-checking indense real-time. Information and Computation, 104(1):2 – 34, 1993.

[58] Rajeev Alur and David L. Dill. A theory of timed automata. Theoreticalcomputer science, 126(2):183–235, 1994.

[59] Robin Milner. Communication and concurrency, volume 84. Prenticehall New York, 1989.

[60] Håkan LS Younes and Reid G Simmons. Probabilistic verification ofdiscrete event systems using acceptance sampling. In Proceedings of theInternational Conference on Computer Aided Verification, pages 223–235. Springer, 2002.

[61] Alexandre David, Kim G Larsen, Axel Legay, Marius Mikucionis,Danny Bøgsted Poulsen, Jonas Van Vliet, and Zheng Wang. Statisticalmodel checking for networks of priced timed automata. In Proceedingsof the International Conference on Formal Modeling and Analysis ofTimed Systems, pages 80–96. Springer, 2011.

[62] Peter Bulychev, Alexandre David, Kim G Larsen, Axel Legay,Guangyuan Li, and Danny Bøgsted Poulsen. Rewrite-based statisticalmodel checking of WMTL. In Proceedings of the International Confer-ence on Runtime Verification, pages 260–275. Springer, 2012.

[63] Hilary J. Holz, Anne Applin, Bruria Haberman, Donald Joyce, HelenPurchase, and Catherine Reed. Research methods in computing: Whatare they, and how should we teach them? ACM SIGCSE Bulletin,38(4):96–114, June 2006.

[64] Kyo C. Kang, Sholom G. Cohen, James A. Hess, William E. Novak,and A. Spencer Peterson. Feature-oriented domain analysis (FODA)feasibility study. Technical Report CMU/SEI-90-TR-021, Software En-gineering Institute, Carnegie Mellon University, USA, 1990.

[65] UML profile for marte specification version 1.1. Standard, Object Man-agement Group. Accessed on: 2019/07/18.

101

Page 103: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

80 Bibliography

[66] Magnus Lindahl, Paul Pettersson, and Wang Yi. Formal design and anal-ysis of a gear controller. In Proceedings of the International Conferenceon Tools and Algorithms for the Construction and Analysis of Systems,pages 281–297. Springer, 1998.

[67] Carlo Vitucci and Alf Larsson. HAT, hardware assisted trace: Perfor-mance oriented trace & debug system. In Proceedings of 26th Interna-tional Conference on Software & Systems Engineering and their Appli-cations, 2015.

[68] T. Thüm, S. Schulze, M. Pukall, G. Saake, and S. Günther. Secure andcustomizable data management for automotive systems: A feasibilitystudy. ISRN Software Engineering, 2012.

[69] Andreas Wölfl. Data Management in Certified Avionics Systems. PhDthesis, Univerisity of Passau, Germany, 2018.

[70] Radko Mesiar, Anna Kolesárová, Tomasa Calvo, and Magda Ko-morníková. A review of aggregation functions. In Fuzzy Sets andTheir Extensions: Representation, Aggregation and Models, volume220, pages 121–144. Springer Berlin Heidelberg, 2008.

[71] Jean-Luc Marichal. Aggregation Functions for Decision Making, pages673–721. ISTE, 2010.

[72] Jim Gray, Surajit Chaudhuri, Adam Bosworth, Andrew Layman, DonReichart, Murali Venkatrao, Frank Pellow, and Hamid Pirahesh. Datacube: A relational aggregation operator generalizing group-by, cross-tab, and sub-totals. Data Mining and Knowledge Discovery, 1(1):29–53,1997.

[73] Samuel Madden, Michael J Franklin, Joseph M Hellerstein, and WeiHong. TAG: A tiny aggregation service for ad-hoc sensor networks.ACM SIGOPS Operating Systems Review, 36(SI):131–146, 2002.

[74] Ignacio Solis and Katia Obraczka. In-network aggregation trade-offsfor data collection in wireless sensor networks. International Journal ofSensor Networks, 1(3-4):200–212, 2006.

[75] Rafik Makhloufi, Guillaume Doyen, Grégory Bonnet, and DominiqueGaïti. A survey and performance evaluation of decentralized aggre-gation schemes for autonomic management. International Journal ofNetwork Management, 24(6):469–498, 2014.

80 Bibliography

[66] Magnus Lindahl, Paul Pettersson, and Wang Yi. Formal design and anal-ysis of a gear controller. In Proceedings of the International Conferenceon Tools and Algorithms for the Construction and Analysis of Systems,pages 281–297. Springer, 1998.

[67] Carlo Vitucci and Alf Larsson. HAT, hardware assisted trace: Perfor-mance oriented trace & debug system. In Proceedings of 26th Interna-tional Conference on Software & Systems Engineering and their Appli-cations, 2015.

[68] T. Thüm, S. Schulze, M. Pukall, G. Saake, and S. Günther. Secure andcustomizable data management for automotive systems: A feasibilitystudy. ISRN Software Engineering, 2012.

[69] Andreas Wölfl. Data Management in Certified Avionics Systems. PhDthesis, Univerisity of Passau, Germany, 2018.

[70] Radko Mesiar, Anna Kolesárová, Tomasa Calvo, and Magda Ko-morníková. A review of aggregation functions. In Fuzzy Sets andTheir Extensions: Representation, Aggregation and Models, volume220, pages 121–144. Springer Berlin Heidelberg, 2008.

[71] Jean-Luc Marichal. Aggregation Functions for Decision Making, pages673–721. ISTE, 2010.

[72] Jim Gray, Surajit Chaudhuri, Adam Bosworth, Andrew Layman, DonReichart, Murali Venkatrao, Frank Pellow, and Hamid Pirahesh. Datacube: A relational aggregation operator generalizing group-by, cross-tab, and sub-totals. Data Mining and Knowledge Discovery, 1(1):29–53,1997.

[73] Samuel Madden, Michael J Franklin, Joseph M Hellerstein, and WeiHong. TAG: A tiny aggregation service for ad-hoc sensor networks.ACM SIGOPS Operating Systems Review, 36(SI):131–146, 2002.

[74] Ignacio Solis and Katia Obraczka. In-network aggregation trade-offsfor data collection in wireless sensor networks. International Journal ofSensor Networks, 1(3-4):200–212, 2006.

[75] Rafik Makhloufi, Guillaume Doyen, Grégory Bonnet, and DominiqueGaïti. A survey and performance evaluation of decentralized aggre-gation schemes for autonomic management. International Journal ofNetwork Management, 24(6):469–498, 2014.

102

Page 104: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

Bibliography 81

[76] Ramesh Rajagopalan and Pramod K Varshney. Data-aggregation tech-niques in sensor networks: A survey. Communications Surveys Tutori-als, IEEE, 8(4):48–63, 2006.

[77] Hani Alzaid, Ernest Foo, Juan Manuel González Nieto, and DongGookPark. A taxonomy of secure data aggregation in wireless sensor net-works. International Journal of Communication Networks and Dis-tributed Systems, 8(1-2):101–148, 2012.

[78] Song Han, Kam-Yiu Lam, Jiantao Wang, Krithi Ramamritham, andAloysius K. Mok. On co-scheduling of update and control transactionsin real-time sensing and control systems: Algorithms, analysis, and per-formance. IEEE Transactions on Knowledge and Data Engineering,25(10):2325–2342, 2013.

[79] Enrico Bini. Minimizing end-to-end response time in transactions. InWorkshop on Compositional Theory and Technology for Real-Time Em-bedded Systems, pages 1–8. IEEE, 2008.

[80] Afshin Amighi, Stefan Blom, and Marieke Huisman. Vercors: A layeredapproach to practical verification of concurrent software. In Proceedingsof the 24th Euromicro International Conference on Parallel, Distributed,and Network-Based Processing (PDP), pages 495–503. IEEE, 2016.

[81] Andrea Cerone, Giovanni Bernardi, and Alexey Gotsman. A frame-work for transactional consistency models with atomic visibility. InProceedings of the 26th International Conference on Concurrency The-ory, volume 42, pages 58–71. Schloss Dagstuhl–Leibniz-Zentrum fuerInformatik, 2015.

[82] Laura Bocchi and Hernán Melgratti. On the behaviour of general pur-pose applications on cloud storages. Service Oriented Computing andApplications, 9(3):213–227, 2015.

[83] Natallia Kokash and Farhad Arbab. Formal design and verificationof long-running transactions with extensible coordination tools. IEEETransactions on Services Computing, 6(2):186–200, April 2013.

[84] Jon Grov and Peter Csaba Ölveczky. Increasing Consistency in Multi-site Data Stores: Megastore-CGC and Its Formal Analysis, pages 159–174. Springer International Publishing, 2014.

Bibliography 81

[76] Ramesh Rajagopalan and Pramod K Varshney. Data-aggregation tech-niques in sensor networks: A survey. Communications Surveys Tutori-als, IEEE, 8(4):48–63, 2006.

[77] Hani Alzaid, Ernest Foo, Juan Manuel González Nieto, and DongGookPark. A taxonomy of secure data aggregation in wireless sensor net-works. International Journal of Communication Networks and Dis-tributed Systems, 8(1-2):101–148, 2012.

[78] Song Han, Kam-Yiu Lam, Jiantao Wang, Krithi Ramamritham, andAloysius K. Mok. On co-scheduling of update and control transactionsin real-time sensing and control systems: Algorithms, analysis, and per-formance. IEEE Transactions on Knowledge and Data Engineering,25(10):2325–2342, 2013.

[79] Enrico Bini. Minimizing end-to-end response time in transactions. InWorkshop on Compositional Theory and Technology for Real-Time Em-bedded Systems, pages 1–8. IEEE, 2008.

[80] Afshin Amighi, Stefan Blom, and Marieke Huisman. Vercors: A layeredapproach to practical verification of concurrent software. In Proceedingsof the 24th Euromicro International Conference on Parallel, Distributed,and Network-Based Processing (PDP), pages 495–503. IEEE, 2016.

[81] Andrea Cerone, Giovanni Bernardi, and Alexey Gotsman. A frame-work for transactional consistency models with atomic visibility. InProceedings of the 26th International Conference on Concurrency The-ory, volume 42, pages 58–71. Schloss Dagstuhl–Leibniz-Zentrum fuerInformatik, 2015.

[82] Laura Bocchi and Hernán Melgratti. On the behaviour of general pur-pose applications on cloud storages. Service Oriented Computing andApplications, 9(3):213–227, 2015.

[83] Natallia Kokash and Farhad Arbab. Formal design and verificationof long-running transactions with extensible coordination tools. IEEETransactions on Services Computing, 6(2):186–200, April 2013.

[84] Jon Grov and Peter Csaba Ölveczky. Increasing Consistency in Multi-site Data Stores: Megastore-CGC and Its Formal Analysis, pages 159–174. Springer International Publishing, 2014.

103

Page 105: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

82 Bibliography

[85] Si Liu, Peter Csaba Ölveczky, Muntasir Raihan Rahman, Jatin Ganhotra,Indranil Gupta, and José Meseguer. Formal modeling and analysis ofRAMP transaction systems. In Proceedings of the 31st Annual ACMSymposium on Applied Computing, SAC ’16, pages 1700–1707. ACM,2016.

[86] Raghuraj Suryavanshi and Divakar Yadav. Modeling of multiversionconcurrency control system using Event-B. In Proceedings of the 2012Federated Conference on Computer Science and Information Systems,pages 1397–1401, Sept 2012.

[87] Markus Kirchberg. Using abstract state machines to model ARIES-based transaction processing. Journal of Universal Computer Science,pages 157–194, 2009.

[88] Achraf Makni, Rafik Bouaziz, and Faiez Gargouri. Formal verificationof an optimistic concurrency control algorithm using SPIN. In Proceed-ings of the 13th International Symposium on Temporal Representationand Reasoning, pages 160–167, June 2006.

[89] Walid Gaaloul, Mohsen Rouached, Claude Godart Godart, and ManfredHauswirth. Verifying Composite Service Transactional Behavior UsingEvent Calculus, pages 353–370. Springer Berlin Heidelberg, 2007.

[90] Scott Stanier Bourne. Formal Verification of Transactional and Con-figurable Service-Oriented Processes. PhD thesis, UNIVERSITY OFADELAIDE, Australia, 2016.

[91] Ruggero Lanotte, Andrea Maggiolo-Schettini, Paolo Milazzo, and An-gelo Troina. Modeling long-running transactions with communicatinghierarchical timed automata. In Formal Methods for Open Object-BasedDistributed Systems, volume 4037 of Lecture Notes in Computer Sci-ence, pages 108–122. Springer Berlin Heidelberg, 2006.

[92] Martin Kot. Modeling selected real-time database concurrency controlprotocols in UPPAAL. Innovations in Systems and Software Engineer-ing, 5(2):129–138, 2009.

[93] Si Liu, Peter Csaba Ölveczky, Keshav Santhanam, Qi Wang, IndranilGupta, and José Meseguer. ROLA: A new distributed transaction proto-col and its formal analysis. In Proceedings of the 21st International Con-ference on Fundamental Approaches to Software Engineering, pages77–93, 2018.

82 Bibliography

[85] Si Liu, Peter Csaba Ölveczky, Muntasir Raihan Rahman, Jatin Ganhotra,Indranil Gupta, and José Meseguer. Formal modeling and analysis ofRAMP transaction systems. In Proceedings of the 31st Annual ACMSymposium on Applied Computing, SAC ’16, pages 1700–1707. ACM,2016.

[86] Raghuraj Suryavanshi and Divakar Yadav. Modeling of multiversionconcurrency control system using Event-B. In Proceedings of the 2012Federated Conference on Computer Science and Information Systems,pages 1397–1401, Sept 2012.

[87] Markus Kirchberg. Using abstract state machines to model ARIES-based transaction processing. Journal of Universal Computer Science,pages 157–194, 2009.

[88] Achraf Makni, Rafik Bouaziz, and Faiez Gargouri. Formal verificationof an optimistic concurrency control algorithm using SPIN. In Proceed-ings of the 13th International Symposium on Temporal Representationand Reasoning, pages 160–167, June 2006.

[89] Walid Gaaloul, Mohsen Rouached, Claude Godart Godart, and ManfredHauswirth. Verifying Composite Service Transactional Behavior UsingEvent Calculus, pages 353–370. Springer Berlin Heidelberg, 2007.

[90] Scott Stanier Bourne. Formal Verification of Transactional and Con-figurable Service-Oriented Processes. PhD thesis, UNIVERSITY OFADELAIDE, Australia, 2016.

[91] Ruggero Lanotte, Andrea Maggiolo-Schettini, Paolo Milazzo, and An-gelo Troina. Modeling long-running transactions with communicatinghierarchical timed automata. In Formal Methods for Open Object-BasedDistributed Systems, volume 4037 of Lecture Notes in Computer Sci-ence, pages 108–122. Springer Berlin Heidelberg, 2006.

[92] Martin Kot. Modeling selected real-time database concurrency controlprotocols in UPPAAL. Innovations in Systems and Software Engineer-ing, 5(2):129–138, 2009.

[93] Si Liu, Peter Csaba Ölveczky, Keshav Santhanam, Qi Wang, IndranilGupta, and José Meseguer. ROLA: A new distributed transaction proto-col and its formal analysis. In Proceedings of the 21st International Con-ference on Fundamental Approaches to Software Engineering, pages77–93, 2018.

104

Page 106: Simin Cai Real-Time Database Systems1351297/FULLTEXT01.pdfSeceleanu. Proceedings of the 24th IEEE Conference on Emerging Technolo-gies and Factory Automation (ETFA) . IEEE, 2019. Papers

[94] Panos K Chrysanthis and Krithi Ramamritham. Synthesis of extendedtransaction models using ACTA. ACM Transactions on Database Sys-tems, 19(3):450–491, 1994.

[95] Ming Xiong and Krithi Ramamritham. Specification and analysis oftransactions in real-time active databases. In Real-Time Database andInformation Systems: Research Advances, volume 420, pages 327–351.Springer US, 1997.

[96] Andreas Geppert. Methodical construction of database managementsystems. PhD thesis, University of Zuerich, Switzerland, 1994.

[97] Iluju Kiringa. Simulation of advanced transaction models usingGOLOG. In Database Programming Languages, volume 2397, pages318–341. Springer Berlin Heidelberg, 2002.

[98] Barbara Gallina and Nicolas Guelfi. SPLACID: An SPL-oriented,ACTA-based, language for reusing (varying) ACID properties. In Pro-ceedings of the 32nd Annual IEEE Software Engineering Workshop,pages 115–124, 2008.

[99] Mehdi Nobakht and Dragos Truscan. An approach for validation, ver-ification, and model-based testing of uml-based real-time systems. InProceedings of the the Eighth International Conference on Software En-gineering Advances (ICSEA 2013), pages 79–85, 2013.

[100] K Rustan M Leino. Dafny: An automatic program verifier for functionalcorrectness. In Proceedings of the International Conference on Logicfor Programming Artificial Intelligence and Reasoning, pages 348–370.Springer, 2010.

[101] Sebastiaan Joosten and Marieke Huisman. Static code verificationthrough process models. In Proceedings of the International Sympo-sium on Leveraging Applications of Formal Methods, pages 343–354.Springer, 2018.

[94] Panos K Chrysanthis and Krithi Ramamritham. Synthesis of extendedtransaction models using ACTA. ACM Transactions on Database Sys-tems, 19(3):450–491, 1994.

[95] Ming Xiong and Krithi Ramamritham. Specification and analysis oftransactions in real-time active databases. In Real-Time Database andInformation Systems: Research Advances, volume 420, pages 327–351.Springer US, 1997.

[96] Andreas Geppert. Methodical construction of database managementsystems. PhD thesis, University of Zuerich, Switzerland, 1994.

[97] Iluju Kiringa. Simulation of advanced transaction models usingGOLOG. In Database Programming Languages, volume 2397, pages318–341. Springer Berlin Heidelberg, 2002.

[98] Barbara Gallina and Nicolas Guelfi. SPLACID: An SPL-oriented,ACTA-based, language for reusing (varying) ACID properties. In Pro-ceedings of the 32nd Annual IEEE Software Engineering Workshop,pages 115–124, 2008.

[99] Mehdi Nobakht and Dragos Truscan. An approach for validation, ver-ification, and model-based testing of uml-based real-time systems. InProceedings of the the Eighth International Conference on Software En-gineering Advances (ICSEA 2013), pages 79–85, 2013.

[100] K Rustan M Leino. Dafny: An automatic program verifier for functionalcorrectness. In Proceedings of the International Conference on Logicfor Programming Artificial Intelligence and Reasoning, pages 348–370.Springer, 2010.

[101] Sebastiaan Joosten and Marieke Huisman. Static code verificationthrough process models. In Proceedings of the International Sympo-sium on Leveraging Applications of Formal Methods, pages 343–354.Springer, 2018.

105