Modeling and validating distributed embedded real-time control systems

The development of complex embedded control systems can be improved significantly by applying formal techniques from control engineering and software engineering. It is shown how these approaches can be combined to improve the design and analysis of high-tech systems, both in theory and practice. The semantics of the integration of two established rigorous techniques has been defined formally in this work. The strength of this integrated semantics is demonstrated by means of a significant industrial case study: the embedded control of a printer paper path, whereby the full development life-cycle from model to realization is covered. The resulting model-driven design approach fits the current engineering practice in industry and is both flexible and effective.

[1]  Peter Gorm Larsen Ten Years of Historical Development "Bootstrapping" VDMTools® , 2001, J. Univers. Comput. Sci..

[2]  Martijn Hendriks,et al.  Model checking timed automata : techniques and applications , 2006 .

[3]  E Elena Mumford,et al.  Drawing graphs for cartographic applications , 2008 .

[4]  Heinrich Hußmann,et al.  Analysing UML Active Classes and Associated State Machines - A Lightweight Formal Approach , 2000, FASE.

[5]  Jasen Markovski,et al.  Real and stochastic time in process algebras for performance evaluation , 2008 .

[6]  Raluca Marin-Perianu,et al.  Wireless Sensor Networks in Motion - Clustering Algorithms for Service Discovery and Provisioning , 2008 .

[7]  Geert Jan Olsder,et al.  Synchronization and Linearity: An Algebra for Discrete Event Systems , 1994 .

[8]  Henk Corporaal,et al.  Probabilistic Modelling and Evaluation of Soft Real-Time Embedded Systems , 2006, SAMOS.

[9]  Peter Gorm Larsen,et al.  Interpreting Distributed System Architectures using VDM++ - A Case Study , 2007 .

[10]  Bahareh Badban,et al.  Verification Techniques for Extensions of Equality Logic , 2006 .

[11]  V. Sundramoorthy,et al.  At Home in Service Discovery , 2006 .

[12]  Lothar Thiele,et al.  Real-time calculus for scheduling hard real-time systems , 2000, 2000 IEEE International Symposium on Circuits and Systems. Emerging Technologies for the 21st Century. Proceedings (IEEE Cat No.00CH36353).

[13]  Wpmh Maurice Heemels,et al.  The key driver method , 2006 .

[14]  Bernhard K. Aichernig,et al.  Validating Voice Communication Requirements Using Lightweight Formal Methods , 2000, IEEE Softw..

[15]  D. Graaf,et al.  Mining semi-structured data, theoretical and experimental aspects of pattern evaluation , 2008 .

[16]  Lothar Thiele,et al.  Influence of different system abstractions on the performance analysis of distributed real-time systems , 2007, EMSOFT '07.

[17]  J. L. Lions ARIANE 5 Flight 501 Failure: Report by the Enquiry Board , 1996 .

[18]  Jozef Hooman,et al.  Co-simulation of Distributed Embedded Real-Time Control Systems , 2007, IFM.

[19]  Marcel Verhoef,et al.  Formal Methods Going Mainstream: Costs, Benefits, Experiences , 2006 .

[20]  U Uzma Khadim,et al.  Process algebras for hybrid systems : comparison and development , 2008 .

[21]  Emile H. L. Aarts,et al.  The New Everyday: Views on Ambient Intelligence , 2003 .

[22]  Klaus Gresser,et al.  An Event Model for Deadline Verification of Hard Real-Time Systems , 1993, Fifth Euromicro Workshop on Real-Time Systems.

[23]  Tony Field,et al.  Experimental Evaluation of the UML Profile for Schedulability, Performance, and Time , 2004, UML.

[24]  Wpmh Maurice Heemels,et al.  5.3.2 On the Systematic Use of Budget‐Based Design , 2006 .

[25]  Marcel Verhoef On the Use of VDM++ for Specifying Real-time Systems , 2005 .

[26]  Zoe Andrews,et al.  Resilience Modelling Through Discrete Event and Continuous Time Co-simulation , 2007 .

[27]  Jpm Jeroen Voeten,et al.  Specification of reactive hardware/software systems : the method software/hardware engineering (SHE) , 1997 .

[28]  Ling Cheung,et al.  Reconciling nondeterministic and probabilistic choices , 2006 .

[29]  Steven P. Abney,et al.  Bootstrapping , 2002, ACL.

[30]  Marcel Verhoef,et al.  Building High Assurance Multidisciplinary Design Optimization Framework , 2007 .

