Chapter

Collaborative Modelling and Co-simulation in Engineering and Computing Curricula

Authors:
To read the full-text of this research, you can request a copy directly from the authors.

Abstract

The successful development of Cyber-Physical Systems (CPSs) requires collaborative working across diverse engineering disciplines, notations and tools. However, classical computing curricula rarely provide opportunities for students to look beyond the confines of one set of methods. In this paper, we report approaches to raising students’ awareness of the integrative role of digital technology in future systems development. Building on research in open but integrated tool chains for CPS engineering, we consider how this has been realised in two degree programmes in Denmark and the UK, and give preliminary findings. These include the need for ensuring stability of research-quality tools, and observations on how this material is presented in Computing versus Engineering curricula.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

Chapter
Full-text available
The INTO-CPS Application is a common interface used to access and manipulate different model-based artefacts produced by the INTO-CPS tool chain during the development of a cyber-physical system. The application was developed during the INTO-CPS project. It uses web-technologies on top of the Electron platform, and it requires local installation and configuration on each user local machine. In this paper, we present a cloud-based version of the INTO-CPS Application which was developed while researching the potential of cloud technologies to support the INTO-CPS tool chain environment. The proposed application has the advantage that no configuration or installation on a local machine is needed. It makes full usage of the cloud resource management, and its architecture allows for a local machine version, keeping the current local approach option open.
Article
Full-text available
Developing embedded systems that are distributed is a challenging endeavour, since they need to ensure system-wide properties as well as existence of a large number of possible candidate system architectures. Various model based techniques advocate raising the abstraction level in order to support a holistic view of such a distributed embedded system. Furthermore, automatically generating implementation specific code from models can support realisation efforts including avoiding inconsistencies between model and code. In this paper we present how such efforts can be aided for a distributed embedded system modelled in the real time dialect of the Vienna Development Method, VDM-RT, by means of automatic code generation. The contributions in this paper are (1) code generation capabilities for distributed embedded system modelled in VDM-RT; (2) demonstration of its applicability for an industrial case study involving a distributed interlocking system from the railways domain. Additionally, we discuss the balance between code generation for a model, which assumes idealised communication (no messages lost), and manually produced code, e.g. in the industrial case study legacy low-level code ensures fault-tolerant communication in the final implementation.
Conference Paper
Full-text available
PVSio-web is a graphical environment for facilitating the design and evaluation of interactive (human-computer) systems. Using PVSio-web, one can generate and evaluate realistic interactive prototypes from formal models. PVSio-web has been successfully used over the last two years for analyzing commercial, safety-critical medical devices. It has been used to create training material for device developers and device users. It has also been used for medical device design, by both formal methods experts and non-technical end users. This paper presents the latest release of PVSio-web 2.0, which will be part of the next PVS distribution. The new tool architecture is discussed, and the rationale behind its design choices are presented. PVSio-web Tool: http:// www. pvsioweb. org
Book
Full-text available
This book confirms the significance of social capital as an analytical tool, while challenging the basis on which current policy is being developed. It offers a wealth of evidence on a topic that has become central to contemporary government; provides a detailed empirical investigation of the relationship between social capital, knowledge creation and lifelong learning; relates the findings to wider policy debates; questions the dominant theoretical models of social capital; and confronts the assumption of many policy makers that the obvious solution to social problems is to 'invest in social capital'. The book is aimed at researchers in education, policy studies and urban studies, as well as those concerned with an understanding of contemporary policy concerns.
Article
Full-text available
The efficient design of resilient embedded systems is hampered by the separation of engineering disciplines in current development approaches. We describe a new project entitled "Design Support and Tooling for Embedded Control Software" (DESTECS), which aims to develop a methodology and open tools platform for collaborative and multi-disciplinary development of dependable embedded real-time control systems. We also present some initial results from a small co-simulation case study. The DESTECS methodology combines continuous-time and discrete-event modelling via co-simulation, allowing explicit modelling of faults and fault-tolerance mechanisms from the outset. Continuous-time models are expressed using differential equations, which we represent using the well-known bond graph notation, supported by the 20-sim tool. We model discrete-event controllers using the Vienna Development Method (VDM), supported by the Overture tools. An open, extensible tools platform will be developed, populated with plug-ins to support static analysis, co-simulation, testing and fault analysis. Trials will be conducted on industrial case studies from several domains, including document handling, inertial measurement and personal transportation.
Conference Paper
Full-text available
The complexity of real-time embedded systems is increasing, for example due to the use of distributed architectures. An extension to the Vienna Development Method (VDM) is proposed to address the problem of deployment of software on distributed hardware. The limitations of the current notation are discussed and new language elements are introduced to overcome these deficiencies. The impact of these changes is illustrated by a case study. A constructive operational semantics is defined in VDM++ and validated using VDMTools. The associated abstract formal semantics, which is not specific to VDM, is presented in this paper. The proposed language extensions significantly reduce the modeling effort when describing distributed real-time systems in VDM++ and the revised semantics provides a basis for improved tool support.
Article
Full-text available
Overture is a community-based initiative that aims to develop a common open-source platform integrating a range of tools for constructing and analysing formal models of systems using VDM. The mission is to both provide an industrial-strength tool set for VDM and also to provide an environment that allows researchers and other stakeholders to experiment with modifications and extensions to the tools and language. This paper presents the current status and future vision of the Overture project.
Chapter
In this paper, we report on the progress made to upgrade and develop a stable upgrading process to the INTO-CPS Application, an Electron.js based desktop application providing a front-end to an INtegrated TOolchain, which is used to develop Cyber-Physical Systems models. We added regression tests to the codebase and for the first time can detect the loss of functionality of the application and its accompanying training tutorials using an automated process. The tests were developed on top of the Mocha, Chai and Spectron frameworks and cover all the tutorials steps performed in the desktop application (approximately 33% of the app and other tools total). The testing process is not yet ready to be deployed in the also recently developed GitHub Actions automated workflow, but this is a possibility to be considered in future developments. We expect this work to improve the stability and security of the code, thus improving user experience.
Chapter
This paper reports on the approach used to augment a transition system tool with automatic Functional Mock-up Units (FMU) generation. To verify the FMU properties, the same transition system can be translated into a formal language. Among intrinsic system properties, transition systems are associated with the following two: the disjointedness and the coverage, which assert that the controller is deterministic and defined for every possible input. This paper shows how both properties are enforced when proving the type checking conditions derived by the PVS theorem prover.
Chapter
Ensuring the dependability of Cyber-Physical Systems (CPSs) poses challenges for model-based engineering, stemming from the semantic heterogeneity of the models of computational, physical and human processes, and from the range of stakeholders involved. We argue that delivering such dependability requires a marriage of multi-disciplinary models developed during design with models derived from real operational data. Assets developed during design thus become the basis of a learning digital twin, able to support decision making both in redesign and in responsive operation. Starting from an open integrated toolchain leveraging formal models for CPS design, we consider the extension of this concept towards digital twins. A small example inspired by agricultural robotics illustrates some of the opportunities for research and innovation in delivering digital twins that contribute to dependability.
Article
Cyber-Physical Systems (CPSs) often operate in a critical context where it is crucial that they behave as intended. However, the heterogeneous nature of CPSs makes them inherently challenging to develop. To assist in the development process, one can perform co-simulation, where models of constituents of a CPS are coupled to jointly simulate the full system. The challenge herein is to combine heterogeneous formalisms in a sound fashion and address practical needs such as stability, performance, platform compatibility and so forth. To address this, Maestro is a tool for co-simulation using models adhering to the Functional Mock-up Interface standard for co-simulation. Its development was driven by needs from different industry domains such as railways, agriculture, building automation and automotive. It supports both a fixed and variable constraint-based iteration scheme along with platform distribution capabilities. The tool is open-source as an attempt to increase adoption of co-simulation and encourage researchers to collaborate. Maestro has been validated by industry through application in the aforementioned domains. It is a step in the direction of the two-folded long-term goals: ensure trustworthy co-simulation results and make co-simulation a technology taken for granted.
Article
Modeling and simulation techniques are today extensively used both in industry and science. Parts of larger systems are, however, typically modeled and simulated by different techniques, tools, and algorithms. In addition, experts from different disciplines use various modeling and simulation techniques. Both these facts make it difficult to study coupled heterogeneous systems. Co-simulation is an emerging enabling technique, where global simulation of a coupled system can be achieved by composing the simulations of its parts. Due to its potential and interdisciplinary nature, co-simulation is being studied in different disciplines but with limited sharing of findings. In this survey, we study and survey the state-of-the-art techniques for co-simulation, with the goal of enhancing future research and highlighting the main challenges. To study this broad topic, we start by focusing on discrete-event-based co-simulation, followed by continuous-time-based co-simulation. Finally, we explore the interactions between these two paradigms, in hybrid co-simulation. To survey the current techniques, tools, and research challenges, we systematically classify recently published research literature on co-simulation, and summarize it into a taxonomy. As a result, we identify the need for finding generic approaches for modular, stable, and accurate coupling of simulation units, as well as expressing the adaptations required to ensure that the coupling is correct.
Chapter
This work examines the use of co-simulation in the development and optimisation of a steering system for a driverless industrial size lawn mower. Initial models of the kinematics, dynamics and steering control system are co-simulated to investigate the performance of the controller in a virtual setting. The co-simulation consists of a Continuous-Time (CT) model of the lawn mower kinematics and dynamics and a Discrete-Event (DE) model of the steering controller modelled in VDM-RT. The models are co-simulated by the use of the Co-simulation Orchestration Engine which is a core tool of the INTO-CPS project. The CT model of the lawn mower is calibrated and verified experimentally. The result of co-simulation is in a similar fashion verified by comparing the simulated and measured trajectories.
Article
In general engineering studies focus on the technical skills in their own discipline. However, in their subsequent industrial careers, a significant portion of their time needs to be devoted to non-technical skills. In addition, in an increasingly globalised world collaboration in teams across cultures and disciplines is paramount to the creation of new and innovative products. In order to enhance the non-technical skills for groups of engineering students a series of innovation courses has been arranged and delivered in close collaboration with an industrial company (Bang & Olufsen). These courses have been organised as summer schools called ‘Conceptual Design and Development of Innovative Products’ (CD-DIP) and delivered outside the usual educational environment. In order to explore the impact of this single course, we have conducted a study among the students participating from 2007 to 2013. This has been carried out both qualitatively using interviews with selected students as well as quantitatively using a survey. The results are outstanding in demonstrating that the non-technical skills obtained in this single course have been of high value for a large portion of the students' subsequent professional life.
Conference Paper
With respect to system thinking, a T-shaped person is one who has technical depth in at least one aspect of the system's content, and a workable level of understanding of a fair number of the other system aspects. Many pure computer science graduates are strongly I-shaped, with a great deal of depth in software technology, but little understanding of the other disciplines involved in such areas as business, medicine, transportation, or Internets of Things. This leaves them poorly prepared to participate in the increasing numbers of projects involving multi-discipline system thinking, and in strong need of software skills. We have developed and evolved an MS-level software engineering curriculum that enables Computer Science (CS) majors to become considerably more T-shaped than when they entered. It includes courses in software management and economics, human-computer interaction, embedded software systems, systems and software requirements, architecture, and Verification and Validation (VaV), and a two-semester, real-client team project course that gives students experience in applying these skills. We find via feedback on the students' internships and job experiences that they and their employers have high rates of success in job offers and job performance.
Conference Paper
We describe INTO-CPS, a project that aims to realise the goal of integrated tool chains for the collaborative and multidisciplinary engineering of dependable Cyber-Physical Systems (CPSs). Challenges facing model-based CPS engineering are described, focussing on the semantic diversity of models, management of the large space of models and artefacts produced in CPS engineering, and the need to evaluate effectiveness in industrial settings. We outline the approach taken to each of these issues, particularly on the use of semantically integrated multi-models, links to architectural modelling, code generation and testing, and evaluation via industry-led studies. We describe progress on the development of a prototype tool chain from baseline tools, and discuss ongoing challenges and open research questions in this area.
Article
The engineering of dependable cyber-physical systems (CPSs) is inherently collaborative, demanding cooperation between diverse disciplines. A goal of current research is the development of integrated tool chains for model-based CPS design that support co-modelling, analysis, co-simulation, testing and implementation. We discuss the role of formal methods in addressing three key aspects of this goal: providing reasoning support for semantically heterogeneous models, managing the complexity and scale of design space exploration, and supporting traceability and provenance in the CPS design set. We briefly outline an approach to the development of such a tool chain based on existing tools and discuss ongoing challenges and open research questions in this area.
Book
One of the most significant challenges in the development of embedded and cyber-physical systems is the gap between the disciplines of software and control engineering. In a marketplace, where rapid innovation is essential, engineers from both disciplines need to be able to explore system designs collaboratively, allocating responsibilities to software and physical elements, and analyzing trade-offs between them. To this end, this book presents a framework that allows the very different kinds of design models – discrete-event (DE) models of software and continuous time (CT) models of the physical environment – to be analyzed and simulated jointly, based on common scenarios. The individual chapters provide introductions to both sides of this co-simulation technology, and give a step-by-step guide to the methodology for designing and analyzing co-models. They are grouped into three parts: Part I introduces the technical basis for collaborative modeling and simulation with the Crescendo technology. Part II continues with different methodological guidelines for creating co-models and analyzing them in different ways using case studies. Part III then delves into more advanced topics and looks into the potential future of this technology in the area of cyber-physical systems. Finally various appendices provide summaries of the VDM and 20-sim technologies, a number of valuable design patterns applicable for co-models, and an acronym list along with indices and references to other literature. By combining descriptions of the underlying theory with records of real engineers’ experience in using the framework on a series of case studies the book appeals to scientists and practitioners alike. It is complemented by tools, examples, videos, and other material on www.crescendotool.org. Scientists/researchers and graduate students working in embedded and cyber-physical systems will learn the semantic foundations for collaborative modeling and simulation, as well as the current capabilities and limitations of methods and tools in this field. Practitioners will be able to develop an appreciation of the capabilities of the co-modeling techniques, to assess the benefits of more collaborative approaches to modeling and simulation, and will benefit from the included guidelines and modeling patterns.
Article
Co-Simulation is a general approach to simulate coupled technical systems. In a master-slave concept the slaves simulate sub-problems whereas the master is responsible for both coordinating the overall simu-lation as well as transferring data. To unify the inter-face between master and slave the FMI for Co-Simulation was developed. Using FMI a master was implemented with simple and advanced algorithms which can be applied depending on the properties of the involved slave simulators. The master was tested amongst others by coupling with SimulationX.
Method Guidelines 3. Tech. rep., INTO-CPS Deliverable
  • J Fitzgerald
  • C Gamble
  • K Pierce
