LEDA: A Specification Language for Software Architecture

C. Canal, E. Pimentel, J.M. Troya

II Jornadas de Ingeniería del Software

San Sebastián (Spain), 1997

In Proceedings, pp. 207-219


Software Architecture refers to the level of design in which a system is described as a collection of interconnected components. Most concepts in the object-oriented paradigm can be applied to Software Architecture, where the more general term component-oriented is preferred. However, object-oriented notations often fail to describe the interaction patterns that the components of a system must follow. On the other hand, process algebras are good candidates for the specification of interactive systems, but they are low-level notations, which makes difficult its direct application to the description of complex systems. In this paper we present an Architecture Description Language which combines object-oriented characteristics, such as reusability and inheritance, with the use of process algebras to determine system’s compatibility and correctness. (Paper)