2008
DOI: 10.1007/s10270-008-0085-0
|View full text |Cite
|
Sign up to set email alerts
|

Automatic maintenance of association invariants

Abstract: Many approaches to software specification and design make use of invariants: constraints whose truth is preserved under operations on a system or component. Object modelling involves the definition of association invariants: constraints upon the sets of links corresponding to particular associations, most often concerning type, multiplicity, or symmetry. This paper shows how the definitions of operations may be extended to take account of association invariants, so that they may be properly considered when the… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1

Citation Types

0
6
0

Year Published

2008
2008
2013
2013

Publication Types

Select...
3
3
1

Relationship

2
5

Authors

Journals

citations
Cited by 7 publications
(6 citation statements)
references
References 12 publications
0
6
0
Order By: Relevance
“…For specific domains or constraints better automation can be achieved, e.g., when maintaining association invariants. [18] Therefore only trading in flexibility for a higher degree of automation will pave the way for adopting rigorous methods in model based engineering.…”
Section: Discussionmentioning
confidence: 99%
“…For specific domains or constraints better automation can be achieved, e.g., when maintaining association invariants. [18] Therefore only trading in flexibility for a higher degree of automation will pave the way for adopting rigorous methods in model based engineering.…”
Section: Discussionmentioning
confidence: 99%
“…Booster is a data modeling language, described in [46,47] and [162], based on elements of the Abstract Machine Notation (AMN) of the B-method and the Refinement Calculus [114]. The approach aims at automatically generating complete and working object database implementations, sequentially accessed through queries and transactional updates.…”
Section: A Brief Overview Of Boostermentioning
confidence: 99%
“…A Class has a list of attributes, associations and methods. associations in Booster are normally bidirectional [162]: an explicit association in one direction creates an implicit association in the other. methods are defined in terms of preconditions, postconditions, and change-lists.…”
Section: A Brief Overview Of Boostermentioning
confidence: 99%
“…The modelling language employed has the familiar, structural features of object notations such as UML-classes, attributes, and associations-but uses logical predicates to characterise operations. An initial stage of transformation replaces these predicates with guarded commands that are guaranteed to satisfy the specified constraints: see, for example, [24]. The focus here is upon the subsequent generation of executable code, and the means by which we may prove that this generation process is correct.…”
Section: Introductionmentioning
confidence: 99%