A Syntactic Theory of Software Architecture (1995)