integrating uml and petri nets

22
Integrating UML and Petri Nets • Problem with Current Software Engineering Methodology • Stochastic Petri nets and their useful properties • Translating UML diagrams into SPNs (Mail client case study) Topics: Work of Javier Campos and Jose Merseguer presented by Stephen Rojcewicz

Upload: theo

Post on 24-Jan-2016

49 views

Category:

Documents


0 download

DESCRIPTION

Integrating UML and Petri Nets. Topics:. Problem with Current Software Engineering Methodology Stochastic Petri nets and their useful properties Translating UML diagrams into SPNs (Mail client case study). Work of Javier Campos and Jose Merseguer presented by Stephen Rojcewicz. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Integrating UML and Petri Nets

Integrating UML and Petri Nets

• Problem with Current Software Engineering Methodology

• Stochastic Petri nets and their useful properties

• Translating UML diagrams into SPNs (Mail client case study)

Topics:

Work of Javier Campos and Jose Merseguer presented by Stephen Rojcewicz

Page 2: Integrating UML and Petri Nets

Problem with Current Practices

• Early in development, the focus is on functionality

• Performance objectives are set aside for later evaluation, usually with benchmarks.

• RESULT: Waste time redesigning, or fail to meet the performance objectives

• Example: Denver Airport’s notorious project failure

Page 3: Integrating UML and Petri Nets

What is Needed

• A convenient way to compare the performance of Different basic designs early in development

• If it is possible to directly observe the prototype, it is already too late. Hence, we MUST use MODELING

Page 4: Integrating UML and Petri Nets

Proposed Solution

• UML is convenient and widely used in early stages of development

• BUT, UML is too static to model performance

• Introduce performance modeling tools that can be used with UML

Page 5: Integrating UML and Petri Nets

Motivation for Petri Nets

• Concurrent execution

• Distributed Systems

• Non determinism

• Simplicity

• Visual Representation

Page 6: Integrating UML and Petri Nets

Translate UML into Petri Nets

• Statecharts and activity diagrams are good candidates

Page 7: Integrating UML and Petri Nets

Target: Stochastic Petri Net

• Models probability of events with respect to TIME

• Transitions have a DELAY

• Developed to model Continuous Time Markov Chains (probabilistic timed state-transition model)

Page 8: Integrating UML and Petri Nets

Computable Properties of a Stochastic PN

• Probability that a certain marking occurs

• Average number of tokens in a certain place

• Average number of times a certain transition fires per unit time

• Average time for a token to traverse a certain subset of the SPN (Extremely powerful in performance evaluation)

Page 9: Integrating UML and Petri Nets

Case Study: Mail Client

Page 10: Integrating UML and Petri Nets

Mail Client: UML Statechart

Page 11: Integrating UML and Petri Nets

Mail Client: Stochastic PN

Page 12: Integrating UML and Petri Nets

Mail Client: UML Statechart

Page 13: Integrating UML and Petri Nets

Mail Client: Stochastic PN

Page 14: Integrating UML and Petri Nets

Associate Activities with Transitions

• A transition’s firing delay corresponds to the time required to complete the activity

• When the transition fires, the activity is completed

• An active transition that becomes inactive models the interruption of an activity.

Page 15: Integrating UML and Petri Nets

Authentication: UML Activity Diagram

Page 16: Integrating UML and Petri Nets

Corresponding SPN

Page 17: Integrating UML and Petri Nets

Mail Client UML Sequence Diagram

E_open_tcp-connection is an ACTION and has a corresponding FIRING DELAY

Page 18: Integrating UML and Petri Nets

Performance data derived from stochastic Petri nets

Page 19: Integrating UML and Petri Nets

ArgoSPE• A tool that translates UML diagrams into

Stochastic Petri nets for performance analysis

• Built In performance analysis functions

Page 20: Integrating UML and Petri Nets

Summary: Software Performance Engineering

Process• Step1: Model the system using traditional

UML

• Step2: Translate the UML diagrams into Stochastic Petri nets

• Step3: Use the well-defined mathematical properties of Stochastic Petri nets to evaluate the performance of the system.

Page 21: Integrating UML and Petri Nets

Related Work: examples

• Translating UML statecharts and collaboration models into a Colored Petri Net

• Translating use case, collaboration, and class diagrams into CPNs. Use of CPN to verify correctness.

• Hierarchical and object oriented petri nets (Classes represented by subnets)

Page 22: Integrating UML and Petri Nets

ReferencesCampos, J., Merseguer, J.: On the integration of UML and Petri nets insoftware development. Lecture Notes In Computer Science. (2006)

Marsan, M. Ajmone: Stochastic Petri Nets: An Elementary Introduction. Advances in Petri Nets. (1989)

Rajabi, B., Lee, S.: A Study of the Software Tools Capabilities in Translating UML Models to PN Models. International Journal of Intelligent Information Technology Application, 2009, 2(5):224-228