Static checking of system behaviors using derived component assumptions

Citation
P. Inverardi et al., Static checking of system behaviors using derived component assumptions, ACM T SOFTW, 9(3), 2000, pp. 239-272
Citations number
28
Categorie Soggetti
Computer Science & Engineering
Journal title
ACM TRANSACTIONS ON SOFTWARE ENGINEERING AND METHODOLOGY
ISSN journal
1049331X → ACNP
Volume
9
Issue
3
Year of publication
2000
Pages
239 - 272
Database
ISI
SICI code
1049-331X(200007)9:3<239:SCOSBU>2.0.ZU;2-K
Abstract
A critical challenge faced by the developer of a software system is to unde rstand whether the system's components correctly integrate. While type theo ry has provided substantial help in detecting and preventing errors in mism atched static properties, much work remains in the area of dynamics. In par ticular, components make assumptions about their behavioral interaction wit h other components, but currently we have only limited ways in which to sta te those assumptions and to analyze those assumptions for correctness. We h ave formulated a method that begins to address this problem. The method ope rates at the architectural level so that behavioral integration errors, suc h as deadlock, can be revealed early and at a high level. For each componen t, a specification is given of its interaction behavior. From this specific ation, assumptions that the component makes about the corresponding interac tion behavior of the external context are automatically derived. We have de fined an algorithm that performs compatibility checks between finite repres entations of a component's context assumptions and the actual interaction b ehaviors of the components with which it is intended to interact. A configu ration 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 significantly less than that of comparable approaches, and in the worst case, the time complexity is comparable to the worst case of standard reachability analysis.