Jan Olaf Blech

SE
21papers
131citations
Novelty22%
AI Score18

21 Papers

RONov 5, 2021
Digital Twin-Assisted Controlling of AGVs in Flexible Manufacturing Environments

Mohammad Azangoo, Amir Taherkordi, Jan Olaf Blech et al.

Digital Twins are increasingly being introduced for smart manufacturing systems to improve the efficiency of the main disciplines of such systems. Formal techniques, such as graphs, are a common way of describing Digital Twin models, allowing broad types of tools to provide Digital Twin based services such as fault detection in production lines. Obtaining correct and complete formal Digital Twins of physical systems can be a complicated and time consuming process, particularly for manufacturing systems with plenty of physical objects and the associated manufacturing processes. Automatic generation of Digital Twins is an emerging research field and can reduce time and costs. In this paper, we focus on the generation of Digital Twins for flexible manufacturing systems with Automated Guided Vehicles (AGVs) on the factory floor. In particular, we propose an architectural framework and the associated design choices and software development tools that facilitate automatic generation of Digital Twins for AGVs. Specifically, the scope of the generated digital twins is controlling AGVs in the factory floor. To this end, we focus on different control levels of AGVs and utilize graph theory to generate the graph-based Digital Twin of the factory floor.

DCJan 20, 2020
Towards Digital Twins for the Description of Automotive Software Systems

Jan Olaf Blech

We present models for automotive software that capture quantitative and qualitative aspects of software systems and the underlying hardware architecture. In particular, we consider different levels of computing power. These range from controllers up to the cloud. We present a modeling approach for software deployment taking different automotive requirements such as criticality, latency, memory, computational resources, and communication into account. Our models capture automotive software and hardware system configurations and can serve as digital twins that are digital counterparts of (usually) physical entities. Furthermore, we highlight connected research areas and challenges.

SEJul 5, 2018
Towards Classification of Lightweight Formal Methods

Anna Zamansky, Maria Spichkova, Guillermo Rodriguez-Navas et al.

The use of lightweight formal methods (LFM) for the development of industrial applications has become a major trend. Although the term "lightweight formal methods" has been used for over ten years now, there seems to be no common agreement on what "lightweight" actually means, and different communities apply the term in all kinds of ways. In this paper, we explore the recent trends in the use of LFM, and establish our opinion that cost-effectiveness is the driving force to deploy LFM. Further, we propose a simple framework that should help to classify different LFM approaches and to estimate which of them are most cost-effective for a certain software engineering project. We demonstrate our framework using some examples.

SEFeb 6, 2018
On Decision Support for Remote Industrial Facilities using the Collaborative Engineering Framework

Jan Olaf Blech, Ian D. Peake, Sudarsan SD

Means to support collaboration for remote industrial facilities such as mining are an important topic, especially in Australia, where major mining sites can be more than a thousand kilometers from population centres. Software-based collaboration and maintenance solutions can help to reduce costs associated with these remote facilities. In this paper, we report on our collaborative engineering project providing a decision support solution tailored for Australian needs. We present two application examples: one related to incident handling in industrial automation, the other one in the area of smart energy systems.

SENov 16, 2017
Towards a Cloud-based Architecture for Visualization and Augmented Reality to Support Collaboration in Manufacturing Automation

Ian D. Peake, Jan Olaf Blech, Shyam Nath et al.

In this report, we present our work in visualization and augmented reality technologies supporting collaboration in manufacturing automation. Our approach is based on (i) analysis based on spatial models of automation environments, (ii) next-generation controllers based on single board computers, (iii) cloud-, service- and web-based technologies and (iv) an emphasis on experimental development using real automation equipment. The contribution of this paper is the documentation of two new demonstrators, one for distributed viewing of 3D scans of factory environments, and another for real time augmented reality display of the status of a manufacturing plant, each based on technologies under development in our lab and in particular applied to a mini-factory.

