A UNITY-Based Framework Towards Component Based Systems

Compositionality provides the foundation of software modularity, re-usability and separate verification of software components. One of the known difficulties, when separately verifying components, is producing compositional proofs for progress properties of distributed systems. This paper offers a UNITY-based framework to model distributed applications which are built with a component based approach. The framework enables components to be abstractly specified in terms of contracts. Temporal properties are expressed and proven in the UNITY style. Compositional reasoning about components' properties, including progress, is supported. The semantical model is simple and intuitive.

[1]  Martín Abadi,et al.  Conjoining specifications , 1995, TOPL.

[2]  Jifeng He,et al.  Abstract , 2002, Veterinary Record.

[3]  I. Prasetya Error in the UNITY substitution rule for subscripted operators , 1994, Formal Aspects of Computing.

[4]  Ralph-Johan Back,et al.  Refinement Calculus, Part I: Sequential Nondeterministic Programs , 1989, REX Workshop.

[5]  I. S. W. B. Prasetya Mechanically supported design of self-stabilizing algorithms , 1995 .

[6]  Jayadev Misra,et al.  A discipline of multiprogramming: programming theory for distributed applications , 2001 .

[7]  K. Mani Chandy,et al.  Theorems about Composition , 2000, MPC.

[8]  Gerhard Goos,et al.  ZB 2000: Formal Specification and Development in Z and B , 2000 .

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

[10]  Clemens A. Szyperski,et al.  Component software - beyond object-oriented programming , 2002 .

[11]  Natarajan Shankar,et al.  Lazy Compositional Verification , 1997, COMPOS.

[12]  David A. Carrington,et al.  A Formal Mapping between UML Models and Object-Z Specifications , 2000, ZB.

[13]  Martín Abadi,et al.  Composing Specifications , 1989, REX Workshop.

[14]  Rob T. Udink,et al.  Program refinement in UNITY-like environments , 1995 .

[15]  K. Mani Chandy,et al.  An Experiment in Program Composition and Proof , 2002, Formal Methods Syst. Des..

[16]  I. S. W. B. Prasetya,et al.  A Theory for Composing Distributed Components, Based on Temporary Interference , 2003 .

[17]  Pierre Collette,et al.  Logical Foundations for Compositional Verification and Development of Concurrent Programs in UNITY , 1995, AMAST.

[18]  Jayadev Misra A discipline of multiprogramming , 1996, CSUR.

[19]  Beverly A. Sanders Eliminating the substitution axiom from UNITY logic , 2005, Formal Aspects of Computing.

[20]  Pierre Collette,et al.  Composition of Assumption-Commitment Specifications in a UNITY Style , 1994, Sci. Comput. Program..

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

[22]  Amir Pnueli,et al.  Compositionality: The Significant Difference , 1999, Lecture Notes in Computer Science.