integrating uml and petri nets
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 PresentationTRANSCRIPT
![Page 1: Integrating UML and Petri Nets](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/1.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/2.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/3.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/4.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/5.jpg)
Motivation for Petri Nets
• Concurrent execution
• Distributed Systems
• Non determinism
• Simplicity
• Visual Representation
![Page 6: Integrating UML and Petri Nets](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/6.jpg)
Translate UML into Petri Nets
• Statecharts and activity diagrams are good candidates
![Page 7: Integrating UML and Petri Nets](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/7.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/8.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/9.jpg)
Case Study: Mail Client
![Page 10: Integrating UML and Petri Nets](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/10.jpg)
Mail Client: UML Statechart
![Page 11: Integrating UML and Petri Nets](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/11.jpg)
Mail Client: Stochastic PN
![Page 12: Integrating UML and Petri Nets](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/12.jpg)
Mail Client: UML Statechart
![Page 13: Integrating UML and Petri Nets](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/13.jpg)
Mail Client: Stochastic PN
![Page 14: Integrating UML and Petri Nets](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/14.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/15.jpg)
Authentication: UML Activity Diagram
![Page 16: Integrating UML and Petri Nets](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/16.jpg)
Corresponding SPN
![Page 17: Integrating UML and Petri Nets](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/17.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/18.jpg)
Performance data derived from stochastic Petri nets
![Page 19: Integrating UML and Petri Nets](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/19.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/20.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/21.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062305/56815255550346895dc0891c/html5/thumbnails/22.jpg)
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