SEMay 29, 2017
From Temporal Models to Property-Based Testing

Nasser Alzahrani, Maria Spichkova, Jan Olaf Blech

This paper presents a framework to apply property-based testing (PBT) on top of temporal formal models. The aim of this work is to help software engineers to understand temporal models that are presented formally and to make use of the advantages of formal methods: the core time-based constructs of a formal method are schematically translated to the BeSpaceD extension of the Scala programming language. This allows us to have an executable Scala code that corresponds to the formal model, as well as to perform PBT of the models functionality. To model temporal properties of the systems, in the current work we focus on two formal languages, TLA+ and FocusST.

SEMay 10, 2017
Towards Decision Support for Smart Energy Systems based on Spatio-temporal Models

Jan Olaf Blech, Lasith Fernando, Keith Foster et al.

This report presents our SmartSpace event handling framework for managing smart-grids and renewable energy installations. SmartSpace provides decision support for human stakeholders. Based on different datasources that feed into our framework, a variety of analysis and decision steps are supported. These decision steps are ultimately used to provide adequate information to human stakeholders. The paper discusses potential data sources for decisions around smart energy systems and introduces a spatio-temporal modeling technique for the involved data. Operations to reason about the formalized data are provided. Our spatio-temporal models help to provide a semantic context for the data. Customized rules allow the specification of conditions under which information is provided to stakeholders. We exemplify our ideas and present our demonstrators including visualization capabilities.

SEDec 16, 2016
Towards the Formalization of a Factory Demonstrator in BeSpaceD

Keith Foster, Jan Olaf Blech, Guillaume Prevost

This report gives an overview of our efforts towards a formalization for a food processing demonstrator plant. Our BeSpaceD framework is used for the formalization. The formalization comprises properties of components and relations between components. We present domain-specific constructs for the formalization of industrial automation facilities and provide some insights into the concrete food processing formalization. We are particularly interested in spatio-temporal and other physical characteristics. Relation- ships are formalized as graphs with annotated edges and components are represented as nodes.

SEDec 6, 2016
Spatio-temporal Models for Formal Analysis and Property-based Testing

Nasser Alzahrani, Maria Spichkova, Jan Olaf Blech

This paper presents our ongoing work on spatio-temporal models for formal analysis and property-based testing. Our proposed framework aims at reducing the impedance mismatch between formal methods and practitioners. We introduce a set of formal methods and explain their interplay and benefits in terms of usability.

SEFeb 29, 2016
Operators for Space and Time in BeSpaceD

Jan Olaf Blech, Keith Foster

In this report, we present some spatio-temporal operators for our BeSpaceD framework. We port operators known from functional programming languages such as filtering, folding and normalization on abstract data structures to the BeSpaceD specification language. We present the general ideas behind the operators, highlight implementation details and present some simple examples.

SEDec 15, 2015
An Example for BeSpaceD and its Use for Decision Support in Industrial Automation

Jan Olaf Blech

We describe our formal methods-based spatial reasoning framework BeSpaceD and its application in decision support for industrial automation. In particular we are supporting analysis and decisions based on formal models for industrial plant and mining operations. BeSpaceD is a framework for deciding geometric and topological properties of spatio-temporal models. We present an example and report on our ongoing experience with applications in different projects around software and cyber-physical systems engineering. The example features abstracted aspects of a production plant model. Using the example we motivate the use of our framework in the context of an existing software platform supporting monitoring, incident handling and maintenance of industrial automation facilities in remote locations.

SEApr 14, 2015
Analysis of Software Binaries for Reengineering-Driven Product Line ArchitectureâAn Industrial Case Study

Ian D. Peake, Jan Olaf Blech, Lasith Fernando et al.

