14 research outputs found
Input-output Conformance Testing for Channel-based Service Connectors
Service-based systems are software systems composed of autonomous components or services provided
by different vendors, deployed on remote machines and accessible through the web. One of the
challenges of modern software engineering is to ensure that such a system behaves as intended by its
designer. The Reo coordination language is an extensible notation for formal modeling and execution
of service compositions. Services that have no prior knowledge about each other communicate
through advanced channel connectors which guarantee that each participant, service or client, receives
the right data at the right time. Each channel is a binary relation that imposes synchronization
and data constraints on input and output messages. Furthermore, channels are composed together
to realize arbitrarily complex behavioral protocols. During this process, a designer may introduce
errors into the connector model or the code for their execution, and thus affect the behavior of a
composed service. In this paper, we present an approach for model-based testing of coordination
protocols designed in Reo. Our approach is based on the input-output conformance (ioco) testing
theory and exploits the mapping of automata-based semantic models for Reo to equivalent process
algebra specifications
Modeling and Simulation of Selected Operational IT Risks in the Banking Sector (Extended Version)
International banks need to estimate their operational risks due to external regulations. Based on their estimations they need to provide private capital to cover potential losses caused by these risks. Therefore, operational risks need to be properly measured and managed in order to reduce the required private capital. In this paper we discuss operational risks related to a typical banking business process that is enabled by an IT landscape. We present how risks related to the operational behavior of the IT landscape can be simulated. The simulation results help to estimate risk measures like the expected loss, the value-at-risk and the expected shortfall. We further sketch how co
Reo + mCRL2: A Framework for Model-checking Dataflow in Service Compositions
The paradigm of service-oriented computing revolutionized the field of software engineering. According to this paradigm, new systems are composed of existing stand-alone services to support complex cross-organizational business processes. Correct communication of these services is not possible without a proper coordination mechanism. The Reo coordination language is a channel-based modeling language that introduces various types of channels and their composition rules. By composing Reo channels, one can specify Reo connectors that realize arbitrary complex behavioral protocols. Several formalisms have been introduced to give semantics to Reo. In their most basic form, they reflect service synchronization and dataflow constraints imposed by connectors. To ensure that the composed system behaves as intended, we need a wide range of automated verification tools to assist service composition designers. In this paper, we present our framework for the verification of Reo using the toolset. We unify our previous work on mapping various semantic models for Reo, namely, constraint automata, timed constraint automata, coloring semantics and the newly developed action constraint automata, to the process algebraic specification language of , address the correctness of this mapping, discuss tool support, and present a detailed example that illustrates the use of Reo empowered with for the analysis of dataflow in service-based process models
Reo + mCRL2: A Framework for Model-Checking Dataflow in Service Compositions
The paradigm of service-oriented computing revolutionized the field of software
engineering. According to this paradigm, new systems are composed of existing
stand-alone services to support complex cross-organizational business
processes. Correct communication of these services is not possible without a
proper coordination mechanism. The Reo coordination language is a channel-based
modeling language that introduces various types of channels and their
composition rules. By composing Reo channels, one can specify Reo connectors
that realize arbitrary complex behavioral protocols. Several formalisms have
been introduced to give semantics to Reo. In their most basic form, they
reflect service synchronization and dataflow constraints imposed by connectors.
To ensure that the composed system behaves as intended, we need a wide range of
automated verification tools to assist service composition designers. In this
paper, we present our framework for the verification of Reo using the mCRL2
toolset. We unify our previous work on mapping various semantic models for Reo,
namely, constraint automata, timed constraint automata, coloring semantics and
the newly developed action constraint automata, to the process algebraic
specification language of mCRL2, address the correctness of this mapping,
discuss tool support, and present a detailed example that illustrates the use
of Reo empowered with mCRL2 for the analysis of dataflow in service-based
process models
Compositional workflow modeling with priority constraints
Priority is an important concept in Business Process Management (BPM), useful in the context of workflow patterns such as, e.g., cancelable and compensable tasks within business transactions. Unfortunately, the presence of priority in workflows makes them difficult to be analyzed formally by automated validation and verification tools. In the past, we demonstrated that the Reo coordination language can be successfully used for modeling, automatic validation and model checking of process models. In this paper, we propose a constraint-based approach to formalize priority in Reo. We introduce special channels to initiate, propagate, and block priority flows, define their semantics as constraints, and model priority propagation as a Constraint Satisfaction Problem (CSP). The semantic extension we propose in this paper enables workflow analysis in presence of priority constraints
Applying Reo to Service Coordination in Long-Running Business Transactions
Ensuring transactional behavior of business processes and web service compositions is an essential issue in the area of service-oriented computing. Transactions in this context may require long periods of time to complete and must be managed using non-blocking techniques. Compensations are activities executed to preserve data integrity and eliminate the effects of a process terminated by a user or that failed to complete due to another reason. This paper presents an approach to formal modeling of long-running business transactions. Our solution is based on the channel-based exogenous coordination language Reo, which is an expressive, compositional and semantically precise design language that admits formal reasoning. We illustrate how Reo can be used for termination and compensation handling in a number of commonly-used workflow patterns, including sequential and parallel compositions, discriminator choice and concurrent flows with link dependencies
Constreofy tool
Constreofy is a tool-set that obtains the formal semantics of a Reo network by utilizing constraint satisfaction techniques. It works by constructing a constraint satisfaction problem from the conjunction of the constraints, which describe the behavior of a Reo element and by using REDUCE Algebra system to solve the constraints. Then, it builds an automaton, which visualizes the solutions to the constraint. It uses GraphViz to represent the automaton
Data-Aware Design and Verification of Service Compositions with Reo and mCRL2
Service-based systems can be modeled as stand-alone services
coordinated by external connectors. Reo is a channelbased
coordination language with well-defined semantics that
enables a compositional construction of complex connectors
from a set of primitive channels. It has been successfully
applied in the area of web service composition specification
as well as in business process modeling. In this paper, we
present a mapping from Reo to mCRL2, a specification language
based on the process algebra ACP, extended with
data and time. The mapping enables verification of Reo
process models and service compositions using the mCRL2
model checking facilities. The supporting Eclipse Coordination
Tools suite provides a user-friendly environment for the
modeling and verification process
Time and Data Aware Analysis of Graphical Service Models in Reo
Reo is a graphical channel-based coordination language
that enables the modeling of complex behavioral protocols
using a small set of channel types with well-defined
behavior. Reo has been developed for the coordination of standalone components and services, which makes it suitable for the modeling of service-based business processes. The formal semantic models for Reo lay the grounds for computer-aided analysis of different aspects of Reo diagrams, including their animation, simulation and verification of control flow and data flow by means of model checking techniques. In this paper, we discuss the verification of data aware Reo process models using the mCRL2 model checking toolset including time analysis. We also show how behavior abstraction can be used to minimize Reo process models and generate smaller mCRL2 specifications. A detailed auction example illustrates our approach to timeaware modeling and
Verification of Context-Dependent Channel-Based Service Models
The paradigms of service-oriented computing and model-driven
development are becoming of increasing importance in the eld
of software engineering. According to these paradigms, new systems are composed with added value from existing stand-alone services to support business processes across organizations. Services comprising a system but originating from various sources need to be coordinated. The Reo coordination language is a state-of-the-art computer supported approach to channel-based coordination. Reo introduces various types of channels which can be composed to build complex connectors to represent various behavioral protocols. This makes Reo suitable for the modeling of service-based business processes. In previous work we presented a framework for model checking data-aware Reo connectors using the mCRL2 toolset. In this paper, we extend this result with a proof of correctness, evaluation of optimization t