MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Static checking of system behaviors using derived component assumptions (2000) [32 citations — 1 self]

Download:
Download as a PDF | Download as a PS
by Paola Inverardi, Alexander L. Wolf, Daniel Yankelevich
ACM Transactions on Software Engineering and Methodology
ftp://ftp.cs.colorado.edu/users/alw/doc/papers/tosem00.ps.gz
Add To MetaCart

Abstract:

A critical challenge faced by the developer of a software system is to understand whether the system's components correctly integrate. While type theory has provided substantial help in detecting and preventing errors in mismatched static properties, much work remains in the area of dynamics. In particular, components make assumptions about their behavioral interaction with other components, but currently we have only limited ways in which to state those assumptions and to analyze those assumptions for correctness. We have formulated a method that begins to address this problem. The method operates at the architectural level so that behavioral integration errors, such as deadlock, can be revealed early and at a high level. For each component, a speci-cation is given of its interaction behavior. From this specication, assumptions that the component makes about the corresponding interaction behavior of the external context are automatically derived. We have dened an algorithm that performs compatibility checks between nite representations of a component's context assumptions and the actual interaction behaviors of the components with which it is intended to interact. A conguration of a system is possible if and only if a successful way of matching actual behaviors with assumptions can be found. The state-space complexity of this algorithm is signicantly less than that of comparable approaches and, in the worst case, the time complexity is comparable to the worst case of standard reachability analysis. 1

Citations

2783 Communication and Concurrency – Milner - 1989
2712 Communicating Sequential Processes – Hoare - 1985
971 Software Architecture: Perspectives on an Emerging Discipline – Garlan, Shaw - 1996
491 Foundations for the study of software architecture – Perry, Wolf - 1992
487 A formal basis for architectural connection – Allen, Garlan - 1997
415 The chemical abstract machine – Berry, Boudol - 1992
351 A behavioral notion of subtyping – Liskov, Wing - 1994
274 Specification and Analysis of System Architecture Using Rapide – Luckham, Kenney, et al. - 1995
266 Three partition refinement algorithms – Paige, Tarjan - 1987
228 Specification Matching of Software Components – Zaremski, Wing - 1997
151 Programming by Multiset Transformation – Banatre, Metayer - 1993
150 Architectural mismatch: Why reuse is so hard – Garlan, Allen, et al. - 1995
115 The Specification of Process Synchronization by Path Expressions – Campbell, Haberman - 1974
108 Formal specification and analysis of software architectures using the chemical abstract machine model – Inverardi, Wolf - 1995
95 The Inscape environment – Perry - 1989
76 A partially deadlock-free typed process calculus – Kobayashi - 1998
66 Foundations for the study – Perry, Wolf - 1992
27 Three partition re algorithms – Paige, Tarjan - 1987
25 An implicitly-typed deadlock-free process calculus, in: C. Palamidessi (Ed – Kobayashi, Saito, et al. - 2000
23 Analysing the Behaviour of Distributed Software Architectures: a Case Study – Magee, Kramer, et al. - 1997
21 The AdaPIC toolset: Supporting interface control and analysis throughout the software development process – Wolf, Clarke, et al. - 1989
21 The Chemical Abstract – Berry, Boudol - 1992
19 The Gamma Model and its – Banatre, Metayer - 1990
18 Speci cation and analysis of system architecture using Rapide – Luckham, Augustin, et al. - 1995
15 A case study in architectural modeling: the AEGIS system – Allen, Garlan - 1996
8 Some Chemical Abstract Machines. In A Decade of Concurrency, number 803 – Boudol - 1994
6 Formal Speci and Analysis of Software Architectures Using the Chemical Abstract Machine Model – Inverardi, Wolf - 1995
6 Relating CHAM descriptions of software architectures – Inverardi, Yankelevich - 1996
5 Automatic verification of distributed systems: The process algebra approach – Inverardi, Priami - 1996
5 What Do You get From a Pi-Calculus Semantics – Radestock, Eisenbach - 1994
2 Interoperability: Sample Problems and Solutions. Available from the authors – Garlan, Kindred, et al. - 1995
1 Static Checking of System Behaviors • 271 – ALLEN, GARLAN - 1996
1 Automatic Veri of Distributed Systems: The Process Algebra Approach – Inverardi, Priami - 1996