72 research outputs found
Deadlock detection of active objects with synchronous and asynchronous method calls
Open distributed systems are essential in today’s softwaresolutions. However, not all programming paradigms providenatural support for such systems. The setting of concurrentobjects is attractive since it supports independent units ofcomputation. In particular we consider concurrent objectscommunicating by asynchronous method calls supporting non-blocking as well as blocking method calls. In this settingwaiting time can be reduced, allowing efficient cooperationbetween objects. With this concurrency model, deadlock isavoided if blocking calls are avoided. However, blocking callsare sometimes needed to control the order of computation. Thenon-hierarchical nature of concurrent objects systems gives riseto non-trivial deadlock situations. Deadlocks may occur if thereis a call chain with at least one blocking call.We propose amethod for static detection of deadlocks, and demonstrate itsuse on a non-trivial example
CaSPL-gen: a Context-aware Software Product Line benchmark generator
Software Product Lines (SPLs) are a mechanism for large-scale reuse where families of related software systems are represented in terms of commonalities and variabilities, e.g., using Feature Models (FMs). Context- aware SPL have been proposed to model and deal with dynamic systems whose behavior and properties depend on the context where they are deployed and executed. Due to the novelty of approach, no existing benchmarks of context-aware SPL are available. In this paper we overcome this limitation by introducing CaSPL-gen, i.e., the first benchmark generator tool able to generate random instances of context-aware SPL
Automatic Parameter Optimisation of Service Quality and Resource Usage
Developers use models to design real world distributed applications that often are subject to Service Level Agreements to find a good balance between the quality of the service and its resource usage. Executable models has been used to observe and study such applications using, e.g., the Real Time ABS language, an executable and object-oriented modelling language.For complex models, due to the high number and dependencies between the parameters, it is very difficult to understand the best possible setting that leads the system towards a desired quality of service, while minimising the usage of computing resources. In this work we present POPT, a parameter optimiser tool that starting from Real Time ABS models, by using AI techniques, searches in an automatic way for the best possible setting to satisfy the developer’s expectations
Automatic translation from FBD-PLC-programs to NuSMV for model checking safety-critical control systems
Programmable logic
controllers (PLCs) are digital control systems, commonly used in industrial automation and
safety-critical applications. Control systems used in
safety-critical areas must undergo an extensive and
thorough certification and verification process. In
safety-critical applications, the PLC programming
standard IEC 61131-3 is widely accepted in
industry. PLC programmers who develop control
systems for safety-critical systems are often required
to verify the logic of PLCs by using formal methods
such as model checking. Translating manually from a
PLC program to the input language of a model checker
takes times and is often error-prone.
We develop a compiler to automatically translate PLC programs in the function block diagram (FBD) language, one of five industry standard PLC programming notations, to the input language of the model checker NuSMV. We have evaluated correctness, robustness, and performance of the PLC-NuSMV compiler using a case study. Evaluation results show that the compiler can translate the PLC programs correctly. The compiler can also identify several input errors and can scale to relative large PLC programs
Towards a Multi Metamodelling Approach for Developing Distributed Healthcare Applications
Model Driven Engineering (MDE) uses formal methods to build mathematically rigorous models of complex systems. Metamodelling plays an important role in MDE as it is used to specify domain specific modelling languages. However, the potential of metamodelling has not been fully explored. Current approaches of MDE are often at a low level of abstraction and lack domain concepts for specifying behavior. In previous work, we proposed a multi metamodelling approach that captures the complexity of systems by using a metamodelling hierarchy, built from individually defined metamodels, each capturing different aspects of a healthcare domain. In this paper, we focus on modelling distributed healthcare applications and present an example from the healthcare domain. We address certain modelling aspects related to distributed applications such as process modelling, using message passing communication, and coordination of processes and resources
Modeling and Simulation of Spark Streaming
As more and more devices connect to Internet of Things, unbounded streams of
data will be generated, which have to be processed "on the fly" in order to
trigger automated actions and deliver real-time services. Spark Streaming is a
popular realtime stream processing framework. To make efficient use of Spark
Streaming and achieve stable stream processing, it requires a careful interplay
between different parameter configurations. Mistakes may lead to significant
resource overprovisioning and bad performance. To alleviate such issues, this
paper develops an executable and configurable model named SSP (stands for Spark
Streaming Processing) to model and simulate Spark Streaming. SSP is written in
ABS, which is a formal, executable, and object-oriented language for modeling
distributed systems by means of concurrent object groups. SSP allows users to
rapidly evaluate and compare different parameter configurations without
deploying their applications on a cluster/cloud. The simulation results show
that SSP is able to mimic Spark Streaming in different scenarios.Comment: 7 pages and 13 figures. This paper is published in IEEE 32nd
International Conference on Advanced Information Networking and Applications
(AINA 2018
Geological Multi-scenario Reasoning
In the oil and gas industry, during exploration prospect assessment, explorationists rely on ad hoc manual work practices and tools for developing and communicating multiple hypothetical geological scenarios of the prospect. This leaves them with little efficient means to make the fullest use of state of the art digital technologies to communicate and systematically compare and assess different hypothetical geological scenarios before deciding which scenario to pursue. In this paper, we present a formal framework for geological multi-scenario reasoning, a novel tool-based method for geologically oriented subsurface evaluation. The methodology applies formal methods and logic-based techniques to subsurface evaluation and expresses interpretive uncertainty as discrete scenarios with branches of potential alternatives. This framework consists of (i) a proto-scenario generator that takes user observations and geological evidence as input and generates semantically valid initial states based on formalized geological knowledge in first-order logic (ii) geological processes formalized as a rewrite theory that are executable in Maude. By applying geological rewrite rules onto the proto-scenarios, we are able to assist explorationists with multi-scenario generation and reasoning beyond human capacity
Consistency-Preserving Evolution Planning on Feature Models
A software product line (SPL) enables large-scale reuse in a family of related software systems through configurable features. SPLs represent a long-term investment so that their ongoing evolution becomes paramount and requires careful planning. While existing approaches enable to create an evolution plan for an SPL on feature-model (FM) level, they assume the plan to be rigid and do not support retroactive changes. In this paper, we present a method that enables to create and retroactively adapt an FM evolution plan while preventing undesired impacts on its structural and logical consistency. This method is founded in structural operational semantics and linear temporal logic. We implement our method using rewriting logic, integrate it within an FM tool suite and perform an evaluation using a collection of existing FM evolution scenarios
- …