Verifying Equivalence of Database-Driven Applications

被引:16
|
作者
Wang, Yuepeng [1 ]
Dillig, Isil [1 ]
Lahiri, Shuvendu K. [2 ]
Cook, William R. [1 ]
机构
[1] Univ Texas Austin, Austin, TX 78712 USA
[2] Microsoft Res, Redmond, WA USA
关键词
Program Verification; Equivalence Checking; Relational Databases;
D O I
10.1145/3158144
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
This paper addresses the problem of verifying equivalence between a pair of programs that operate over databases with different schemas. This problem is particularly important in the context of web applications, which typically undergo database refactoring either for performance or maintainability reasons. While web applications should have the same externally observable behavior before and after schema migration, there are no existing tools for proving equivalence of such programs. This paper takes a first step towards solving this problem by formalizing the equivalence and refinement checking problems for database-driven applications. We also propose a proof methodology based on the notion of bisimulation invariants over relational algebra with updates and describe a technique for synthesizing such bisimulation invariants. We have implemented the proposed technique in a tool called MEDIATOR for verifying equivalence between database-driven applications written in our intermediate language and evaluate our tool on 21 benchmarks extracted from textbooks and real-world web applications. Our results show that the proposed methodology can successfully verify 20 of these benchmarks.
引用
收藏
页数:29
相关论文
共 50 条
  • [1] UTCache: Updatable Transactional Cache For Database-Driven Applications
    Zhang, Xiaodong
    Zhou, Jing
    [J]. 2022 29TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE, APSEC, 2022, : 41 - 50
  • [2] Just-in-time Database-Driven Web Applications
    Ong, Kenneth R.
    [J]. JOURNAL OF MEDICAL INTERNET RESEARCH, 2003, 5 (03)
  • [3] Just-in-time database-driven web applications
    Ong, KR
    [J]. CBMS 2003: 16TH IEEE SYMPOSIUM ON COMPUTER-BASED MEDICAL SYSTEMS, PROCEEDINGS, 2003, : 28 - 34
  • [4] Database-driven Web sites
    Fourie, I
    [J]. ONLINE INFORMATION REVIEW, 2003, 27 (06) : 453 - 454
  • [5] SQL statement template: A development approach for database-driven applications
    Khaled, OM
    Hosny, HM
    [J]. PROCEEDINGS OF THE 2004 IEEE INTERNATIONAL CONFERENCE ON INFORMATION REUSE AND INTEGRATION (IRI-2004), 2004, : 12 - 17
  • [6] A safe regression test selection technique for database-driven applications
    Willmor, D
    Embury, SM
    [J]. ICSM 2005: PROCEEDINGS OF THE 21ST IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, 2005, : 421 - 430
  • [7] Database-driven web sites
    Blomkamp, Yvonne
    [J]. SOUTH AFRICAN JOURNAL OF LIBRARIES AND INFORMATION SCIENCE, 2006, 72 (02) : 141 - 142
  • [8] A database-driven network of cytometers
    Potts, SJ
    Kantor, AB
    Heller, JC
    [J]. CYTOMETRY, 2002, : 136 - 136
  • [9] Database-driven websites.
    Bunnett, B
    [J]. JOURNAL OF THE MEDICAL LIBRARY ASSOCIATION, 2003, 91 (04) : 494 - 495
  • [10] Intelligent Database-Driven Reverse Dictionary
    Rajan, Soumya
    Soumya, Kumary R.
    [J]. PROCEEDINGS OF 2ND IEEE INTERNATIONAL CONFERENCE ON ENGINEERING & TECHNOLOGY ICETECH-2016, 2016, : 448 - 451