DocumentCode :
3232956
Title :
Refining object-oriented invariants and dynamic constraints
Author :
Shield, Jamie ; Hayes, Ian J.
Author_Institution :
Sch. of Inf. Technol. & Electr. Eng., Queensland Univ., Brisbane, Qld., Australia
fYear :
2002
fDate :
2002
Firstpage :
52
Lastpage :
61
Abstract :
An invariant is a constraint on a class which holds for each externally accessible state of its instances. A dynamic constraint is a dual-state property dictating before to after state behaviour that all methods must adhere to. Both invariants and dynamic constraints are of practical benefit as they allow explicit declaration of high-level behavioural constraints on a class and all its sub-classes. In this paper, formalisations of invariants and dynamic constraints are provided in the refinement calculus. Each is separated into coerced (specification) and extant (implemented or documentation) categories. Refinement rules are provided for strengthening invariants and dynamic constraints. Two separate development paths are identified: (behavioural) sub-classing and private refinement. Refining a class may violate its invariant or dynamic constraint. Sub-classing is a constrained form of refinement that maintains these properties. Revised refinement laws are provided. Private refinement is an alternative to (behavioural) sub-classing. It also maintains properties such as invariants and dynamics constraints and foregoes the constraints of sub-classing. The disadvantage is that private refinement can only be used to implement a class.
Keywords :
formal specification; object-oriented programming; refinement calculus; dual-state property; dynamic constraint; dynamic constraints; high-level behavioural constraints; history properties; invariants; object-orientation; private refinement; refinement calculus; specification; sub-classing; Australia; Calculus; Documentation; History; Information technology; Software engineering;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Software Engineering Conference, 2002. Ninth Asia-Pacific
ISSN :
1530-1362
Print_ISBN :
0-7695-1850-8
Type :
conf
DOI :
10.1109/APSEC.2002.1182975
Filename :
1182975
Link To Document :
بازگشت