DocumentCode :
1687754
Title :
Refactoring Object-Oriented Specifications with Inheritance-Based Polymorphism
Author :
Smith, Graeme ; Helke, Steffen
Author_Institution :
Sch. of Inf. Technol. & Electr. Eng., Univ. of Queensland, Brisbane, QLD, Australia
fYear :
2011
Firstpage :
35
Lastpage :
41
Abstract :
Specification notations such as JML and Spec# which are embedded into program code provide a promising approach to formal object-oriented software development. If the program code is refactored, however, the specifications need also to be changed. This can be facilitated by specification refactoring rules which allows such changes to be made systematically along with the changes to the code. A set of minimal and complete set of refactoring rules have been devised for the Object-Z specification language. This paper reviews these rules as a basis for a similar approach for languages like JML and Spec#. Specifically, it modifies the rules for introducing and removing inheritance and polymorphism from specifications. While these concepts are orthogonal in Object-Z, they are closely intertwined in the other notations.
Keywords :
formal languages; formal specification; object-oriented methods; software engineering; JML; Spec#; formal object-oriented software development; inheritance-based polymorphism; object-Z specification language; program code; specification notations; specification refactoring rules; Annealing; Context; Educational institutions; Electronic mail; Games; Programming; Software engineering; object-oriented refactoring; object-z;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Theoretical Aspects of Software Engineering (TASE), 2011 Fifth International Symposium on
Conference_Location :
Xi´an, Shaanxi
Print_ISBN :
978-1-4577-1487-0
Type :
conf
DOI :
10.1109/TASE.2011.31
Filename :
6042061
Link To Document :
بازگشت