Verifying Temporal Properties of CommUnity Designs

We study the use of some verification techniques for reasoning about temporal properties of CommUnity designs.We concentrate on the verification of temporal properties in the context of branching-time temporal logic using the SMV tool. We also discuss ways of modularising the temporal reasoning, by exploiting the various kinds of morphisms between designs available in CommUnity. Moreover, we combine SMV verification with some abstract interpretation mechanisms to overcome a limitation, with respect to the use of structure for simplification of verification, of CommUnity's refinement morphisms, the lack of support for data refinement.

[1]  José Luiz Fiadeiro,et al.  Using Explicit State to Describe Architechtures , 1999, FASE.

[2]  Brian Campbell,et al.  Amortised Memory Analysis Using the Depth of Data Structures , 2009, ESOP.

[3]  Zohar Manna,et al.  Temporal Verification of Reactive Systems , 1995, Springer New York.

[4]  José Luiz Fiadeiro,et al.  Categorical Semantics of Parallel Program Design , 1997, Sci. Comput. Program..

[5]  Michel Wermelinger,et al.  The CommUnity workbench , 2004, Proceedings. 26th International Conference on Software Engineering.

[6]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[7]  Michel Wermelinger,et al.  A graph based architectural (Re)configuration language , 2001, ESEC/FSE-9.

[8]  Naranker Dulay,et al.  Specifying Distributed Software Architectures , 1995, ESEC.

[9]  Eugene Miya,et al.  On "Software engineering" , 1985, SOEN.

[10]  David Garlan,et al.  Acme: an architecture description interchange language , 1997, CASCON.

[11]  K. Mani Chandy,et al.  Parallel program design - a foundation , 1988 .

[12]  José Luiz Fiadeiro On the Emergence of Properties in Component-Based Systems , 1996, AMAST.

[13]  Satoshi Matsuoka,et al.  ECOOP'97 — Object-Oriented Programming , 1997, Lecture Notes in Computer Science.

[14]  Wilhelm Schäfer,et al.  Software Engineering — ESEC '95 , 1995, Lecture Notes in Computer Science.

[15]  Shmuel Katz,et al.  Aspects and Superimpositions , 1999, ECOOP Workshops.

[16]  Peyman Oreizy,et al.  Using object-oriented typing to support architectural design in the C2 style , 1996, SIGSOFT '96.

[17]  Perdita Stevens,et al.  Modelling Recursive Calls with UML State Diagrams , 2003, FASE.

[18]  Zohar Manna,et al.  The Temporal Logic of Reactive and Concurrent Systems , 1991, Springer New York.

[19]  Richard T. Dué,et al.  OBJECT-ORIENTED TECHNOLOGY: The Economics of a New Paradigm , 1993 .

[20]  Zohar Manna,et al.  Temporal verification of reactive systems - safety , 1995 .

[21]  Gregor Kiczales,et al.  Aspect-oriented programming , 2001, ESEC/FSE-9.

[22]  Edmund M. Clarke,et al.  Model checking and abstraction , 1994, TOPL.

[23]  Kenneth L. McMillan,et al.  Symbolic model checking: an approach to the state explosion problem , 1992 .

[24]  Michel Wermelinger,et al.  Superposing connectors , 2000, Tenth International Workshop on Software Specification and Design. IWSSD-10 2000.

[25]  Hassen Saïdi,et al.  Construction of Abstract State Graphs with PVS , 1997, CAV.

[26]  C LuckhamDavid,et al.  Specification and Analysis of System Architecture Using Rapide , 1995 .

[27]  José Luiz Fiadeiro,et al.  Superposition: composition vs refinement of non-deterministic, action-based systems , 2002, Formal Aspects of Computing.

[28]  Michel Wermelinger,et al.  Higher-order architectural connectors , 2003, TSEM.