UML based Modeling and Performance Evaluation of Mobile Systems - PowerPoint PPT Presentation

About This Presentation
Title:

UML based Modeling and Performance Evaluation of Mobile Systems

Description:

Title: UML based Modeling and Performance Evaluation of Mobile Systems Author: AS Last modified by: AS Created Date: 9/20/2004 1:28:27 PM Document presentation format – PowerPoint PPT presentation

Number of Views:76
Avg rating:3.0/5.0
Slides: 26
Provided by: AS15
Category:

less

Transcript and Presenter's Notes

Title: UML based Modeling and Performance Evaluation of Mobile Systems


1
UML based Modeling and Performance Evaluationof
Mobile Systems
  • Vincenzo Grassi1,Raffaela Mirandola2,Antonino
    Sabetta1
  • (1) Università di Roma Tor Vergata, Italy
    vgrassisabetta_at_info.uniroma2.it
  • (2) Politecnico di Milano, Italy
  • mirandola_at_elet.polimi.it

VIII Workshop PISATEL 6 dicembre 2005, Pisa
2
Outline
  • Introduction motivation, previous work, approach
  • Modeling mobility
  • Physical mobility locations and moving locations
  • Logical mobility mobile software components
  • Dynamics of mobility ltltMobilityManagergtgt
  • Modeling performance
  • Annotated UML models SPT Mobility profile
  • Representing mobile code paradigms in UML
  • Code On Demand (COD)
  • Remote Evaluation (REV)
  • Mobile Agent (MA)
  • Performance Analysis based on UML models an
    example
  • Conclusion

3
Modeling mobility related work
  • previous work
  • UML-based modeling
  • Class and Activity Diagram extension
    Baumeister, Koch, Kosiuczenko, Wirsing 2002
    Sequence Diagram extension Kosiuczenko 2003
    Activity Diagrams based Balsamo, Marzolla
    2003
  • formal languages
  • p-calculus Milner 1999 ambient calculus
    Cardelli, Gordon 1998 Klaim De Nicola,
    Ferrari, Pugliese, Venneri 1998 mobile Unity
    Picco, Roman, McCann 2001

4
Motivation and approach
  • Why modeling mobility and performance in UML?
  • Wide user- and tool-base
  • Extensibility
  • Model Driven approach
  • On the other hand.
  • The UML standard specification does not natively
    support modeling mobility
  • Guidelines for our approach
  • "separation of concerns
  • models of mobility (both physical and logical)
    separated from models of the application logic
    and of the system structure
  • ease plug-and-play of different mobility
    policies at the application modeling level, to
    support what if experiments
  • usability
  • lightweight UML extension
  • compliant with the UML 2.0 specification
  • only requires UML 2.0 compliant tools

5
Outline
  • Introduction motivation, previous work, approach
  • Modeling mobility
  • Physical mobility locations and moving locations
  • Logical mobility mobile software components
  • Dynamics of mobility ltltMobilityManagergtgt
  • Modeling performance
  • Annotated UML models SPT Mobility profile
  • Representing mobile code paradigms in UML
  • Code On Demand (COD)
  • Remote Evaluation (REV)
  • Mobile Agent (MA)
  • Performance Analysis based on UML models an
    example
  • Conclusion

6
Representing locations
  • locations
  • basic model a nesting relationship between an
    entity and some container
  • B is located at A

A
B
  • location change
  • a modification of a nesting ("located at")
    relationship
  • C is located at A ? C is located at B

B
A
C
  • What are locations?
  • Physical places (rooms, buldings, vehicles,
    persons,.)
  • Execution environments (PCs, PDAs,..)
  • What do they contain?
  • Physical places contain other physical places or
    execution env.
  • Execution environments contain software entities
    (agents, mobile components, code fragments...)

7
Representing Locations with theUML Profile for
Mobility
ltltPlacegtgt Room_C Room
ltltPlacegtgt Room_A Room
ltltPlacegtgt Room_B Room
ltltNodeLocationgtgt
ltltNodeLocationgtgt
ltltMobilegtgt ltltPlacegtgt Mary Person
ltltNodeLocationgtgt
ltltMobilegtgt ltltExecEnvgtgt MyPda PDA
ltltNodeLocationgtgt
Room_B
Room_A
Room_C
Mary
MyPda
8
Adding Dynamics to the Model
ltltplacegtgt Home
ltltplacegtgt Office
  • MobilityManagers encapsulate all the mobility
    logic, keeping it strictly separate from the
    application logic
  • different mobility managers can be modularly
    plugged into the same system model, to describe
    different mobility scenarios and strategies
  • mainly a modeling abstraction, not necessarily a
    real entity

