Presentation is loading. Please wait.

Presentation is loading. Please wait.

UML based Modeling and Performance Evaluation of Mobile Systems Vincenzo Grassi 1,Raffaela Mirandola 2,Antonino Sabetta 1 (1) Università di Roma “Tor Vergata”,

Similar presentations


Presentation on theme: "UML based Modeling and Performance Evaluation of Mobile Systems Vincenzo Grassi 1,Raffaela Mirandola 2,Antonino Sabetta 1 (1) Università di Roma “Tor Vergata”,"— Presentation transcript:

1 UML based Modeling and Performance Evaluation of Mobile Systems Vincenzo Grassi 1,Raffaela Mirandola 2,Antonino Sabetta 1 (1) Università di Roma “Tor Vergata”, Italy {vgrassi|sabetta}@info.uniroma2.it (2) Politecnico di Milano, Italy mirandola@elet.polimi.it VIII Workshop PISATEL 6 dicembre 2005, Pisa

2 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems Outline Introduction: motivation, previous work, approach Modeling mobility –Physical mobility: locations and moving locations –Logical mobility: mobile software components –Dynamics of mobility: > 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 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems 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 – -calculus [Milner – 1999]; ambient calculus [Cardelli, Gordon – 1998]; Klaim [De Nicola, Ferrari, Pugliese, Venneri – 1998]; mobile Unity [Picco, Roman, McCann – 2001];…

4 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems 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 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems Outline Introduction: motivation, previous work, approach Modeling mobility –Physical mobility: locations and moving locations –Logical mobility: mobile software components –Dynamics of mobility: > 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 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems B Representing locations –locations basic model : a nesting relationship between an entity and some container –B “is located at” A A B A C –location change a modification of a nesting ("located at") relationship –C “is located at” A  C “is located at” B –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 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems Room_B:…Room_A:… Representing Locations with the UML Profile for Mobility Mary:… MyPda:… Room_C:… > MyPda : PDA > Mary : Person > Room_C : Room > Room_A : Room > Room_B : Room >

8 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems Adding Dynamics to the Model > MyPda : PDA > Mary : Person > Home : > Office : > State atHome sleep(uniform(4h)) State atOffice sleep(uniform(3h)) > Mary_MobMan / >go(Mary, Office) / >go(Mary, Home)  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

9 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems Representing Code Mobility (I) > MyPda : PDA > Mary : Person > Home : Room > Office : Room > srv : Server > C3 : Comp C1 : Comp C2 : Comp C4 : Comp >

10 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems Representing Code Mobility (II) > C2 : Comp > MyPda : PDA > srv : Server > C1 : Comp Structural model State B [MyPda.locatedAt (Home)] event_E1 / > REV(C1, somewhere) State D State C State A [SomeCondition] Event 2 / [SomeCondition] Event 3 / [MyPda.locatedAt (Office)] Event 4 / > SomeMigrationAct( ) [C1.CurrentDeployment.BatteryLevel < 25%] event_E2 / > MA(C1, somewhere_else) Behavioral model

11 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems Outline Introduction: motivation, previous work, approach Modeling mobility –Physical mobility: locations and moving locations –Logical mobility: mobile software components –Dynamics of mobility: > 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 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems Annotating UML models with performance characteristics Adding performance annotations from the UML Profile for Schedulability, Performance and Time (SPT) NodePAhost, PAresource -PArate PhysicalMovePAstep - PAdelay - PAprob LogicalMovePAstep -PAdemand Move > MyPda : PDA > PArate =…….. > Move > Destination > EntityToMove > PAdelay =…….. PAprob = …… > REV > DestinationNode > Component > PAdemand =……..

13 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems Outline Introduction: motivation, previous work, approach Modeling mobility –Physical mobility: locations and moving locations –Logical mobility: mobile software components –Dynamics of mobility: > 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 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems 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) –code+state mobility mobile agent (MA) both can be seen as “location aware” extensions of the client-server (CS) paradigm

