Relating CHAM Descriptions of Software Architectures

  • Authors:
  • Paola Inverardi;Daniel Yankelevich

  • Affiliations:
  • Dip. di Matematica Pura ed Applicata, Universitá di L'Aquila, L'Aquila, ITALY;Dep. de Computación, Universidad de Buenos Aires, Buenos Aires, Argentina

  • Venue:
  • IWSSD '96 Proceedings of the 8th International Workshop on Software Specification and Design
  • Year:
  • 1996

Quantified Score

Hi-index 0.00

Visualization

Abstract

Software architectures, chemical abstract machine, specification, refinement. In this paper we propose an approach to compare descriptions of software architectures based on the CHAM formalism. The need to compare descriptions of the same system at different level of abstraction often arises typically when the software practice uses a stepwise refinement approach. Differently from other approaches presented in the literature our framework allows for expressing correct refinement both of the static structure and of the dynamic behaviour of an architecture. Statically we rely on a suitable definition of partial morphism between the signatures of the two architectures. Dynamically we propose a notion of structure preserving simulation which allows the behaviors of the two CHAM descriptions to be (preorderly) related. In both definitions an important role is played by the membrane construct which allows for expressing non-functional constraints on the architecture to be refined. The main idea is to use the membranes to denote basic software components of the architecture that can be further decomposed during a refinement process but that cannot be destroyed even if the behaviour of the overall system is preserved. One point in favour of our approach is that we do not constrain too much the further development since we only require the membrane structure to be preserved.