Working IEEE/IFIP Conference on Software Architecture (WISCA'01)
Detecting Architectural Mismatches in Process Algebraic Descriptions of Software Systems
Amsterdam, The Netherlands
August 28-August 31
ISBN: 0-7695-1360-3
Formalizing the description of software systems helps to detect the presence of architectural mismatches that can arise when assembling software components together. In this paper we identify three causes of architectural mismatches: incompatibility between two components due to a single interaction, incompatibility between two components due to the combination of several interactions, and lack of interoperability among a set of components forming a cyclic topology. We then show how to deal with all of them within a uniform, process algebraic framework. We begin with the first two causes by strengthening a previously defined architectural compatibility check based on observational equivalences, in order to achieve a deadlock freedom result for the set of components interacting via a certain connection. We subsequently concentrate on the third cause by defining a novel architectural interoperability check based on observational equivalences, which guarantees absence of dead-lock within a set of interacting components forming a cyclic topology. We finally assess the adequacy of our architectural interoperability check by applying it to the description of a cruise control system.
Citation:
Marco Bernardo, Paolo Ciancarini, Lorenzo Donatiello, "Detecting Architectural Mismatches in Process Algebraic Descriptions of Software Systems," wicsa, pp.77, Working IEEE/IFIP Conference on Software Architecture (WISCA'01), 2001