Taming Dr. Frankenstein: Contract-Based Design for Cyber-Physical Systems

Cyber-physical systems combine a cyber side (computing and networking) with a physical side (mechanical, electrical, and chemical processes). In many cases, the cyber component controls the physical side using sensors and actuators that observe the physical system and actuate the controls. Such systems present the biggest challenges as well as the biggest opportunities in several large industries, including electronics, energy, automotive, defense and aerospace, telecommunications, instrumentation, industrial automation. Engineers today do successfully design cyber-physical systems in a variety of industries. Unfortunately, the development of systems is costly, and development schedules are difficult to stick to. The complexity of cyber-physical systems, and particularly the increased performance that is offered from interconnecting what in the past have been separate systems, increases the design and verification challenges. As the complexity of these systems increases, our inability to rigorously model the interactions between the physical and the cyber sides creates serious vulnerabilities. Systems become unsafe, with disastrous inexplicable failures that could not have been predicted. Distributed control of multi-scale complex systems is largely an unsolved problem. A common view that is emerging in research programs in Europe and the US is “enabling contract-based design (CBD),” which formulates a broad and aggressive scope to address urgent needs in the systems industry. We present a design methodology and a few examples in controller design whereby contract-based design can be merged with platform-based design to formulate the design process as a meet-in-the-middle approach, where design requirements are implemented in a subsequent refinement process using as much as possible elements from a library of available components. Contracts are formalizations of the conditions for correctness of element integration (horizontal contracts), for lower level of abstraction to be consistent with the higher ones, and for abstractions of available components to be faithful representations of the actual parts (vertical contracts).

[1]  Peter Fritzson,et al.  Principles of Object-Oriented Modeling and Simulation with Modelica 3.3: A Cyber-Physical Approach , 2014 .

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

[3]  David L. Dill,et al.  Trace theory for automatic hierarchical verification of speed-independent circuits , 1989, ACM distinguished dissertations.

[4]  Alberto L. Sangiovanni-Vincentelli,et al.  Convertibility verification and converter synthesis: two faces of the same coin , 2002, ICCAD 2002.

[5]  Edward A. Lee Cyber Physical Systems: Design Challenges , 2008, 2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC).

[6]  Gabor Karsai,et al.  Model-integrated development of embedded software , 2003, Proc. IEEE.

[7]  Edward A. Lee,et al.  Modeling Cyber–Physical Systems , 2012, Proceedings of the IEEE.

[8]  Edward A. Lee,et al.  Taming heterogeneity - the Ptolemy approach , 2003, Proc. IEEE.

[9]  Hermann Kopetz Composability in the Time–Triggered Architecture , 2000 .

[10]  Radu Negulescu,et al.  Process Spaces , 2000, CONCUR.

[11]  Roberto Passerone,et al.  Specification, Synthesis, and Simulation of Transactor Processes , 2007, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[12]  Janos Sztipanovits,et al.  Composition of Cyber-Physical Systems , 2007, 14th Annual IEEE International Conference and Workshops on the Engineering of Computer-Based Systems (ECBS'07).

[13]  David Harel,et al.  Planned and Traversable Play-Out: A Flexible Method for Executing Scenario-Based Programs, , 2007, TACAS.

[14]  Axel Legay,et al.  Modal interfaces: unifying interface automata and modal specifications , 2009, EMSOFT '09.

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

[16]  Alberto L. Sangiovanni-Vincentelli,et al.  Metamodels in Europe: Languages, Tools, and Applications , 2009, IEEE Design & Test of Computers.

[17]  Thomas A. Henzinger,et al.  Interface automata , 2001, ESEC/FSE-9.

[18]  W. Damm,et al.  Boosting Re-use of Embedded Automotive Applications Through Rich Components , 2005 .

[19]  Roberto Passerone,et al.  A contract-based formalism for the specification of heterogeneous systems , 2008, 2008 Forum on Specification, Verification and Design Languages.

[20]  David Harel,et al.  Come, let's play - scenario-based programming using LSCs and the play-engine , 2003 .

[21]  Dejan Nickovic,et al.  Robustness of Sequential Circuits , 2010, 2010 10th International Conference on Application of Concurrency to System Design.

[22]  Werner Damm Controlling speculative design processes using rich component models , 2005, Fifth International Conference on Application of Concurrency to System Design (ACSD'05).

[23]  Peter H. Feiler,et al.  The Architecture Analysis & Design Language (AADL): An Introduction , 2006 .

[24]  Jean-Marc Jézéquel,et al.  Weaving executability into object-oriented meta-languages , 2005, MoDELS'05.

[25]  Amir Pnueli,et al.  Bridging the Gap between Fair Simulation and Trace Inclusion , 2003, CAV.

[26]  Steven J. Fenves,et al.  A product information modeling framework for product lifecycle management , 2005, Comput. Aided Des..

[27]  Amir Pnueli,et al.  Smart Play-out of Behavioral Requirements , 2002, FMCAD.

[28]  A. Sangiovanni-Vincentelli,et al.  A Next-Generation Design Framework for Platform-Based Design , 2007 .

[29]  Alberto L. Sangiovanni-Vincentelli,et al.  Metamodeling: An Emerging Representation Paradigm for System-Level Design , 2009, IEEE Design & Test of Computers.

[30]  Victor R. Basili,et al.  Iterative and incremental developments. a brief history , 2003, Computer.

[31]  Steven T. Karris Introduction to Simulink with Engineering Applications , 2006 .

[32]  Ivar Jacobson,et al.  Unified Modeling Language User Guide, The (2nd Edition) (Addison-Wesley Object Technology Series) , 2005 .

[33]  R. Bell,et al.  IEC 61508: functional safety of electrical/electronic/ programme electronic safety-related systems: overview , 1999 .

[34]  Rob J. van Glabbeek,et al.  Branching time and abstraction in bisimulation semantics , 1996, JACM.

[35]  Axel Legay,et al.  A Modal Interface Theory for Component-based Design , 2011, Fundam. Informaticae.

[36]  Roberto Passerone,et al.  Platform-Based Design and Frameworks: METROPOLIS andMETRO II , 2018, Model-Based Design for Embedded Systems.

[37]  Luciano Lavagno,et al.  Metropolis: An Integrated Electronic System Design Environment , 2003, Computer.

[38]  Peter A. Fritzson,et al.  Principles of object-oriented modeling and simulation with Modelica 2.1 , 2004 .