This paper describes a method for the recovering of software architectures from a set of similar (but unrelated) software products in binary form. One intention is to drive refactoring into software product lines and combine architecture recovery with run time binary analysis and existing clustering methods. Using our runtime binary analysis, we create graphs that capture the dependencies between different software parts. These are clustered into smaller component graphs, that group software parts with high interactions into larger entities. The component graphs serve as a basis for further software product line work. In this paper, we concentrate on the analysis part of the method and the graph clustering. We apply the graph clustering method to a real application in the context of automation / robot configuration software tools.

SEOct 6, 2014
Cyber-Virtual Systems: Simulation, Validation & Visualization

Jan Olaf Blech, Maria Spichkova, Ian Peake et al.

We describe our ongoing work and view on simulation, validation and visualization of cyber-physical systems in industrial automation during development, operation and maintenance. System models may represent an existing physical part - for example an existing robot installation - and a software simulated part - for example a possible future extension. We call such systems cyber-virtual systems. In this paper, we present the existing VITELab infrastructure for visualization tasks in industrial automation. The new methodology for simulation and validation motivated in this paper integrates this infrastructure. We are targeting scenarios, where industrial sites which may be in remote locations are modeled and visualized from different sites anywhere in the world. Complementing the visualization work, here, we are also concentrating on software modeling challenges related to cyber-virtual systems and simulation, testing, validation and verification techniques for them. Software models of industrial sites require behavioural models of the components of the industrial sites such as models for tools, robots, workpieces and other machinery as well as communication and sensor facilities. Furthermore, collaboration between sites is an important goal of our work.

SEApr 14, 2014
BeSpaceD: Towards a Tool Framework and Methodology for the Specification and Verification of Spatial Behavior of Distributed Software Component Systems

Jan Olaf Blech, Heinz Schmidt

In this report, we present work towards a framework for modeling and checking behavior of spatially distributed component systems. Design goals of our framework are the ability to model spatial behavior in a component oriented, simple and intuitive way, the possibility to automatically analyse and verify systems and integration possibilities with other modeling and verification tools. We present examples and the verification steps necessary to prove properties such as range coverage or the absence of collisions between components and technical details.

SEApr 3, 2014
Towards Verifying Safety Properties of Real-Time Probabilistic Systems

Fenglin Han, Jan Olaf Blech, Peter Herrmann et al.

Using probabilities in the formal-methods-based development of safety-critical software has quickened interests in academia and industry. We address this area by our model-driven engineering method for reactive systems SPACE and its tool-set Reactive Blocks that provide an extension to support the modeling and verification of real-time behaviors. The approach facilitates the composition of system models from reusable building blocks as well as the verification of functional and real-time properties and the automatic generation of Java code. In this paper, we describe the extension of the tool-set to enable the modeling and verification of probabilistic real-time system behavior with the focus on spatial properties that ensure system safety. In particular, we incorporate descriptions of probabilistic behavior into our Reactive Blocks models and integrate the model checker PRISM which allows to verify that a real-time system satisfies certain safety properties with a given probability. Moreover, we consider the spatial implication of probabilistic system specifications by integrating the spatial verification tool BeSpaceD and give an automatic approach to translate system specifications to the input languages of PRISM and BeSpaceD. The approach is highlighted by an example.

SEJun 26, 2013
On Behavioral Types for OSGi: From Theory to Implementation

Jan Olaf Blech, Harald Rueß, Bernhard Schätz

This report presents our work on behavioral types for OSGi component systems. It extends previously published work and presents features and details that have not yet been published. In particular, we cover a discussion on behavioral types in general, and Eclipse based implementation work on behavioral types . The implementation work covers: editors, means for comparing types at development and runtime, a tool connection to resolve incompatibilities, and an AspectJ based infrastructure to ensure behavioral type correctness at runtime of a system. Furthermore, the implementation comprises various auxiliary operations. We present some evaluation work based on examples.

SEFeb 21, 2013
Towards a Framework for Behavioral Specifications of OSGi Components

Jan Olaf Blech