ltltNodeLocationgtgt
ltltmobilegtgt ltltplacegtgt Mary Person
ltltNodeLocationgtgt
ltltNodeLocationgtgt
ltltplacegtgt MyPda PDA
ltltMobilityManagergtgt Mary_MobMan
/ltltmoveActivitygtgtgo(Mary, Office)
/ ltltmoveActivitygtgtgo(Mary, Home)
9
Representing Code Mobility (I)
ltltplacegtgt Home Room
ltltplacegtgt Office Room
ltltNodeLocationgtgt
ltltmobilegtgt ltltplacegtgt Mary Person
ltltNodeLocationgtgt
ltltNodeLocationgtgt
ltltExecEnvgtgt MyPda PDA
ltltExecEnvgtgt srv Server
C1 Comp
ltltMobileCodegtgt C3 Comp
C4 Comp
C2 Comp
10
Representing Code Mobility (II)
Structural model
ltltExecEnvgtgt MyPda PDA
ltltExecEnvgtgt srv Server
ltltCurrentDeploymentgtgt
ltltAllowedDeploymentgtgt
ltltMobileCodegtgt C2 Comp
C1 Comp
MyPda.locatedAt (Home) event_E1 / ltltMovegtgt
REV(C1, somewhere)
Behavioral model
State B
State A
MyPda.locatedAt (Office) Event 4 / ltltMovegtgt
SomeMigrationAct( )
SomeCondition Event 3 /
SomeCondition Event 2 /
State C
State D
C1.CurrentDeployment.BatteryLevel lt 25
event_E2 / ltltMovegtgt MA(C1, somewhere_else)
11
Outline
  • Introduction motivation, previous work, approach
  • Modeling mobility
  • Physical mobility locations and moving locations
  • Logical mobility mobile software components
  • Dynamics of mobility ltltMobilityManagergtgt
  • Modeling performance
  • Annotated UML models SPT Mobility profile
  • Representing mobile code paradigms in UML
  • Code On Demand (COD)
  • Remote Evaluation (REV)
  • Mobile Agent (MA)
  • Performance Analysis based on UML models an
    example
  • Conclusion

12
Annotating UML modelswith performance
characteristics
  • Adding performance annotations from the UML
    Profile for Schedulability, Performance and Time
    (SPT)

Node PAhost, PAresource PArate
PhysicalMove PAstep PAdelay PAprob
LogicalMove PAstep PAdemand
Move
ltltExecEnvgtgt MyPda PDA
ltltPAhostgtgt PArate ..
ltltPAstepgtgt PAdelay .. PAprob
ltltPAstepgtgt PAdemand ..
ltltPlacegtgt Destination
ltltExecEnvgtgt DestinationNode
ltltPhysicalMovegtgt Move
ltltLogicalMovegtgt REV
ltltMobileElementgtgt EntityToMove
ltltMobileCodegtgt Component
13
Outline
  • Introduction motivation, previous work, approach
  • Modeling mobility
  • Physical mobility locations and moving locations
  • Logical mobility mobile software components
  • Dynamics of mobility ltltMobilityManagergtgt
  • Modeling performance
  • Annotated UML models SPT Mobility profile
  • Representing mobile code paradigms in UML
  • Code On Demand (COD)
  • Remote Evaluation (REV)
  • Mobile Agent (MA)
  • Performance Analysis based on UML models an
    example
  • Conclusion

14
Modeling mobile code paradigms
  • standard paradigms to architect mobile code
    based applications
  • Fuggetta, Picco, Vigna - IEEE Trans. on Sw.
    Eng., 1998
  • stateless code mobility
  • code on demand (COD)
  • remote evaluation (REV)
  • codestate mobility
  • mobile agent (MA)

