## Consistency Checking of Conceptual Models via Model Merging (2007)

Venue: | In RE |

Citations: | 25 - 8 self |

### BibTeX

@INPROCEEDINGS{Sabetzadeh07consistencychecking,

author = {Mehrdad Sabetzadeh and Shiva Nejati and Sotirios Liaskos and Steve Easterbrook and Marsha Chechik},

title = {Consistency Checking of Conceptual Models via Model Merging},

booktitle = {In RE},

year = {2007},

pages = {221--230}

}

### OpenURL

### Abstract

Requirements elicitation involves the construction of large sets of conceptual models. An important step in the analysis of these models is checking their consistency. Existing research largely focuses on checking consistency of individual models and of relationships between pairs of models. However, such strategy does not guarantee global consistency. In this paper, we propose a consistency checking approach that addresses this problem for homogeneous models. Given a set of models and a set of relationships between them, our approach works by first constructing a merged model and then verifying this model against the consistency constraints of interest. By keeping proper traceability information, consistency diagnostics obtained over the merge are projected back to the original models and their relationships. The paper also presents a set of reusable expressions for defining consistency constraints in conceptual modelling. We demonstrate the use of the developed expressions in the specification of consistency rules for class and ER diagrams, and i ∗ goal models. 1

### Citations

3132 | Graph-based algorithms for Boolean function manipulation
- Bryant
- 1986
(Show Context)
Citation Context ...L particularly appealing: (1) RML’s domainindependent and easy-to-use syntax and (2) its efficient interpreter, CrocoPat [2]. CrocoPat encodes relational predicates as Binary Decision Diagrams (BDDs) =-=[3]-=- which are compact data structures for representing and manipulating relations. The use of BDDs makes CrocoPat highly scalable in terms of both time and memory. RML has an imperative style of executio... |

377 |
Handbook of Graph Grammars and Computing by Graph Transformation, Volume 1: Foundations. World Scientific
- Rozenberg, editor
- 1997
(Show Context)
Citation Context ...eneral notion of graph adopted from algebraic approaches to graph-based modelling. This notion captures various formalisms including class and ER diagrams, goal models, state machines, and Petri Nets =-=[22]-=-. Definition (graph) A (directed) graph is a tuple G = (N, E, SrcG, Tgt G) where N is a set of nodes, E is a set of edges, and SrcG, Tgt G : E → N are functions respectively giving the source and the ... |

332 | Patterns in property specifications for finite-state verification
- Dwyer, Avrunin, et al.
- 1999
(Show Context)
Citation Context ... pairwise to global consistency checking. 6 Related Work Generic constraint expressions. Developing generic expressions for describing correctness properties of models is not a new idea. For example, =-=[5]-=- provides templates for capturing temporal properties of systems. However, these templates are specifically for behavioural models, and are inapplicable to non-behavioural ones such as class diagrams.... |

330 |
Software Abstractions: Logic, Language and Analysis
- Jackson
- 2006
(Show Context)
Citation Context .... the Dresden OCL toolkit [13]. Despite their merits, these tools are not suited to conceptual modelling because of OCL’s strong orientation toward implementation [29]. We have considered using Alloy =-=[14]-=- instead of RML for expressing constraints. While Alloy provides the full expressive power of first-order logic with transitive closure and counting, we chose RML primarily for two reasons: (1) its le... |

317 | A framework for expressing the relationships between multiple views in requirements specification
- Nuseibeh, Kramer, et al.
- 1994
(Show Context)
Citation Context ...pic in view-based requirements engineering [10]. In this domain, the term “inconsistency” usually refers to a situation where a pair of models do not obey a relationship that should hold between them =-=[19]-=-. This definition is restrictive in that it makes inconsistency a pairwise notion; however, it has the advantage of being easily applicable to heterogeneous models. Our work, in contrast, treats incon... |

310 | Modeling and Reasoning Support for Early-Phase Requirements Engineering
- Yu
- 1997
(Show Context)
Citation Context ...ss the constraints of different modelling notations. We demonstrate the usefulness of these expressions for describing constraints over class and EntityRelationship (ER) diagrams, and i ∗ goal models =-=[31]-=-. This paper is organized as follows: Section 2 provides background information. Section 3 discusses our generic expressions for specifying consistency rules and illustrates their use. Section 4 prese... |

211 |
Elements of Finite Model Theory
- Libkin
- 2004
(Show Context)
Citation Context ...istency checking of views use standard first-order logic for writing consistency rules [10, 7]. The expressiveness of these approaches is limited because first-order logic cannot capture reachability =-=[16]-=- and lacks convenient means for describing multiplicities. Recent work on consistency checking of views addresses these limitations by using more expressive logics. For example, xlinkit [17] employs X... |

