Results 1 
5 of
5
Runtime Monitoring of Web Service Conversations
, 2009
"... For a system of distributed processes, correctness can be ensured by (statically) checking whether their composition satisfies properties of interest. However, Web services are distributed processes that dynamically discover properties of other Web services. Since the overall system may not be avai ..."
Abstract

Cited by 12 (5 self)
 Add to MetaCart
(Show Context)
For a system of distributed processes, correctness can be ensured by (statically) checking whether their composition satisfies properties of interest. However, Web services are distributed processes that dynamically discover properties of other Web services. Since the overall system may not be available statically and since each business process is supposed to be relatively simple, we propose to use runtime monitoring of conversations between partners as a means of checking behavioral correctness of the entire Web service system. Specifically, we identify a subset of UML 2.0 Sequence Diagrams as a property specification language and show that it is sufficiently expressive for capturing safety and liveness properties. By transforming these diagrams to automata, we enable conformance checking of finite execution traces against the specification. We show how our language can be used to specify the Specification Property System (SPS) [1]. We describe an implementation of our approach as part of an industrial system. Finally, we discuss our experience of specifying and monitoring a number of properties from three existing applications.
An approach to formalize UML sequence diagrams in CSP.
 International Proceedings of Computer Science and Information Technology
, 2010
"... AbstractUML sequence diagrams are widely used in modeling system behaviors in the early design phases of software development. In order to support formal model verification and refinement, sequence diagrams need to be formalized in a formal language. In this paper, we propose an approach to forma ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
(Show Context)
AbstractUML sequence diagrams are widely used in modeling system behaviors in the early design phases of software development. In order to support formal model verification and refinement, sequence diagrams need to be formalized in a formal language. In this paper, we propose an approach to formalize UML sequence diagrams in CSP (communicating and sequential processes) in order to use FDR, a model checking tool, for system analysis and verification. In the approach, we construct a CSP process for each lifeline of the sequence diagram by extracting messages and combined fragments covered by the lifeline, and sequencing them in time order. A message's sending or receiving event is converted to a CSP event. Combined fragments are transformed to condition operators or external choices. We define channels for passing messages between two processes. Through parallel composition of processes using events occur in channels as their alphabets, we build the CSP model for the sequence diagram. A tool based on XSLT has been developed to support the approach.
Statechartable Petri nets
, 2013
"... Abstract. Petri nets and statecharts can model concurrent systems in a succinct way. While translations from statecharts to Petri nets exist, a welldefined translation from Petri nets to statecharts is lacking. Such a translation should map an input net to a corresponding statechart, having a stru ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
(Show Context)
Abstract. Petri nets and statecharts can model concurrent systems in a succinct way. While translations from statecharts to Petri nets exist, a welldefined translation from Petri nets to statecharts is lacking. Such a translation should map an input net to a corresponding statechart, having a structure and behaviour similar to that of the input net. Since statecharts can only model a restricted form of concurrency, not every Petri net has a corresponding statechart. We identify a class of Petri nets, called statechartable nets, that can be translated to corresponding statecharts. Statechartable Petri nets are structurally defined using the novel notion of an area. We also define a structural translation that maps each statechartable Petri net to a corresponding statechart. The translation is proven sound and complete for statechartable Petri nets.
A Model Driven Approach to the Analysis of Timeliness Properties
"... Abstract. The need for a design language that is rigorous but accessible and intuitive is often at odds with the formal and mathematical nature of languages used for analysis. UML and Petri Nets are a good example of this dichotomy. UML is a widely accepted modelling language capable of modelling th ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
(Show Context)
Abstract. The need for a design language that is rigorous but accessible and intuitive is often at odds with the formal and mathematical nature of languages used for analysis. UML and Petri Nets are a good example of this dichotomy. UML is a widely accepted modelling language capable of modelling the structural and behavioural aspects of a system. However UML lacks the mathematical foundation that is required for rigorous analysis. Petri Nets on the other hand have a strong mathematical base that is well suited for analysis of a system but lacks the appeal and easeofuse of UML. Design in UML languages such as Sequence Diagrams and analysis in Petri Nets require on one hand some expertise in potentially two incompatible systems and their tools, and on the other a seamless transition from one system to the other. One way of addressing this impediment is to focus the software development mainly on the design language system and to facilitate the transition to the formal analysis by means of a combination of automation and tool support. The aim of this paper is to present a transformation system, which takes UML Sequence Diagrams augmented with time constraints and generates semantically equivalent Petri Nets that preserve the timing requirements. A case study on a small network is used in order to illustrate the proposed approach and in particular the design, the transformation and the analysis processes. 1
Model Interoperability via Model Driven Development
"... It is widely recognised that software development is a complex process. Among the factors that contribute to its inherent complexity is the gap between the design and the formal analysis domains. Software design is often considered a human oriented task while the analysis phase draws on formal repre ..."
Abstract
 Add to MetaCart
(Show Context)
It is widely recognised that software development is a complex process. Among the factors that contribute to its inherent complexity is the gap between the design and the formal analysis domains. Software design is often considered a human oriented task while the analysis phase draws on formal representation and mathematical foundations. An example of this dichotomy is the use of UML for the software design phase and Petri Nets for the analysis; a separation of concerns that leads to the creation of heterogeneous models. Although UML is widely accepted as a language that can be used to model the structural and behavioural aspects of a system, its lack of mathematical foundations is seen as a serious impediment to rigorous analysis. Petri Nets on the other hand have a strong mathematical basis that is well suited for formal analysis; they lack however the appeal and the easeofuse of UML. A pressing concern for software developers is how to bridge the gap between these domains and allow for model interoperability and the integration of different toolsets across them, and thus reduce the complexity of the software development process. The aim of this paper is to present a Model Driven Development (MDD) model transformation which supports a seamless transition between UML and Petri Nets. This is achieved by model interoperability between UML Sequence