## Graph grammars and constraint solving for software architecture styles (1998)

Venue: | IN PROC. OF THE INT. SOFTWARE ARCHITECTURE WORKSHOP |

Citations: | 32 - 3 self |

### BibTeX

@INPROCEEDINGS{Hirsch98graphgrammars,

author = {Dan Hirsch and Paola Inverardi and Ugo Montanari},

title = {Graph grammars and constraint solving for software architecture styles},

booktitle = {IN PROC. OF THE INT. SOFTWARE ARCHITECTURE WORKSHOP},

year = {1998},

pages = {69--72},

publisher = {ACM Press}

}

### Years of Citing Articles

### OpenURL

### Abstract

The description of a software architecture style must include the structural model of the components and their interactions, the laws governing the dynamic changes in the architecture, and the communication pattern. In our work we represent a system as a graph where hyperedges are components and nodes are ports of communication. The construction and dynamic evolution of the style will be represented as context-free productions and graph rewriting. To model the evolution of the system we propose to use techniques of constraint solving. From this approach we obtain an intuitive way to model systems with nice characteristics for the description of dynamic architectures and recon guration and, a unique language to describe the style, model the evolution of the system and prove properties.

### Citations

1462 |
Software Architectures: Perspectives on an Emerging Discipline
- Shaw, Garlan
- 1996
(Show Context)
Citation Context ...d, a unique language to describe the style, model the evolution of the system and prove properties. 1 Introduction Asoftware architecture style is a class of architectures exhibiting a common pattern =-=[1]-=-. The description of a style must include the structure model of the components and their interactions (i.e. structural topology), the laws governing the dynamic changes in the architecture, and the c... |

226 | Dynamic Structure in Software Architectures
- Magee, Kramer
- 1996
(Show Context)
Citation Context ...emembered. This can be useful in the description of a bigger class of software architectures, specially those in which the organization of components and connectors may change during system execution =-=[12]-=-. In spite of the fact that context-free productions limit the classes of systems that can be described, it is clear that the description language proposed has very good properties for modeling recon ... |

85 |
Handbook of Graph Grammars and Computing by Graph Transformation
- Ehrig, Engels, et al.
- 1999
(Show Context)
Citation Context ...what happens in the CHAM description of software architectures [8]. And this is fundamental for the veri cation of properties of the system.s2 Basic Notions An edge-labeled hypergraph is de ned as in =-=[9]-=-, as a tuple that contains a set of nodes, a set of edges and labeling functions for nodes and edges. Each edge can be connected to a list of nodes (hyperedge) and a set of distinguished external node... |

45 |
A model for distributed systems based on graph rewriting
- Degano, Montanari
- 1987
(Show Context)
Citation Context ...that by analyzing the derivation tree of the grammar it is possible to have all the computations of the system permitting the veri cation of properties of the architecture, like for example, deadlock =-=[10,11]-=-. 4 Conclusions and Future Work In this work we have presented a speci cation method for software architecture styles using hyperedge context free graph grammars. Based on the rewriting system speci e... |

41 |
Describing software architecture styles using graph grammars
- MÃ©tayer
- 1998
(Show Context)
Citation Context ...re is by using graphs, and as an extension of this, by using graph grammars to describe styles. So a grammar will generate all possible instances of that style. This approach has rst been proposed in =-=[2]-=-. In this position paper we propose to represent a system as a graph where edges (or hyperedges) are components and nodes are ports of communication. To model the construction and dynamic evolution of... |

17 | Graph rewriting, constraint solving and tiles for coordinating distributed systems
- Rossi, Montanari
- 1999
(Show Context)
Citation Context ...cation. To model the construction and dynamic evolution of the style we need to choose a way of selecting which components will evolve and communicate. For these we use a technique already applied in =-=[3]-=- torepresent distributed systems with graph rewriting and constraint solving. A graph represents a distributed system, where edges represent processes and nodes represent shared data. In order to evol... |

17 |
Self-organising software architectures
- Magee, Kramer
- 1996
(Show Context)
Citation Context ...tion. Instead, each type of component de nes its own evolution making it easier to describe dynamic recon guration and specially for self organising architectures that do not use a global coordinator =-=[6]-=-. In this way, a clearer view of the system is obtained while a separation of con guration and evolution is achieved (a desirable property of software architecture description languages) [7]. Another ... |

15 |
Formal speci cation and analysis of software architectures using the chemical, abstract machine model
- Inverardi, Wolf
- 1995
(Show Context)
Citation Context ... point is that the evolution and communication pattern can be obtained directly by the rewriting sequences on the graphs, analogously to what happens in the CHAM description of software architectures =-=[8]-=-. And this is fundamental for the veri cation of properties of the system.s2 Basic Notions An edge-labeled hypergraph is de ned as in [9], as a tuple that contains a set of nodes, a set of edges and l... |

7 |
Specifying highly concurrent data structure manipulation
- CORRADINI, DEGANO, et al.
- 1985
(Show Context)
Citation Context ...on conditions for each of the possible moves. After that, context-sensitive subsystem rewriting rules are obtained by combining some context-free productions (this is called the rulematching problem) =-=[4]-=-. Applying one of these context-sensitive rules, allows for the evolution of a subpart of the system consisting of several processes (each with one of its context-free productions) that agree on the c... |

5 |
Uncovering Architectural Mismatch in Dynamic Behavior
- Compare, Inverardi, et al.
- 1996
(Show Context)
Citation Context ...that by analyzing the derivation tree of the grammar it is possible to have all the computations of the system permitting the veri cation of properties of the architecture, like for example, deadlock =-=[10,11]-=-. 4 Conclusions and Future Work In this work we have presented a speci cation method for software architecture styles using hyperedge context free graph grammars. Based on the rewriting system speci e... |

4 |
A classi cation and comparison framework for software architecture description languages
- Medvidovic
- 1997
(Show Context)
Citation Context ...ordinator [6]. In this way, a clearer view of the system is obtained while a separation of con guration and evolution is achieved (a desirable property of software architecture description languages) =-=[7]-=-. Another important point is that the evolution and communication pattern can be obtained directly by the rewriting sequences on the graphs, analogously to what happens in the CHAM description of soft... |

1 |
Encyclopedia of IA,chapter Constraint Satisfaction
- Mackworth
- 1988
(Show Context)
Citation Context ...e of its context-free productions) that agree on the conditions imposed on the shared data. The solution of the rule-matching problem is implemented considering it as a nite domain constraint problem =-=[5]-=-. In the case of software architectures we use constraint rules to coordinate the dynamic evolution of the system. This is done using constraints (conditions) on ports to represent communications betw... |