Valutazione delle prestazioni di Architetture Software con specifica UML tramite modelli di simulazione

Moreno Marzolla

Dipartimento di Informatica

Università “Ca' Foscari” di Venezia

marzolla@dsi.unive.it

Where performances can be evaluated?

System and

Software design

Requirements

Definition

Implementation

and unit testing

Integration and

system testing

Operation and

maintenance

Model-based

Performance

Evaluation

Measurement-based

Performance Evaluation

General Software Performance Modeling

Software

Model

Performance

Model

Results

and

Feedback

Model

Evaluation

UML-Ψ

The approach

Software

Model

Performance

Results

UML

Model

Simulation

Model

Simulation

Program

Modeling

Algorithm

Feedback

Model

Impl.

UML

UML is a graphical modeling notation

Widely used to describe Object-Oriented software systems

Informally specified

Provides several types of diagrams

Use Case

Deployment

Activity

State

Class / Package

Collaboration

Sequence

Performance Model in UML

Workloads

Actions

Resources

Model Generation

UML Model

Use Case
Diagrams

Activity
Diagrams

Deployment
Diagrams

Tagged
Values

Performance
Model

Workloads

Processing

Steps

Resources

Model

Parameters

Simulation

Results

What we have done

We described how performance analysis can be done at the SA design level

A UML profile has been defined for adding quantitative annotations to UML models

We define a process-oriented simulation model of a SA

A prototype tool (UML-Ψ) has been developed

Parses annotated UML diagrams saved in XMI format

Generates simulation model

Executes simulation and reports feedback

Current Research

UML 2.0 becoming an adopted specification right now

More formally specified

Could help in validating the simulation model

Simulation model validation answers the question “are we building the right model?”

Simulation model verification answers the question “are we building the model right?”

Integrated UML-based performance and mobility modeling

Preliminary work presented at ESMc'03

Mobility and Performance Modeling
with UML

Integrated UML performance and mobility modeling

Description of all the mobility scenarios / behaviors could be too verbose

More compact notation

“Template” mechanism

There does not exist a standard “UML profile for mobility”, BUT...

There is a very interesting proposal from uniroma2 which definitely should be considered

More UML profiles

We focused on performance modeling only

Consider other properties as well

A good candidate may be UML reliability modeling

Work by Vittorio Cortellessa

To be done

Define a UML profile for expressing informations related to reliability and fault tolerance

Derive a (simulation?) reliability model, as we already do for the performance model

Tricky: simulation of rare events, must be handled with suitable techniques

Simulation tool integration

Integrate different tools into a unified framework

Performs different kind of analysis (performance, reliability, dependability...)

Derives multiple models

Queuing-network based

Simulation

...

Relevant publications

S. Balsamo, M. Grosso and M. Marzolla. Towards Simulation-Based Performance Modeling of UML specifications, Technical Report CS-2003-2, Jan 2003, Dip. di Informatica, Università Ca' Foscari di Venezia.

S. Balsamo and M. Marzolla. Simulation Modeling of UML Software Architectures Proc. ESM'03, Nottingham (UK), Jun 9—11 2003, pp. 562—567

S. Balsamo and M. Marzolla. A Simulation-Based Approach to Software Performance Modeling. Proc. ESEC/FSE 2003, Helsinki (FI), Sep 1—5 2003, pp. 363-366

S. Balsamo and M. Marzolla. Towards Performance Evaluation of Mobile Systems in UML. Proc. ESMc'03, Napoli (IT), Oct 27—29 2003, pp. 61—68

S. Balsamo, A. Di Marco, P. Inverardi and M. Marzolla. Experimenting Different Software Architectures Performance Techniques: A Case Study. Proc. WOSP 2004, Redwood Shores (CA), Jan 14—16 2004

M. Marzolla, Simulaion-Based Performance Modeling of UML Software Architectures, PhD Thesis, Dipartimento di Informatica, Università Ca' Foscari di Venezia

S. Balsamo and M. Marzolla, Performance Modeling of Software Architectures based on UML and simulation (in preparation)

All available on http://www.dsi.unive.it/~marzolla/publications.html

2003-11-14T11:12:33