Title :
Wins and losses of algebraic transformations of software architectures
Author :
Fahmy, H.M. ; Holt, R.C. ; Cordy, J.R.
Author_Institution :
Dept. of Comput. Sci., Waterloo Univ., Ont., Canada
Abstract :
In order to understand, analyze and modify software, we commonly examine and manipulate its architecture. For example, we may want to examine the architecture at different levels of abstraction. We can view such manipulations as architectural transformations, and more specifically, as graph transformations. We evaluate relational algebra as a way of specifying and automating the architectural transformations. Specifically, we examine Grok, a relational calculator that is part of the PBS toolkit. We show that relational algebra is practical in that we are able to specify many of the transformations commonly occurring during software maintenance and, using a tool like Grok, we are able to manipulate, quite efficiently, large software graphs; this is a "win". However, this approach is not well suited to express some types of transforms involving patterns of edges and nodes; this is a "loss". By means of a set of examples, the paper makes clear when the approach wins and when it loses.
Keywords :
formal specification; graph theory; relational algebra; software architecture; software maintenance; Grok; PBS toolkit; algebraic transformations; architectural transformations; graph transformation; graph transformations; large software graphs; relational algebra; relational calculator; software architectures; software maintenance; Algebra; Computer architecture; Computer science; Data mining; Information analysis; Information science; Reverse engineering; Software maintenance; Software systems; Software tools;
Conference_Titel :
Automated Software Engineering, 2001. (ASE 2001). Proceedings. 16th Annual International Conference on
Print_ISBN :
0-7695-1426-X
DOI :
10.1109/ASE.2001.989790