We present work on behavioral specifications of OSGi components. Our behavioral specifications are based on finite automata like formalisms. Behavioral specifications can be used to find appropriate components to interact with, detect incompatibilities between communication protocols of components and potential problems resulting from the interplay of non-deterministic component specifications. These operations can be carried out during development and at runtime of a system. Furthermore, we describe work carried out using the Eclipse based implementation of our framework.

SEJan 14, 2013
On Formal Reasoning on the Semantics of PLC using Coq

Jan Olaf Blech, Sidi Ould Biha

Programmable Logic Controllers (PLC) and its programming standard IEC 61131-3 are widely used in embedded systems for the industrial automation domain. We propose a framework for the formal treatment of PLC based on the IEC 61131-3 standard. A PLC system description typically combines code written in different languages that are defined in IEC 61131-3. For the top-level specification we regard the Sequential Function Charts (SFC) language, a graphical high-level language that allows to describe the main control-flow of the system. In addition to this, we describe the Instruction List (IL) language -- an assembly like language -- and two other graphical languages: Ladder Diagrams (LD) and Function Block Diagrams (FBD). IL, LD, and FBD are used to describe more low level structures of a PLC. We formalize the semantics of these languages and describe and prove relations between them. Formalization and associated proofs are carried out using the proof assistant Coq. In addition to this, we present work on a tool for automatically generating SFC representations from a graphical description -- the IL and LD languages can be handled in Coq directly -- and its usage for verification purposes. We sketch possible usages of our formal framework, and present an example application for a PLC in a project demonstrator and prove safety properties.

SEAug 13, 2012
Towards a Formalization of the OSGi Component Framework

Jan Olaf Blech

We present a formalization of the OSGi component framework. Our formalization is intended to be used as a basis for describing behavior of OSGi based systems. Furthermore, we describe specification formalisms for describing properties of OSGi based systems. One application is its use for behavioral types. Potential uses comprise the derivation of runtime monitors, checking compatibility of component composition, discovering components using brokerage services and checking the compatibility of implementation artifacts towards a specification.

SEMar 2, 2012
On Compositional Reasoning for Guaranteeing Probabilistic Properties

Jan Olaf Blech

We present a framework to formally describe probabilistic system behavior and symbolically reason about it. In particular we aim at reasoning about possible failures and fault tolerance. We regard systems which are composed of different units: sensors, computational parts and actuators. Considering worst-case failure behavior of system components, our framework is most suited to derive reliability guarantees for composed systems. The behavior of system components is modeled using monad like constructs that serve as an abstract representation for system behavior. We introduce rules to reason about these representations and derive results like guaranteed upper bounds for system failure. Our approach is characterized by the fact that we do not just map a certain component to a failure probability, but regard distributions of error behavior and their evolvement over system runs. This serves as basis for deriving probabilities of events, in particular failure probabilities. The work presented in this paper slightly extends a complete framework and a case study which has been previously published. One focus of this report is a more detailed explanation of definitions and a more comprehensive description of examples.

SEFeb 28, 2012
Reusing Test-Cases on Different Levels of Abstraction in a Model Based Development Tool

Jan Olaf Blech, Dongyue Mou, Daniel Ratiu

Seamless model based development aims to use models during all phases of the development process of a system. During the development process in a component-based approach, components of a system are described at qualitatively differing abstraction levels: during requirements engineering component models are rather abstract high-level and underspecified, while during implementation the component models are rather concrete and fully specified in order to enable code generation. An important issue that arises is assuring that the concrete models correspond to abstract models. In this paper, we propose a method to assure that concrete models for system components refine more abstract models for the same components. In particular we advocate a framework for reusing testcases at different abstraction levels. Our approach, even if it cannot completely prove the refinement, can be used to ensure confidence in the development process. In particular we are targeting the refinement of requirements which are represented as very abstract models. Besides a formal model of our approach, we discuss our experiences with the development of an Adaptive Cruise Control (ACC) system in a model driven development process. This uses extensions which we implemented for our model-based development tool and which are briefly presented in this paper.