Skip to Main Content
Several formal approaches for the development of programs have been suggested including the transformational approach which allows to express formal developments as a linear equational proof. These developments lead to produce on the one hand the suited program satisfying its formal initial specifications and, on the other hand, the proof of correctness of this development. In most of the cases, this correctness is concerned with only functional aspects. Operational aspects are taken into account intuitively. This paper deals with nonfunctional correction of software. We suggest a transformational approach which allows the developer to produce cost expressions that can be interpreted in order to evaluate and get the benefit yielded by a given transformation application. These cost expressions are correctly associated to the intermediate objects of the development (abstract programs). We present a classification of the properties which are studied during the development phase and the correct formal transformational process allowing to get a particular evaluator for each kind of nonfunctional properties. Applications are given as well.