Modern embedded systems require high performance, low cost and low power consumption. Such systems typically consist of a heterogeneous collection of processors, specialized memory subsystems, and partially programmable or fixed-function components. This heterogeneity, coupled with issues such as hardware/software partitioning, mapping, scheduling, etc., leads to a large number of design possibilities, making performance debugging and validation of such systems a difficult problem. Embedded systems are used to control safety critical applications such as flight control, automotive electronics and healthcare monitoring. Clearly, developing reliable software/systems for such applications is of utmost importance. This book describes a host of debugging and verification methods which can help to achieve this goal.
This book constitutes the proceedings of the 38th International Conference on Computer Safety, Reliability and Security, SAFECOMP 2019, held in Turku, Finland, in September 2019. The 16 full and 5 short papers included in this volume were carefully reviewed and selected from 65 submissions. They were organized in topical sections named: formal verification; autonomous driving; safety and reliability modeling; security engineering and risk assessment; safety argumentation; verification and validation of autonomous systems; and interactive systems and design validation.
Program analysis concerns static techniques for computing reliable approximate information about the dynamic behaviour of programs. Applications include compilers (for code improvement), software validation (for detecting errors in algorithms or breaches of security) and transformations between data representation (for solving problems such as the Y2K problem). This book is unique in giving an overview of the four major approaches to program analysis: data flow analysis, constraint based analysis, abstract interpretation, and type and effect systems. The presentation demonstrates the extensive similarities between the approaches; this will aid the reader in choosing the right approach and in enhancing it with insights from the other approaches. The book covers basic semantic properties as well as more advanced algorithmic techniques. The book is aimed at M.Sc. and Ph.D. students but will be valuable also for experienced researchers and professionals.
The DbContext API captures Entity Framework?s (EF) most commonly used features and tasks, simplifying development with EF. This concise book shows you how to use the API to perform set operations with the DbSet class, handle change tracking and resolve concurrency conflicts with the Change Tracker API, and validate changes to your data with the Validation API. With DbContext, you?ll be able to query and update data, whether you?re working with individual objects or graphs of objects and their related data. You?ll find numerous C# code samples to help you get started. All you need is experience with Visual Studio and database management basics. * Use EF?s query capabilities to retrieve data, and use LINQ to sort and filter data * Learn how to add new data, and change and delete existing data * Use the Change Tracker API to access information EF keeps about the state of entity instances * Control change tracking information of entities in disconnected scenarios, including NTier applications * Validate data changes before they?re sent to the database, and set up validation rules * Bypass EF?s query pipeline and interact directly with the database
This book constitutes the refereed proceedings of the 12th International Conference on the Quality of Information and Communications Technology, QUATIC 2019, held in Ciudad Real, Spain, in September 2019. The 19 full papers and 6 short papers were carefully reviewed and selected from 66 submissions. The papers are organized in topical sections: security & privacy, requirements engineering, business processes, evidence-based software engineering, process improvement and assessment, model-driven engineering & software maintenance, data science & services, and verification and validation.
Safety-critical real-time systems must guarantee correct operation in all operational conditions - even if these conditions are very unlikely to occur (rare events). Hardware-in-the-Loop (HiL) simulation is a common validation technique of real-time systems. In an HiL simulation the environment of a System-Under-Test (SUT) is simulated by an assigned HiL simulator. Thereby, the SUT interacts with the HiL simulator in real-time which necessitates a model of time and interfaces of the HiL simulator that are identical to the model of time and the interfaces of the SUT. In this book an HiL simulation framework is proposed that allows predictable interaction of a distributed HiL simulator and an SUT. This HiL simulation framework comprises configurable simulation components which are interconnected via a time-triggered interaction mechanism. Information flow between the HiL simulator and the SUT is strictly controlled by the progression of synchronized global time and bound to a priori known latency and jitter. This book addresses researchers and engineers in safety-critical domains such as the avionics or automotive industries.
Embedded systems have long become essential in application areas in which human control is impossible or infeasible. The development of modern embedded systems is becoming increasingly difficult and challenging because of their overall system complexity, their tighter and cross-functional integration, the increasing requirements concerning safety and real-time behavior, and the need to reduce development and operation costs. This book provides a comprehensive overview of the Software Platform Embedded Systems (SPES) modeling framework and demonstrates its applicability in embedded system development in various industry domains such as automation, automotive, avionics, energy, and healthcare. In SPES 2020, twenty-one partners from academia and industry have joined forces in order to develop and evaluate in different industrial domains a modeling framework that reflects the current state of the art in embedded systems engineering. The content of this book is structured in four parts. Part I ´´Starting Point´´ discusses the status quo of embedded systems development and model-based engineering, and summarizes the key requirements faced when developing embedded systems in different application domains. Part II ´´The SPES Modeling Framework´´ describes the SPES modeling framework. Part III ´´Application and Evaluation of the SPES Modeling Framework´´ reports on the validation steps taken to ensure that the framework met the requirements discussed in Part I. Finally, Part IV ´´Impact of the SPES Modeling Framework´´ summarizes the results achieved and provides an outlook on future work. The book is mainly aimed at professionals and practitioners who deal with the development of embedded systems on a daily basis. Researchers in academia and industry may use it as a compendium for the requirements and state-of-the-art solution concepts for embedded systems development.
Design, develop, and deploy a real-world web application by leveraging modern open source technologies. This book shows you how to use ASP.NET Core to build cross-platform web applications along with SignalR to enrich the application by enabling real-time communication between server and clients. You will use Docker to containerize your application, integrate with GitHub to package the application, and provide continuous deployment to Azure´s IaaS platform. Along the way, Real-Time Web Application Development covers topics including designing a Materialize CSS theme, using a test-driven development approach with xUnit.net, and securing your application with the OAuth 2.0 protocol. To further your understanding of the technology, you will learn logging and exception handling; navigation using view components; and how to work with forms and validations. The rich code samples from this book can be used to retrofit or upgrade existing ASP.NET Core applications. What You Will Learn Design and develop a real-world web application Implement security and data storage with OAuth2 and Azure Table Storage Orchestrate real-time notifications through SignalR Use GitHub and Travis CI for continuous integration of code Master Docker containerization and continuous deployment with Docker Cloud to Azure Linux virtual machines Who This Book Is For Developers and software engineers interested in learning an end-to-end approach to application development using Microsoft technologies.