Composition for component-based modeling

We propose a framework for component-based modeling using an abstract layered model for components. A component is the superposition of two models: a behavior model and an interaction model. Interaction models describe architectural constraints induced by connectors between components.We propose and analyze general requirements for component composition that motivated and guided the development of the framework. We define an associative and commutative composition operator on components encompassing heterogeneous interaction. As a particular instance of the proposed framework, we consider components where behavior models are transition systems and interaction models are described by priority relations on interactions. This leads to a concept of "flexible" composition different from usual composition in that it preserves deadlock-freedom and is appropriate for correctness by construction. Nevertheless, flexible composition is a partial operation. Product systems should be interaction safe in the sense that they do not violate constraints of the interaction model.We propose results ensuring correctness by construction of a system from properties of its interaction model and of its components. The properties considered include global deadlock-freedom, individual deadlock-freedom of components, and interaction safety.

[1]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[2]  Robin Milner,et al.  Calculi for Synchrony and Asynchrony , 1983, Theor. Comput. Sci..

[3]  Edward A. Lee,et al.  Overview of the Ptolemy project , 2001 .

[4]  Luciano Lavagno,et al.  Modeling and Designing Heterogeneous Systems , 2002, Concurrency and Hardware Design.

[5]  Joseph Sifakis,et al.  On the Construction of Live Timed Systems , 2000, TACAS.

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

[7]  Joseph Sifakis,et al.  On the Synthesis of Discrete Controllers for Timed Systems (An Extended Abstract) , 1995, STACS.

[8]  Joseph Sifakis,et al.  Scheduler Modeling Based on the Controller Synthesis Paradigm , 2002, Real-Time Systems.

[9]  Pascal Raymond,et al.  The synchronous data flow programming language LUSTRE , 1991, Proc. IEEE.

[10]  Joseph Sifakis,et al.  An Algebraic Framework for Urgency , 2000, Inf. Comput..

[11]  Iulian Ober,et al.  Model checking of UML models via a mapping to communicating extended timed automata , 2003 .

[12]  Amir Pnueli,et al.  Revised Lectures from the International Symposium on Compositionality: The Significant Difference , 1997 .

[13]  Gérard Berry,et al.  The Esterel Synchronous Programming Language: Design, Semantics, Implementation , 1992, Sci. Comput. Program..

[14]  Christos Kloukinas,et al.  A Methodology and Tool Support for Generating Scheduled Native Code for Real-Time Java Applications , 2003, EMSOFT.

[15]  C. A. R. Hoare,et al.  Communicating Sequential Processes (Reprint) , 1983, Commun. ACM.

[16]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[17]  Florence Maraninchi,et al.  Operational and Compositional Semantics of Synchronous Automaton Compositions , 1992, CONCUR.

[18]  Leslie Lamport,et al.  Specifying Concurrent Program Modules , 1983, TOPL.

[19]  Jozef Hooman,et al.  Concurrency Verification: Introduction to Compositional and Noncompositional Methods , 2001, Cambridge Tracts in Theoretical Computer Science.

[20]  Jan A. Bergstra,et al.  Algebra of Communicating Processes with Abstraction , 1985, Theor. Comput. Sci..

[21]  Thomas A. Henzinger,et al.  Interface Theories for Component-Based Design , 2001, EMSOFT.

[22]  Albert Benveniste,et al.  programmi language and its , 2001 .