[31]  Gabriela Nicolescu,et al.  Formal Definitions of Simulation Interfaces in a Continuous/Discrete Co-Simulation Tool , 2006, Seventeenth IEEE International Workshop on Rapid System Prototyping (RSP'06).

[32]  Arjen van Weelden,et al.  Putting Types To Good Use , 2007 .

[33]  O Oana Florescu,et al.  Predictable design for real-time systems , 2007 .

[34]  J. Amerongen,et al.  Boderc : Model-based design of high-tech systems , 2006 .

[35]  G. Nicolescu,et al.  Methodology for Efficient Design of Continuous / Discrete-Events Co-Simulation Tools , 2006 .

[36]  EM Elena Bortnik,et al.  Formal methods in support of SMC design , 2008 .

[37]  Peter Verbaan,et al.  The Computational Complexity of Evolving Systems , 2006 .

[38]  Peter Gorm Larsen,et al.  VDMTools , 2008, ACM SIGPLAN Notices.

[40]  Jie Liu,et al.  HETEROGENEOUS CONCURRENT MODELING AND DESIGN , 1999 .

[41]  Anton Wijs,et al.  Silent steps in transition systems and Markov chains , 2007 .

[42]  Eelco Dolstra,et al.  The purely functional software deployment model , 2006 .

[43]  M. Torabi Dashti,et al.  Keeping Fairness Alive : Design and formal verification of optimistic fair exchange protocols , 2008 .

[44]  Marcel Kyas,et al.  Verifying OCL specifications of UML models: tool support and compositionakity , 2006 .

[45]  de Mmcm Menno Hoon Performance analysis of distributed real-time embedded systems , 2006 .

[46]  Peter Gorm Larsen,et al.  An Executable Subset of Meta-IV with Loose Specification , 1991, VDM Europe.

[47]  R. Rosenberg,et al.  System Dynamics: Modeling and Simulation of Mechatronic Systems , 2006 .

[48]  Mcw Marc Geilen Formal techniques for verification of complex real-time systems , 2002 .

[49]  E. Hairer,et al.  Solving Ordinary Differential Equations II: Stiff and Differential-Algebraic Problems , 2010 .

[50]  Martijn Warnier,et al.  Language based security for Java and JML , 2006 .

[51]  Wpmh Maurice Heemels,et al.  The use of the key driver technique in the design of copiers , 2006 .

[52]  Ncwm Niels Braspenning Model-based integration and testing of high-tech multi-disciplinary systems , 2008 .

[53]  Iris Loeb Natural Deduction, Sharing By Presentation , 2007 .

[54]  E. James Whitehead,et al.  Managerial Issues for the Consideration and Use of Formal Methods , 2003, FME.

[55]  Dan Henriksson,et al.  Flexible Scheduling Methods and Tools for Real-Time Control Systems , 2003 .

[56]  Wpmh Maurice Heemels,et al.  Threads of reasoning : a case study in printer control , 2006 .

[57]  A. L. de Groot,et al.  Practical Automaton proofs in PVS , 2000 .

[58]  Peter Gorm Larsen,et al.  Validated Designs for Object-oriented Systems , 2004 .

[59]  Wpmh Maurice Heemels,et al.  Effective industrial modeling : the example of Happy Flow , 2006 .

[60]  Ileana Buhan,et al.  Cryptographic keys from noisy data, theory and applications , 2008 .

[61]  Mohammad Ali Abam New data structures and algorithms for mobile data , 2007 .

[62]  Marcel Verhoef,et al.  Evaluating embedded system architectures , 2006 .

[63]  Ricardo Corin,et al.  Analysis Models for Security Protocols , 2006 .

[64]  Gerrit Muller,et al.  1.3.1 Modeling of hardware software performance of high-tech systems , 2007 .

[65]  Laura Brandán Briones,et al.  Theories for Model-based Testing: Real-time and Coverage , 2007 .

[66]  Kim G. Larsen,et al.  A Tutorial on Uppaal , 2004, SFM.

[67]  Ka Lok Man,et al.  Formal specification and analysis of hybrid systems , 2006 .

[68]  Marcel Verhoef,et al.  Timed automata based analysis of embedded system architectures , 2006, IPDPS.

[69]  P. Breedveld Multibond graph elements in physical systems theory , 1985 .

[70]  Juan Visente Guillen Scholten,et al.  Mobile Channels for Exogenous Coordination of Distributed Systems: Semantics, Implementation and Composition , 2007 .

[71]  Jim Ledin Simulation Engineering: Build Better Embedded Systems Faster , 2001 .

[72]  Jens R. Calamé,et al.  Testing reactive systems with data: enumerative methods and constraint solving , 2008 .

[73]  Thomas A. Henzinger,et al.  The Embedded Systems Design Challenge , 2006, FM.

[74]  Christos G. Cassandras,et al.  Introduction to Discrete Event Systems , 1999, The Kluwer International Series on Discrete Event Dynamic Systems.

[75]  Jean-Yves Le Boudec,et al.  Network Calculus: A Theory of Deterministic Queuing Systems for the Internet , 2001 .

[76]  Jozef Hooman,et al.  Formal Semantics of a VDM Extension for Distributed Embedded Systems , 2010, Concurrency, Compositionality, and Correctness.

[77]  Jeff Kramer,et al.  Is abstraction the key to computing? , 2007, CACM.

[78]  de Hayco Jong Flexible heterogeneous software systems , 2007 .

[79]  Bastian Florentz Inside Architecture Evaluation: Analysis and Representation of Optimization Potential , 2007, 2007 Working IEEE/IFIP Conference on Software Architecture (WICSA'07).

[80]  Ivan S. Zapreev Model checking Markov chains : techniques and tools , 2008 .

[81]  de Ism Ivo Jong Integration and test strategies for complex manufacturing machines , 2008 .

[82]  Barry W. Boehm,et al.  A spiral model of software development and enhancement , 1986, Computer.

[83]  Cjf Cas Cremers Scyther : semantics and verification of security protocols , 2006 .

[84]  Jozef Hooman,et al.  COUPLING SIMULINK AND UML MODELS , .

[85]  Peter Gorm Larsen,et al.  Validation Support for Distributed Real-Time Embedded Systems in VDM++ , 2007, 10th IEEE High Assurance Systems Engineering Symposium (HASE'07).

[86]  M. T. de Berg,et al.  Algorithms for Fat Objects: Decompositions and Applications , 2004 .

[87]  Ichiro Hasuo,et al.  Tracing Anonymity with Coalgebras , 2008 .

[88]  Nikolay Kavaldjiev,et al.  A run-time reconfigurable Network-on-Chip for streaming DSP applications , 2006 .

[89]  J. van Amerongen,et al.  Design trajectory and controller-plant interaction , 2006 .

[90]  JH Heico Sandee,et al.  Event-driven control in theory and practice : trade-offs in software and control performance , 2006 .

[91]  AJ Arjan Mooij,et al.  Constructive formal methods and protocol standardization , 2006 .

[92]  Bastiaan Stephan Graaf,et al.  Model-Driven Evolution of Software Architectures , 2007, 11th European Conference on Software Maintenance and Reengineering (CSMR'07).

[93]  Harmen Kastenberg Graph-based software specification and verification , 2008 .

[94]  M. T. de Berg,et al.  Multi-functional geometric data structures , 2003 .

[95]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

[96]  P. Rousseeuw,et al.  Wiley Series in Probability and Mathematical Statistics , 2005 .

[97]  Frank Ambrosius Modelling and distributed controller designof the bodeRC paper-path setup , 2007 .

[98]  M. G. van der Horst,et al.  Scalable block processing algorithms , 2008 .

[99]  Dmitri Jarnikov,et al.  QoS framework for video streaming in home networks , 2007 .

[100]  Jeroen Doumen,et al.  Searching in encrypted data , 2004 .

[101]  Fred P. Brooks,et al.  The Mythical Man-Month , 1975, Reliable Software.

[102]  Anton Wijs,et al.  What to do next? Analysing and optimising system behaviour in time , 2007 .

[103]  Giorgio Buttazzo,et al.  Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications , 1997 .

[104]  Marius Adrian Marin,et al.  An Integrated System to Manage Crosscutting Concerns in Source Code , 2008 .

[105]  Johannes F. Broenink,et al.  A structured approach to embedded control systems implementation , 2001, Proceedings of the 2001 IEEE International Conference on Control Applications (CCA'01) (Cat. No.01CH37204).

[106]  Peter J. Robinson Hierarchical object-oriented design , 1992 .

[107]  B. Gebremichael-Tesfagiorgis,et al.  Expressivity of Timed Automata Models , 2006 .

[108]  Rolf Ernst,et al.  SymTA/S - Symbolic Timing Analysis for Systems , 2004 .

[109]  Siegfried Nijssen Mining Structured Data , 2006 .

[110]  A Adam Koprowski,et al.  Termination of rewriting and its certification , 2004 .

[111]  Lothar Thiele,et al.  A general framework for analysing system properties in platform-based embedded system designs , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[112]  Jeffrey S. Lavell,et al.  Report on the Loss of the Mars Polar Lander and Deep Space 2 Missions , 2000 .

[113]  Ed F. Deprettere,et al.  An Approach for Quantitative Analysis of Application-Specific Dataflow Architectures , 1997, ASAP.

[114]  G.E. Moore,et al.  Cramming More Components Onto Integrated Circuits , 1998, Proceedings of the IEEE.

[115]  G. J. Muller,et al.  CAFCR: A Multi-view Method for Embedded Systems Architecting. Balancing Genericity and Specificity , 2004 .

[116]  Wang Yi,et al.  UPPAAL 4.0 , 2006, Third International Conference on the Quantitative Evaluation of Systems - (QEST'06).

[117]  Pascal Eugene Alois Dürr Resource-based verification for robust composition of aspects , 2008 .

[118]  Magiel Bruntink,et al.  Renovation of idiomatic crosscutting concerns in embedded systems , 2005 .

[119]  W. W. Royce,et al.  Managing the development of large software systems: concepts and techniques , 1987, ICSE '87.

[120]  Peter Gorm Larsen,et al.  Balancing Insight and Effort: The Industrial Uptake of Formal Methods , 2007, Formal Methods and Hybrid Real-Time Systems.

[121]  Jozef Hooman,et al.  A semantics of communicating reactive objects with timing , 2006, International Journal on Software Tools for Technology Transfer.

[122]  Lothar Thiele,et al.  Timed Automata Templates for Distributed Embedded System Architectures , 2005 .

[123]  Aad Mathssen,et al.  Logical Calculi for Reasoning with Binding , 2008 .

[124]  Peter Gorm Larsen,et al.  The IFAD VDM-SL toolbox: a practical approach to formal specifications , 1994, SIGP.

[125]  Cfj Christian Lange,et al.  Assessing and improving the quality of modeling : a series of empirical studies about the UML , 2007 .

[126]  A. J. Markvoort Towards hybrid molecular simulations , 2006 .

[127]  Gürcan Gülesir,et al.  Evolvable Behavior Specifications Using Context-Sensitive Wildcards , 2008 .

[128]  P.M. Visser,et al.  Controller system design trajectory , 2006, 2006 IEEE Conference on Computer Aided Control System Design, 2006 IEEE International Conference on Control Applications, 2006 IEEE International Symposium on Intelligent Control.

[129]  Tomas Krilavicius,et al.  Hybrid Techniques for Hybrid Systems , 2006 .

[130]  Marcel Verhoef,et al.  System architecture evaluation using modular performance analysis: a case study , 2006, International Journal on Software Tools for Technology Transfer.

[131]  Robert Brijder,et al.  Models of natural computation : gene assembly and membrane systems , 2008 .

[132]  T. D. Vu,et al.  Semantics and applications of process and program algebra , 2007 .

[133]  G Giovanni Russello,et al.  Separation and adaptation of concerns in a shared data space , 2006 .

[134]  C. W. Johnson The Natural History of Bugs: Using Formal Methods to Analyse Software Related Failures in Space Missions , 2005, FM.

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

[136]  P. Krutchen,et al.  The Rational Unified Process: An Introduction , 2000 .

[137]  Col John Dillard,et al.  MODELInG THE PERFORMAnCE , 2009 .

[138]  RH Rudolf Mak,et al.  Design and performance analysis of data-independent stream processing systems , 2008 .

[139]  Jozef Hooman,et al.  Modeling and Validating Distributed Embedded Real-Time Systems with VDM++ , 2006, FM.

[140]  Ernst Hairer,et al.  Solving Ordinary Differential Equations I: Nonstiff Problems , 2009 .

[141]  Martin Bravenboer,et al.  Exercises in Free Syntax. Syntax Definition, Parsing, and Assimilation of Language Conglomerates , 2003 .

[142]  Henk Corporaal,et al.  Reusing Real-Time Systems Design Experience Through Modelling Patterns , 2006 .

[143]  Mrv Michel Chaudron,et al.  Quality-oriented design space exploration for component-based architectures , 2006 .

[144]  Flavio D. Garcia Formal and Computational Cryptography: Protocols, Hashes and Commitments , 2008 .

[145]  Rolf Ernst,et al.  A Formal Approach to MpSoC Performance Verification , 2003, Computer.

[146]  Edward A. Lee,et al.  Ptolemy II, Heterogeneous Concurrent Modeling and Design in JAVA , 2001 .