15 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems From “Client Server” to “Code On Demand” Invoke Use Results > CodeToMigrate Do Service > PrepareToExec > Migrate Code > Prepare To Migrate > SomeComponent > SomeComponent Local Execution Environment Remote Execution Environment > PAdemand = ….f($M) > PAdemand = ….f($M) > PAdemand = ….f($M) > COD(CodeToMigrate) Do Service

16 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems Modeling the “ Remote Evaluation” paradigm Invoke Use Results Local Execution Environment Remote Execution Environment > PAdemand = ….f($M) > PAdemand = ….f($M) > PAdemand = ….f($M) > REV(CodeToMigrate,Destination) Do Service > PrepareToExec > Migrate Code > Prepare To Migrate > SomeComponent > CodeToMigrate > SomeComponent > Destination

17 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems Mobile Agents Invoke Use Results Local Execution Environment Remote Execution Environment Do Service > PrepareToExec > Migrate Code > Prepare To Migrate > SomeComponent > SomeComponent > Destination > PAdemand = ….f($M) > PAdemand = ….f($M) > PAdemand = ….f($M) Here the semantics of the > is different from that in the COD and REV examples! In this case the state moves, not only the code! > MA(Destination)

18 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems Outline Introduction: motivation, previous work, approach Modeling mobility –Physical mobility: locations and moving locations –Logical mobility: mobile software components –Dynamics of mobility: > 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 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems Case study: picture retrieval system (I) Send request for pictures Retrieve pictures > {PAdemand =(ass, mean, f($r))} > {PArep =$N} UserPictureAgent Send picture request > {PArep =$N} Select pictures Send picture index Show picture index Send view list Select pictures > {PArep =$N} > {PArep =$N} > {PArep =$N} User PictureAgentFilterDatabase [doFilter=false] [doFilter] > Retrieve Pictures

20 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems Case study: picture retrieval system (II) Send view list Send selected list Send pictures Send filtered list Show pictures Send select and discard list Receive and Store pictures > {PAdemand =(ass, mean,f($r))} User PictureAgentFilterDatabase > Select Pictures [doFilter == true] Send view list Send pictures Send selected Pictures to PA > {PAdemand =(ass, mean,f($r))} > {PAdemand =(ass, mean,f($r))} > {PAdemand =(ass, mean,f($r))}

21 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems System model with physical and logical mobile entities LocBLocA WLan Access Point Internet WWan Access Point > PDA > Server1 > Server2 PictureAgent DB(2) DB(1) Filter > {PArate =…….} > Static System model

22 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems Mobility managers Idle Interacting with DB($i) sendPictureReq(DB($i)) / >REV(Filter,DB($i).CurrentDeployment) sendSelect&DiscardList() / [no more archives] / Idle Interacting with DB($i) sendPictureReq(DB($i)) / >MA(PictureAgent, DB($i).CurrentDepl); > REV(Filter, DB($i).CurrentDepl) sendSelect&DiscardList() / [no more archives] / > MA(PictureAgent,UserInterface.CurrentDeployment) atLocA atLocB > Move(Pda, LocB) > Move(Pda, LocA) > {PAdelay =(‘ass’, ‘dist’, exp($λ2)} > {PAdelay =(‘ass’, ‘dist’, exp($λ1)}

23 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems Outline Introduction: motivation, previous work, approach Modeling mobility –Physical mobility: locations and moving locations –Logical mobility: mobile software components –Dynamics of mobility: > 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 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems 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 V. Grassi, R. Mirandola, A. Sabetta – UML based Modeling and Performance Evaluation of Mobile Systems 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


Download ppt "UML based Modeling and Performance Evaluation of Mobile Systems Vincenzo Grassi 1,Raffaela Mirandola 2,Antonino Sabetta 1 (1) Università di Roma “Tor Vergata”,"

Similar presentations


Ads by Google