specification languages have been developed to gain a better understanding of the
foundations of this type of software evolutionary change. In this paper we survey 14 formal
specification approaches based on graphs, process algebras, logic, and other formalisms.
Our survey will evaluate the ability of each approach to specify self-managing systems as
well as the ability to address issues regarding expressiveness and scalability. Based on the …