Composition and Refinement for Partial Object Specifications ( full version )

Due to the complexity involved in the specification and development of large, distributed, and object-oriented systems, it is often advocated that individual components should be developed in an aspect-wise manner, where separate descriptions depict various roles, viewpoints, or interfaces of the objects considered. The introduction of such partial specifications requires extra care when reasoning about systems as several specifications of the same object may coexist and lead to overlapping information. In this paper, we consider a compositional approach to system development by means of partial specifications of objects. The approach supports stepwise refinement, which enables global reasoning by local refinement steps in an aspect-oriented specification style. For this purpose, a refinement relation is proposed which is suitable for multiple inheritance of behavior and subclassing in object-oriented languages.

[1]  Carolyn L. Talcott,et al.  A foundation for actor computation , 1997, Journal of Functional Programming.

[2]  Gilles Kahn,et al.  The Semantics of a Simple Language for Parallel Programming , 1974, IFIP Congress.

[3]  K. Mani Chandy,et al.  Proofs of Networks of Processes , 1981, IEEE Transactions on Software Engineering.

[4]  Einar Broch Johnsen,et al.  Composition and refinement for partial object specifications , 2002, Proceedings 16th International Parallel and Distributed Processing Symposium.

[5]  Bowen Alpern,et al.  Defining Liveness , 1984, Inf. Process. Lett..

[6]  Howard Bowman,et al.  Consistency and Refinement for Partial Specification in Z , 1996, FME.

[7]  Jennifer Widom,et al.  Completeness and incompleteness of trace-based network proof systems , 1987, POPL '87.

[8]  Michael Jackson,et al.  Conjunction as composition , 1993, TSEM.

[9]  JanickiRyszard,et al.  Foundations of the Trace Assertion Method of Module Interface Specification , 2001 .

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

[11]  Gordon S. Blair,et al.  Composition in Multi-Paradigm Specification Techniques , 1999 .

[12]  Natarajan Shankar,et al.  PVS: A Prototype Verification System , 1992, CADE.

[13]  Ralph-Johan Back,et al.  Trace Refinement of Action Systems , 1994, CONCUR.

[14]  Martín Abadi,et al.  The existence of refinement mappings , 1988, [1988] Proceedings. Third Annual Information Symposium on Logic in Computer Science.

[15]  Olaf Owe,et al.  OUN : A Formalism for Open , Object Oriented , Distributed Systems , 1999 .

[16]  Else K. Nordhagen Divide Et Impera: a Computational Framework for Verifying Object Component Substutability , 1998 .

[17]  Massachusett Framingham,et al.  The Common Object Request Broker: Architecture and Specification Version 3 , 2003 .

[18]  Manfred Broy Compositional refinement of interactive systems , 1997, JACM.

[19]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[20]  Ivar Jacobson,et al.  The Unified Modeling Language User Guide , 1998, J. Database Manag..

[21]  Olaf Owe,et al.  Formal Methods and the RM-ODP , 1998 .

[22]  Jeannette M. Wing,et al.  A behavioral notion of subtyping , 1994, TOPL.

[23]  Andrew William Roscoe,et al.  The Theory and Practice of Concurrency , 1997 .