Incremental integrity checking of UML/OCL conceptual schemas

被引:47
|
作者
Cabot, Jordi [1 ,2 ]
Teniente, Ernest [3 ]
机构
[1] Open Univ Catalonia, E-08018 Barcelona, Catalonia, Spain
[2] Univ Toronto, Toronto, ON M5S 3G4, Canada
[3] Tech Univ Catalonia, E-08034 Barcelona, Catalonia, Spain
关键词
Model-driven development; Efficient constraint checking; Incremental; Runtime checking; UML; OCL; INFORMATION-SYSTEMS; SPECIFICATION;
D O I
10.1016/j.jss.2009.03.009
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Integrity constraints play a key role in the specification and development of software systems since they state conditions that must always be satisfied by the system at runtime. Therefore, software systems must include some kind of integrity checking component that ensures that all constraints still hold after the execution of any operation that modifies the system state. Integrity checking must be as efficient as possible not to seriously slow down the system performance at runtime. In this sense, this paper proposes a set of techniques to facilitate the efficient integrity checking of UML-based software specifications, usually complemented with a set of integrity constraints defined in Object Constraint Language (OCL) to express all rules that cannot be graphically defined. In particular, our techniques are able to determine, at design-time. when and how each constraint must be checked at runtime to avoid irrelevant verifications. We refer to these techniques as incremental because they minimize the subset of the system state that needs to be checked after each change by assuming that the system was initially in a consistent state and just reevaluating the elements that may have been affected by that change. We also show how the techniques can be integrated in a model-driven development framework to automatically generate a final implementation that automatically checks all constraints in an incremental way. (C) 2009 Elsevier Inc. All rights reserved.
引用
收藏
页码:1459 / 1478
页数:20
相关论文
共 50 条
  • [1] OCL-Lite: Finite reasoning on UML/OCL conceptual schemas
    Queralt, Anna
    Artale, Alessandro
    Calvanese, Diego
    Teniente, Ernest
    DATA & KNOWLEDGE ENGINEERING, 2012, 73 : 1 - 22
  • [2] AuRUS: explaining the validation of UML/OCL conceptual schemas
    Rull, Guillem
    Farre, Carles
    Queralt, Anna
    Teniente, Ernest
    Urp, Toni
    SOFTWARE AND SYSTEMS MODELING, 2015, 14 (02): : 953 - 980
  • [3] Verification and Validation of UML Conceptual Schemas with OCL Constraints
    Queralt, Anna
    Teniente, Ernest
    ACM TRANSACTIONS ON SOFTWARE ENGINEERING AND METHODOLOGY, 2012, 21 (02)
  • [4] AuRUS: explaining the validation of UML/OCL conceptual schemas
    Guillem Rull
    Carles Farré
    Anna Queralt
    Ernest Teniente
    Toni Urpí
    Software & Systems Modeling, 2015, 14 : 953 - 980
  • [5] Computing repairs for constraint violations in UML/OCL conceptual schemas
    Oriol, Xavier
    Teniente, Ernest
    Tort, Albert
    DATA & KNOWLEDGE ENGINEERING, 2015, 99 : 39 - 58
  • [6] OCLUNIV: Expressive UML/OCL Conceptual Schemas for Finite Reasoning
    Oriol, Xavier
    Teniente, Ernest
    CONCEPTUAL MODELING, ER 2017, 2017, 10650 : 354 - 369
  • [7] Fixing Up Non-executable Operations in UML/OCL Conceptual Schemas
    Oriol, Xavier
    Teniente, Ernest
    Tort, Albert
    CONCEPTUAL MODELING, 2014, 8824 : 232 - 245
  • [8] AuRUS: Automated Reasoning on UML/OCL Schemas
    Queralt, Anna
    Rull, Guillem
    Teniente, Ernest
    Farre, Carles
    Urpi, Toni
    CONCEPTUAL MODELING - ER 2010, 2010, 6412 : 438 - 444
  • [9] Simplification of UML/OCL schemas for efficient reasoning
    Oriol, Xavier
    Teniente, Ernest
    JOURNAL OF SYSTEMS AND SOFTWARE, 2017, 128 : 130 - 149
  • [10] Incremental Verification of UML/OCL Models
    Clariso, Robert
    Gonzalez, Carlos A.
    Cabot, Jordi
    JOURNAL OF OBJECT TECHNOLOGY, 2020, 19 (03): : 1 - 16