<p>This book constitutes contributions of the ISoLA 2021 associated events. Altogether, ISoLA 2021 comprises contributions from the proceedings originally foreseen for ISoLA 2020 collected in 4 volumes, LNCS 12476: Verification Principles, LNCS 12477: Engineering Principles, LNCS 12478: Applications
Leveraging Applications of Formal Methods, Verification and Validation (Lecture Notes in Computer Science, 13036)
✍ Scribed by Tiziana Margaria (editor), Bernhard Steffen (editor)
- Publisher
- Springer
- Year
- 2021
- Tongue
- English
- Leaves
- 505
- Category
- Library
No coin nor oath required. For personal study only.
✦ Synopsis
This book constitutes contributions of the ISoLA 2021 associated events. Altogether, ISoLA 2021 comprises contributions from the proceedings originally foreseen for ISoLA 2020 collected in 4 volumes, LNCS 12476: Verification Principles, LNCS 12477: Engineering Principles, LNCS 12478: Applications, and LNCS 12479: Tools and Trends.
The contributions included in this volume were organized in the following topical sections: 6th International School on Tool-Based Rigorous Engineering of Software Systems; Industrial Track; Programming: What is Next; Software Verification Tools; Rigorous Engineering of Collective Adaptive Systems.
✦ Table of Contents
Introduction
Organization
Contents
6th International School on Tool-Based Rigorous Engineering of Software Systems
STRESS
Introduction
References
An Introduction to Graphical Modeling of CI/CD Workflows with Rig
1 Introduction
2 Continuous Integration and Deployment
3 TodoMVC
4 Programming a CI/CD Workflow
5 Rig
6 Modeling a CI/CD Workflow in Rig
7 Discussion
8 Conclusion
References
Pyrus: An Online Modeling Environment for No-Code Data-Analytics Service Composition*-8pt
1 Introduction
2 Concept
3 Metamodel
3.1 Function Interface Storage
3.2 Process
3.3 Function
3.4 Constant
3.5 SubProcess
4 Semantics
4.1 SubProcess Component
4.2 Function Component
5 Type System
5.1 Classification
5.2 Data Types
5.3 Type Inference
6 Usage
6.1 Function Discovery
6.2 Modeling
6.3 Execution
7 Tutorial
8 Related Approaches
8.1 MaramaEML
8.2 ETI, Bio-jETI
8.3 Taverna
8.4 Kepler
8.5 SDLTool
8.6 Azure ML Studio, Google Cloud ML and AWS ML
8.7 RapidMiner Studio
9 Conclusion and Outlook
References
Integrating External Services in DIME
1 Introduction
2 The Digital Thread Platform in DIME
2.1 The Current Architecture
2.2 Low Code and DSLs
3 Integration in DIME: A Quick Tutorial
3.1 Runtime Infrastructure
3.2 SIB Declaration
3.3 SIB Implementation
4 Case Studies: The R Platform and REST Services
4.1 R Integration as Platform Integration
4.2 RESTful Extension as Service Integration
5 Conclusion and Discussion
References
Asking Why
1 Introduction
2 State of the Art
2.1 Today’s Challenges of Organizations
2.2 Today’s Internal Knowledge Management Challenges
3 Case Study GDPR
3.1 Typical GDPR Solutions in Practice
3.2 Why-Based Quality Analysis
3.3 Why-Based Solution Proposal
4 Why-Based Alignment
5 Conclusion
References
Industrial Track
Formal Methods for a Digital Industry
1 Introduction
2 Contributions
2.1 Software-Enabled Business Engineering
2.2 Simulation-Based Testing of Software for Autonomous Systems
2.3 Domain-Specific Languages for the Industry 4.0
2.4 Applications of Machine Learning in Software Engineering
References
Agile Business Engineering: From Transformation Towards Continuous Innovation
1 Introduction
2 State of the Art
2.1 Business Engineering
2.2 Agile Software Engineering
2.3 Parallels, Differences, and Potentials
3 Method
4 Interview Results
5 Implications
6 Reflections
7 Conclusion, Limitations, and Outlook
References
Towards Living Canvases
1 Introduction
2 State of the Art
2.1 Today’s Use and Application of Canvases
2.2 The Risk Standard as an Add-on Perspective
3 Method
4 The Use Case: The AI-ETA Service
4.1 Introducing the Silicon Economy Project
4.2 The AI-ETA Service
4.3 Workshop Execution
4.4 Workshop Results
5 Lessons Learned and Implications
5.1 Canvas Enhanced by Tool-Support
5.2 Required IT-Basis and Fundamental Aspects for a Technical Specification
6 Conclusion, Limitations and Outlook
References
Use Cases for Simulation in the Development of Automated Driving Systems
1 Introduction
1.1 Developing an Automated Driving System
1.2 Simulation and Its Usage
1.3 Scope of the Paper
2 Simulation: Concepts and Tools
3 Use Cases of Simulation
3.1 Critical Scenario Mining
3.2 Deep Validation
3.3 Incident Analysis
4 Summary
References
Simulation-Based Elicitation of Accuracy Requirements for the Environmental Perception of Autonomous Vehicles
1 Introduction
2 Preliminaries
2.1 Functional Decomposition
2.2 Unprotected Left Turn Scenario
3 Simulation-Based Testing with Error Injection
4 Modeling Perceptual Inaccuracy and Errors
4.1 Perceptual Hazards
4.2 Error Models
5 Evaluation
5.1 True Positive Inaccuracy: Systematic Object Position Shift
5.2 Object Track Instability: Lifetime and Downtime
5.3 Discussion
6 Related Work
7 Conclusion and Future Work
References
DSLs and Middleware Platforms in a Model-Driven Development Approach for Secure Predictive Maintenance Systems in Smart Factories
1 Introduction
2 EdgeX Foundry as IIoT Middleware Platform
3 Industrial Automation Use Case: Predictive Maintenance
3.1 Provisioning Devices in EdgeX: The Integration Layer
3.2 Data and Processes: The Application Layer
3.3 Reuse Through DSLs
3.4 Handling Alerts and Machine Failures
4 Secure Access Policy for PreMS
5 Conclusions
References
From Requirements to Executable Rules: An Ensemble of Domain-Specific Languages for Programming Cyber-Physical Systems in Warehouse Logistics
1 Introduction
2 Related Work
3 Case Study: Warehouse Logistics
4 Separation of Domain and Requirements
4.1 Engineering the Warehouse Logistics Domain
4.2 Specification of Requirements
5 Runtime Monitoring and System Control
6 Discussion
7 Conclusion
References
Mining Data Quality Rules for Data Migrations: A Case Study on Material Master Data
1 Introduction
2 Case Description
2.1 Setting
2.2 Current Data Migration Process
2.3 Data Set Description
2.4 Data Pre-processing
3 Proposed Solution
3.1 Extended Data Migration Process
3.2 Data Quality Rule Mining
4 Findings
4.1 Support Vector Machine (SVM)
4.2 Association Rule Learning
4.3 Evaluation
5 Related Work
6 Conclusion
References
Programming: What is Next
Programming - What is Next?
1 Introduction
2 Contributions
2.1 Program Development
2.2 Program Language Concepts
2.3 Domain-Specific Languages
3 Conclusion
References
Low-Code Is Often High-Code, So We Must Design Low-Code Platforms to Enable Proper Software Engineering
1 Introduction
2 No-Code and Low-Code as a Long-Standing and Growing Trend
2.1 Large Volumes and Complexity Make Low-Code a False Promise
2.2 Low Code Applications Often Lack Features Needed for Maintainability and Understandability
2.3 Turnover, Deprecation and Vendor-Dependence Further Challenge Low-Code
3 Short Case Studies
3.1 Excel and Other Spreadsheets
3.2 WordPress
3.3 Jenkins
3.4 Modeling Languages with Code Generation
4 Directions Forward
4.1 Enable Low Code, but Plan for Lots of Code
4.2 Enable Documentability in Low-Code Platforms
4.3 Improve Separation-of-Concerns, Re-use, and Collaboration Capabilities
4.4 Enable Automated Testing in Low-Code Platforms
4.5 Foster Multi-vendor Open Standards for Low-Code Languages
4.6 Emphasize Developer Experience at All Scales
5 Some Other Perspectives
6 Conclusions
References
Time for All Programs, Not Just Real-Time Programs
1 Motivation
2 Alignment
3 Precedence
Sidebar: Sidebar 1: Lingua Franca Alignment Program Explained
4 Simultaneity
Sidebar: Sidebar 2: Lingua Franca Precedence Program Explained
5 Consistency
Sidebar: Sidebar 3: Lingua Franca Simultaneity Program Explained
6 Related Work
7 Conclusions
References
Integrated Modeling and Development of Component-Based Embedded Software in Scala
1 Introduction
2 Components
3 Hierarchical State Machines
4 Monitors
5 Rule-Based Tests
6 Related Work
7 Conclusion
References
Slang: The Sireum Programming Language
1 Introduction
2 Design
3 Features
4 Implementation
5 Applications
6 Related Work
7 Conclusion
References
HAMR: An AADL Multi-platform Code Generation Toolset
1 Introduction
2 AADL
3 Architecture
4 HAMR Backends
4.1 Slang on JVM Platform
4.2 Linux
4.3 seL4 Verified Microkernel
5 Applications
5.1 PCA Pump – JVM Platform
5.2 UAV System – seL4 Platform
6 Related Work
7 Conclusion
References
Fundamental Constructs in Programming Languages
1 Introduction
2 The Nature of Funcons
3 Collections of Funcons
4 Facets of Funcons
5 Translation of Language Constructs to Funcons
6 Defining and Implementing Funcons
7 Related Work
8 Conclusion
A Data
A.1 Datatypes
A.2 Abstractions
B Flow of Control
C Flow of Data
D Name Binding
E Imperative Variables
F Abrupt Termination
G Communication
References
Introducing Dynamical Systems and Chaos Early in Computer Science and Software Engineering Education Can Help Advance Theory and Practice of Software Development and Computing
1 Motivation
2 The Subject Matter: Key Phenomena in Dynamical Systems and Chaos
3 Linking DS&C Tenets to General Education and to CS and SE
3.1 DS&C Phenomena are Real and Pervasive
3.2 CS and SE Already Deal with DS&C
3.3 DS&C Issues May Emerge in any System
3.4 CS and SE Research Can Help Close Gaps in Dealing with DS&C
3.5 Techniques Developed for DS&C Can Help Tackle Classical CS and SE Challenges
4 Conclusion
References
GATE: Gradual Effect Types
1 Introduction
2 Background
2.1 Gradual Types
2.2 Computational Effects
2.3 Subtyping
References
Fixing Classification: A Viewpoint-Based Approach
1 Introduction
2 The Limitations of Traditional Models of Classification
2.1 Dynamic Reclassification
2.2 Multiple Concurrent Classification Schemes
2.3 Transient and Overlapping Forms
3 A Viewpoint-Based Model of Classification
4 Computer Language Considerations
5 Prior Work
6 Summary and Future Research Prospects
References
The Future of Programming and Modelling: A Vision
1 The Software Capacity Crisis
2 Modelling and Its Limitations
2.1 Increasing the Benefit that Derives from Modelling
2.2 Bidirectionality
3 A Vision for the Future
4 Bidirectional Transformations
5 Specifying Networks of Models: Megamodelling
6 Restoring Consistency in Megamodels
7 Further Work Needed to Realise This Vision
8 Conclusions
References
Towards Model-Based Intent-Driven Adaptive Software
1 Introduction: Trends in Software Development
2 Background: MBSE Today
3 MIDAS: A Vision for Modeling
4 Program Synthesis
5 Comparison
6 Conclusion
References
The Interoperability Challenge: Building a Model-Driven Digital Thread Platform for CPS
1 Introduction
2 Digital Thread in the Middle – Interoperability
3 The Underlying Low-Code Development Environment
4 Digital Thread Platform: The Current Status
4.1 REST Services
4.2 Robotics with the UR Language
4.3 Data Management via Files and External Databases
4.4 Analytics with R
5 Programming: What's Next?
6 Conclusion and Outlook
References
Programming vs. That Thing Subject Matter Experts Do
1 The Role of Subject Matter Experts
2 Can SMEs Use DSLs?
3 (Where) Does This Work?
4 Typical DSL Architecture
5 Difference Between Programming and SME'ing
5.1 Skills and Responsibilities
5.2 Different Emphasis
6 Where and How Can SMEs Learn
7 Wrap Up
References
Aligned, Purpose-Driven Cooperation: The Future Way of System Development
1 Introduction
2 Challenges
2.1 Space
2.2 Time
2.3 Mindset
3 State of the Art
3.1 Infrastructure
3.2 Master Application
3.3 Workspace
4 Aligned, Purpose-Driven Cooperation
4.1 PSL Module
4.2 Bootstrapping
4.3 Composition
5 Sketch: Aligned Cinco Environment
5.1 Cinco Module
5.2 Product Module
5.3 Service-Orientation
6 Conclusion and Perspectives
References
Software Verification Tools
sVerify: Verifying Smart Contracts Through Lazy Annotation and Learning
1 Introduction
2 Overview Through Motivating Examples
3 Our Approach
3.1 Formalization of Smart Contracts
3.2 Loop Invariant Generation
3.3 Overall Verification Algorithm
4 Implementation and Evaluations
4.1 Verification Against Common Code Vulnerabilities
4.2 Verifying Contract-Specific Assertions
5 Related Work
6 Conclusion
References
Rigorous Engineering of Collective Adaptive Systems
Verifying Temporal Properties of Stigmergic Collective Systems Using CADP
1 Introduction
2 Background
2.1 The CADP Toolbox
2.2 LAbS and SLiVER
3 Model Checking Sequential LNT Emulation Programs
3.1 Improving LNT Emulation Programs for LAbS
3.2 A Basic Property Language for Systems of Stateful Agents
3.3 Encoding State-Based Properties as MCL Queries
4 Verification of Sequential Emulation Programs
5 Compositional Verification of Parallel Emulation Programs
5.1 Experimental Evaluation
6 Related Work
7 Conclusions
References
Formal Methods for DIStributedCOmputing in FutureRAILway Systems
RAILS: Roadmaps for AI integration in the raiL Sector
Acknowledgements and Disclaimer
References
A Journey Through Software Model Checking of Interlocking Programs
References
Supporting the Development of Hybrid ERTMS/ETCS Level 3 with Formal Modelling, Analysis and Simulation
References
Formal Methods in Railway Signalling Infrastructure Standardisation Processes
References
Author Index
📜 SIMILAR VOLUMES
<p><span>The four-volume set LNCS 12476 - 12479 constitutes the refereed proceedings of the 9th International Symposium on Leveraging Applications of Formal Methods, ISoLA 2020, which was planned to take place during October 20–30, 2020, on Rhodes, Greece. The event itself was postponed to 2021 due
<span>Constitutes the refereed proceedings of the 4th International Symposium on Leveraging Applications of Formal Methods, ISoLA 2010, held in Heraklion, Crete, Greece, in October 2010.</span>
<span>Constitutes the refereed proceedings of the 4th International Symposium on Leveraging Applications of Formal Methods, ISoLA 2010, held in Heraklion, Crete, Greece, in October 2010.</span>
<p><span>This four-volume set LNCS 13701-13704 constitutes contributions of the associated events held at the 11th International Symposium on Leveraging Applications of Formal Methods, ISoLA 2022, which took place in Rhodes, Greece, in October/November 2022. </span></p><p><span>The contributions in