Transactions in Object-Oriented Specifications

The formal step by step development of implementations from specifications is necessary to allow the incremental description of large software systems and hence split the software development process in manageable portions. Due to the complex notion of objects as units of structure and behavior, the refinement process has to be reconsidered in the object-oriented framework. Apart from refining structure the behavioral part gives rise to refine actions by transactions. Referring to information systems as application domain, concurrency control aspects come into play because of shared resources. We present an approach to incorporate transactions into object-oriented specification and illustrate the main problems of synchronizing them on commonly used resources. The aim is that independent actions of different transactions, i.e., actions which are not accessing the same sources, may be arbitrarily interleaved. We envisage a denotational semantics based on event structures in which the sequential composition of transactions can be appropriately liberalized and outline the ideas by giving some examples.

[1]  Ursula Goltz,et al.  Equivalences and Refinement , 1990, Semantics of Systems of Concurrent Processes.

[2]  Luca Aceto,et al.  Towards Action-Refinement in Process Algebras , 1993, Inf. Comput..

[3]  Amílcar Sernadas,et al.  Algebraic Implementation of Objects over Objects , 1989, REX Workshop.

[4]  José Luiz Fiadeiro,et al.  Sometimes "Tomorrow" is "Sometime" - Action Refinement in a Temporal Logic of Objects , 1994, ICTL.

[5]  Tom Maibaum,et al.  DESCRIBING AND STRUCTURING OBJECTS FOR CONCEPTUAL SCHEMA DEVELOPMENT , 1992 .

[6]  Hartmut Ehrig,et al.  Fundamentals of Algebraic Specification 2: Module Specifications and Constraints , 1990 .

[7]  Amílcar Sernadas,et al.  Local Specification of Distributed Families of Sequential Objects , 1994, COMPASS/ADT.

[8]  Walter Vogler,et al.  Bisimulation and Action Refinement , 1991, Theor. Comput. Sci..

[9]  Jifeng He Various Simulations and Refinements , 1989, REX Workshop.

[10]  P. S. Thiagarajan,et al.  A trace based extension of linear time temporal logic , 1994, Proceedings Ninth Annual IEEE Symposium on Logic in Computer Science.

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

[12]  Heike Wehrheim Parametric Action Refinement , 1994, PROCOMET.

[13]  José Luiz Fiadeiro,et al.  Describing, Structuring and Implementing Objects , 1990, REX Workshop.

[14]  A. Elmagarmid Database transaction models for advanced applications , 1992 .

[15]  Grzegorz Rozenberg,et al.  Stepwise Refinement of Distributed Systems Models, Formalisms, Correctness , 1989, Lecture Notes in Computer Science.

[16]  He Jifeng Various Simulations and Refinements , 1990 .

[17]  Robin Milner,et al.  A Calculus of Communicating Systems , 1980, Lecture Notes in Computer Science.

[18]  Martin Gogolla,et al.  Algebraische Spezifikation abstrakter Datentypen , 1989 .

[19]  AbstractHans,et al.  Distributed Temporal Logic for Concurrent Object Families Extended , 1995 .

[20]  Heike Wehrheima Parametric Action Reenement , 1994 .

[21]  Gunter Saake,et al.  Revised Version of the Modelling Language TROLL , 1994 .

[22]  Shmuel Katz,et al.  Global Equivalence Proofs for ISTL , 1994, ICTL.

[23]  Arend Rensink,et al.  Weak Sequential Composition in Process Algebras , 1994, CONCUR.

[24]  Butler W. Lampson,et al.  Atomic Transactions , 1980, Advanced Course: Distributed Systems.

[25]  Klaus-Dieter Schewe,et al.  Specification and Refinement in an Integrated Database Application Environment , 1991, VDM Europe.

[26]  Cristina Sernadas,et al.  Refinement: Layered Definition of Conceptual Schemata , 1992, ISCO.

[27]  Cristina Sernadas,et al.  The Reification Dimension in Object-oriented Data Base Design , 1992, Specifications of Database Systems.

[28]  Hans Toetenel,et al.  VDM'91 Formal Software Development Methods , 1991, Lecture Notes in Computer Science.