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


Top Related