204 | Inconsistency handling in multi-perspective specifications
- Finkelstein, Gabbay, et al.
- 1993
(Show Context)
Citation Context ...blem in conceptual modelling is checking compliance with such constraints and generating proper feedback if a violation occurs. This problem is usually studied under the topic of consistency checking =-=[10, 18]-=-. Consistency is a very broad term and may have different interpretations in different contexts. In this paper, we concentrate on consistency from a structural perspective, using the M1 Widget Canvas ... |

141 | Managing Conflicts in Goal-Driven Requirements Engineering
- Lamsweerde, Darimont, et al.
- 1998
(Show Context)
Citation Context ...ise consistency). These techniques do not fully address the problem of consistency checking in distributed development because they do not provide a method for verifying global consistency properties =-=[28, 18]-=-. For example, Fig. 2 shows three models, M1, M2, M3, related by three mappings, R1, R2, R3. Each model and each mapping, when taken individually, satisfies the acyclic inheritance constraint. However... |

108 |
Graph Processes
- Corradini, Montanari, et al.
- 1996
(Show Context)
Citation Context ...c., we attach to every element a set of (Property, value) tuples. Graph-based models typically have typed elements. A standard way for assigning types is to parameterize models with a metamodel graph =-=[4]-=-. Assuming that the metamodel for the chosen modelling language is given by a graph M, every model G = (N, E, SrcG, Tgt G) is equipped with a type function t : G → M, mapping each element of G to an e... |

107 | View Integration: A Step Forward in Solving Structural Conflicts - Spaccapietra, Parent - 1994 |

106 | Using Viewpoints for Inconsistency Management
- Easterbrook, Nuseibeh
- 1996
(Show Context)
Citation Context ...s. We now show how this generalizes to distributed models. A common approach for extending consistency checks to distributed models is to write consistency rules for the mappings between models (e.g. =-=[7, 17]-=-). For example, if we have a mapping R that equates elements of two models M1 and M2, we may wish to check that the mapping does not introduce cycles. This can be achieved by checking that each model ... |

78 | A Framework for Multi-Valued Reasoning over Inconsistent Viewpoints
- Easterbrook, Chechik
- 2001
(Show Context)
Citation Context ...k, which is consistency checking of arbitrary and unknown configurations of models and mappings. The idea of consistency checking via merge was first explored in prior work by Easterbrook and Chechik =-=[6]-=-. The work uses temporal logic model checking to reason about behavioural properties of state machine models when they are merged. This earlier work is not applicable to structural models, because tem... |

73 |
Modular architecture for a toolset supporting OCL
- Hussmann, Demuth, et al.
- 1939
(Show Context)
Citation Context ...For UML models, consistency rules are usually described in the Object Constraint Language (OCL) [20]. Several tools exist for checking UML models against OCL expressions, e.g. the Dresden OCL toolkit =-=[13]-=-. Despite their merits, these tools are not suited to conceptual modelling because of OCL’s strong orientation toward implementation [29]. We have considered using Alloy [14] instead of RML for expres... |

50 | Efficient relational calculation for software analysis
- Beyer, Noack, et al.
(Show Context)
Citation Context ...the main structural constraints of conceptual models, and yet is tractable enough to be applicable to large modelling problems. In our work, we use a highly optimized relational interpreter, CrocoPat =-=[2]-=-, that implements a variant of this logic. To simplify the specification of consistency rules, we develop a set of generic and reusable expressions capturing recurrent patterns across the constraints ... |

48 | Flexible consistency checking
- Nentwich, Emmerich, et al.
(Show Context)
Citation Context ...ject R3 UIContext R2 Fig. 2. Global inconsistency. Container M3 Panel checking technique that can simultaneously use information from multiple models and mappings. Existing approaches such as xlinkit =-=[17]-=- work well for pairwise checking. However, since these approaches do not clearly separate consistency rules from model mappings, it becomes very difficult to generalize the rules beyond pairwise check... |

46 | Some Shortcomings of OCL, the Object Constraint Language of UML
- Vaziri, Jackson
(Show Context)
Citation Context ...L models against OCL expressions, e.g. the Dresden OCL toolkit [13]. Despite their merits, these tools are not suited to conceptual modelling because of OCL’s strong orientation toward implementation =-=[29]-=-. We have considered using Alloy [14] instead of RML for expressing constraints. While Alloy provides the full expressive power of first-order logic with transitive closure and counting, we chose RML ... |

42 | Making Inconsistency Respectable in Software Development
- Nuseibeh, Easterbrook, et al.
- 2001
(Show Context)
Citation Context ...blem in conceptual modelling is checking compliance with such constraints and generating proper feedback if a violation occurs. This problem is usually studied under the topic of consistency checking =-=[10, 18]-=-. Consistency is a very broad term and may have different interpretations in different contexts. In this paper, we concentrate on consistency from a structural perspective, using the M1 Widget Canvas ... |

