2007
DOI: 10.1007/978-3-540-72952-5_15
|View full text |Cite
|
Sign up to set email alerts
|

Refactoring Object-Oriented Specifications with Data and Processes

Abstract: Abstract. Refactoring is a method for improving the structure of programs/specifications as to enhance readability, modularity and reusability. Refactorings are required to be behaviour-preserving in that -to an external observer -no difference between the program before and after refactoring is visible. In this paper, we develop refactorings for an object-oriented specification formalism combining a state-based language (Object-Z) with a process algebra (CSP). In contrast to OOprogramming languages, refactori… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1

Citation Types

0
3
0

Year Published

2008
2008
2010
2010

Publication Types

Select...
5

Relationship

2
3

Authors

Journals

citations
Cited by 7 publications
(3 citation statements)
references
References 15 publications
0
3
0
Order By: Relevance
“…As Object-Z is not wide-spectrum, this would require an extension to the language, or a mapping of our method to another object-oriented specification language that supports low-level programming constructs. In ongoing work, Ruhroth et al are investigating refactoring transformations of Object-Z specifications in the presence of CSP [13], particularly with respect to those refactoring transformations we refer to as non-structural. Other work by Estler et al incorporates model-checking technologies for the verification of refactorings in Object-Z without CSP [4].…”
Section: Resultsmentioning
confidence: 99%
“…As Object-Z is not wide-spectrum, this would require an extension to the language, or a mapping of our method to another object-oriented specification language that supports low-level programming constructs. In ongoing work, Ruhroth et al are investigating refactoring transformations of Object-Z specifications in the presence of CSP [13], particularly with respect to those refactoring transformations we refer to as non-structural. Other work by Estler et al incorporates model-checking technologies for the verification of refactorings in Object-Z without CSP [4].…”
Section: Resultsmentioning
confidence: 99%
“…The employment of a congruence result is also proposed in [3] which uses the process algebra CSP as a semantic domain. The techniques used in [15,23] mainly treat state-based models, using set theory and predicate logic to show equivalences. In [2] it is shown how to exploit confluence results for graph transformation systems in order to show correctness of refactorings.…”
Section: Discussion and Evaluationmentioning
confidence: 99%
“…Behaviour preservation, addressed here, is different from all these -in fact it presupposes that the transformations are already correct in the above senses -and is particularly challenging. An area where behaviour preservation has received some interest is refactoring, a specific kind of model transformation improving the structure of models [7,8]. Contrary to our interest here, transformations during refactorings do not operate on different meta-models but stay within one language.…”
Section: Introductionmentioning
confidence: 97%