both can be seen as location aware extensions
of the client-server (CS) paradigm
15
From Client Server to Code On Demand
ltltLogicalMovegtgt COD(CodeToMigrate)
Invoke
Use Results
Local Execution Environment
Remote Execution Environment
16
Modeling the Remote Evaluation paradigm
ltltLogicalMovegtgt REV(CodeToMigrate,Destination)
Invoke
Use Results
Local Execution Environment
Remote Execution Environment
17
Mobile Agents
ltltPlacegtgt Destination
ltltLogicalMovegtgt MA(Destination)
ltltPAstepgtgt PAdemand .f(M)
Invoke
Here the semantics of the ltltMoveActivitygtgt is
different from that in the COD and REV
examples! In this case the state moves, not only
the code!
ltltBeforeMovegtgt Prepare To Migrate
ltltAfterMovegtgt PrepareToExec
ltltLogicalMovegtgt Migrate Code
ltltMobileCodegtgt SomeComponent
ltltMobileCodegtgt SomeComponent
Do Service
ltltPAstepgtgt PAdemand .f(M)
ltltPAstepgtgt PAdemand .f(M)
Use Results
Local Execution Environment
Remote Execution Environment
18
Outline
  • Introduction motivation, previous work, approach
  • Modeling mobility
  • Physical mobility locations and moving locations
  • Logical mobility mobile software components
  • Dynamics of mobility ltltMobilityManagergtgt
  • Modeling performance
  • Annotated UML models SPT Mobility profile
  • Representing mobile code paradigms in UML
  • Code On Demand (COD)
  • Remote Evaluation (REV)
  • Mobile Agent (MA)
  • Performance Analysis based on UML models an
    example
  • Conclusion

19
Case study picture retrieval system (I)
ltltPAstepgtgt PAdemand (ass, mean, f(r))
Send request for pictures
ltltPAstepgtgt PArep N
Retrieve pictures
User
PictureAgent
20
Case study picture retrieval system (II)
ltltPAcontextgtgt Select Pictures doFilter true
ltltPAstepgtgt PAdemand (ass, mean,f(r))
Send view list
Send view list
Send pictures
ltltPAstepgtgt PAdemand (ass, mean,f(r))
Send filtered list
Send pictures
ltltPAstepgtgt PAdemand (ass, mean,f(r))
Show pictures Send select and discard list
Send selected list
Send selected Pictures to PA
ltltPAstepgtgt PAdemand (ass, mean,f(r))
Receive and Store pictures
PictureAgent
Filter
Database
User
21
System model with physicaland logical mobile
entities
Static System model
WLan Access Point
WWan Access Point
Internet
ltltExecEnvgtgt Server2
LocB
LocA
ltltdeploygtgt
PictureAgent
DB(2)
ltltExecEnvgtgt PDA
ltltExecEnvgtgt Server1
ltltdeploygtgt
DB(1)
Filter
22
Mobility managers
23
Outline
  • Introduction motivation, previous work, approach
  • Modeling mobility
  • Physical mobility locations and moving locations
  • Logical mobility mobile software components
  • Dynamics of mobility ltltMobilityManagergtgt
  • Modeling performance
  • Annotated UML models SPT Mobility profile
  • Representing mobile code paradigms in UML
  • Code On Demand (COD)
  • Remote Evaluation (REV)
  • Mobile Agent (MA)
  • Performance Analysis based on UML models an
    example
  • Conclusion

24
Conclusion (I)
  • Our contribution
  • Representation of mobility in computer systems
    from a high level perspective
  • .by means of an extension of a mainstream de
    facto standard language
  • Mobility is described in a uniform way for both
    physical and logical entities
  • Modularity and separation of concerns allow to
    easily experiment with different scenarios and
    adaptation strategies based on code mobility
  • Integration of our profile with other
    pre-existing, well established profile for
    performance modeling (SPT)
  • It is primarily a descriptive technique for
    performance analysis of mobile systems
  • models built according to the proposed framework
    are meant as the input to third party performance
    analysis tools
  • Recent extension automatic code generation
    (Jade,muCode)

25
Conclusion (II)
  • Open Issues
  • Model transformation rules need to be defined in
    order to derive new models in suitable forms from
    descriptions made with our framework
  • In our paper we have shown a trivial rule (which
    is basically an inspection of the diagrams) that
    allows to make some comparisons between different
    mobile code strategies (provided some strong
    conditions hold, such as no competition)
  • Other transformation rules are documented in the
    literature (to produce QN, LQN, Petri Nets,
    Markovian models from UML annotated models). The
    research on this topic is still going on.
  • Future work
  • Definition of formalized transformation rules
    (maybe using relational or graph-transformation
    techniques)
  • Assess consistency between models resulting from
    different transformations (difficult task!)
  • Maybe some UML-specific rework is to be done on
    the definition of the profile when the final UML
    2 specification is out
Write a Comment
User Comments (0)
About PowerShow.com