Fitzgerald, J., Gamble, C., Pierce, K.: Method Guidelines 3. Tech. rep., INTO-CPS Deliverable, D3.3a (December 2017)
Development of a Driverless Lawn Mower using Co-Simulation. In: 1st Workshop on Formal Co-Simulation of Cyber-Physical Systems
  • F Foldager
  • P G Larsen
  • O Green
Foldager, F., Larsen, P.G., Green, O.: Development of a Driverless Lawn Mower using Co-Simulation. In: 1st Workshop on Formal Co-Simulation of Cyber-Physical Systems. Trento, Italy (September 2017)
  • P G Larsen
  • H D Macedo
  • J Fitzgerald
  • H Pfeifer
  • M Benedikt
  • S Tonetta
  • A Marguglio
  • S Gusmeroli
  • G S Jr
Larsen, P.G., Macedo, H.D., Fitzgerald, J., Pfeifer, H., Benedikt, M., Tonetta, S., Marguglio, A., Gusmeroli, S., Jr., G.S.: An Online MBSE Collaboration Platform. SimulTech 2020 (July 2020)
Shadbolt review of computer science degree accreditation and graduate employability. UK Government. Department for Business, Innovation and Skills, and Higher Education Funding
  • N Shadbolt
Shadbolt, N.: Shadbolt Review of Computer Science Degree Accreditation and Graduate Employability. UK Government. Department for Business, Innovation and Skills, and Higher Education Funding Council for England (2016)
Overture FMU: export VDM-RT models as tool-wrapper FMUs
  • C Thule
  • K Lausdahl
  • P G Larsen
Thule, C., Lausdahl, K., Larsen, P.G.: Overture FMU: Export VDM-RT Models as Tool-Wrapper FMUs. In: Pierce, K., Verhoef, M. (eds.) The 16th Overture Workshop. pp. 23-38. Newcastle University, School of Computing, Oxford (July 2018), TR-1524
Method guidelines 3. Technical report, INTO-CPS Deliverable
  • J Fitzgerald
  • C Gamble
  • K Pierce
An online MBSE collaboration platform
  • P G Larsen
Frontiers in software engineering education
  • S Hallerstede
  • P G Larsen
  • J Boudjadar
  • C P L Schultz
  • L Esterle