33 | View merging in the presence of incompleteness and inconsistency
- Sabetzadeh, Easterbrook
(Show Context)
Citation Context ...his approach requires a merge operator that is well-defined for any system of interrelated models even when they are incomplete or inconsistent. We developed such a merge operator in our earlier work =-=[23]-=- for graphical modelling notations. We use this operator as a basis for the consistency checking approach presented here. For example, rather than trying to check the acyclic inheritance constraint on... |

23 | Reasoning about inconsistencies in natural language requirements
- Gervasi, Zowghi
- 2005
(Show Context)
Citation Context ...sSeveral approaches to consistency checking of requirements work by consolidating different stakeholders’ descriptions into a unified knowledge base and checking its overall consistency. For example, =-=[11]-=- translates textual requirements into a knowledge base of logical statements and finds inconsistencies by applying theorem proving and model checking. These approaches can reason about global consiste... |

20 | Heterogenous View Integration and Its Automation
- Egyed
- 2000
(Show Context)
Citation Context ...reM implements interface class * * 0..1 * 0..1 * extends extends Fig. 8. Example of multiplicity annotations. curring patterns that we observed in the consistency constraints of class diagrams, e.g. =-=[26, 9]-=-, goal models [12, 15], and database schemata [24]. Table 1 shows a list of representative consistency constraints for the studied notations. Some of these constraints (e.g., C1, C4, and C6) capture f... |

17 | R A Qadir. Do viewpoints lead to better conceptual models? An exploratory case study
- Easterbrook, Yu, et al.
- 2005
(Show Context)
Citation Context ...70 elements; however, there were remarkable discrepancies in the way the models were structured. Other studies suggest that such discrepancies are quite common when models are developed independently =-=[25, 8]-=-. The ultimate goals of our study were: (1) to construct a coherent set of mappings to express the overlaps between the studied models; and (2) to systematically explore how these models differed from... |

14 |
Using i* Models for Evaluation
- Horkoff
- 2006
(Show Context)
Citation Context ...face class * * 0..1 * 0..1 * extends extends Fig. 8. Example of multiplicity annotations. curring patterns that we observed in the consistency constraints of class diagrams, e.g. [26, 9], goal models =-=[12, 15]-=-, and database schemata [24]. Table 1 shows a list of representative consistency constraints for the studied notations. Some of these constraints (e.g., C1, C4, and C6) capture fundamental wellformedn... |

13 | Metamodel-based model conformance and multiview consistency checking
- Paige, Brooke, et al.
(Show Context)
Citation Context ...mitations by using more expressive logics. For example, xlinkit [17] employs XPath –a query language for XML– augmented with a transitive closure operator for describing consistency rules. Similarly, =-=[21]-=- explores the use of theorem-proving and object-oriented programming to provide a rich platform for constraint specification. These approaches indeed offer sufficient expressive power to cover a wide ... |

11 | Concept identification in object-oriented domain analysis: Why some students just don”t get it
- Svetinovic, Berry, et al.
- 2005
(Show Context)
Citation Context ...70 elements; however, there were remarkable discrepancies in the way the models were structured. Other studies suggest that such discrepancies are quite common when models are developed independently =-=[25, 8]-=-. The ultimate goals of our study were: (1) to construct a coherent set of mappings to express the overlaps between the studied models; and (2) to systematically explore how these models differed from... |

5 | CrocoPat 2.1 Introduction and Reference Manual," Computer Science Division (EECS), University of California, Berkeley [36
- Beyer, Noack
- 2005
(Show Context)
Citation Context ...has an imperative style of execution and runs programs statement by statement. A A partial and slightly simplified grammar of the language is shown in Fig. 5. The complete B C grammar can be found in =-=[1]-=-. For example, consider the graph shown at right, and assume D that the relation E(x,y) denotes “there is an edge from x to y”. To check if there exists a node without any outgoing edges, we use the e... |

2 | Model-driven constraint engineering
- Wahler, Koehler, et al.
- 2006
(Show Context)
Citation Context ...poral properties of systems. However, these templates are specifically for behavioural models, and are inapplicable to non-behavioural ones such as class diagrams. The closest work to ours is that of =-=[30]-=-, which describes a set of constraint patterns for UML models. However, this work lacks generality and only considers the family of UML notations. In contrast, our work applies to a wider class of not... |

1 |
Quality criteria for variability modelling
- Liaskos
- 2007
(Show Context)
Citation Context ...face class * * 0..1 * 0..1 * extends extends Fig. 8. Example of multiplicity annotations. curring patterns that we observed in the consistency constraints of class diagrams, e.g. [26, 9], goal models =-=[12, 15]-=-, and database schemata [24]. Table 1 shows a list of representative consistency constraints for the studied notations. Some of these constraints (e.g., C1, C4, and C6) capture fundamental wellformedn... |