150 likes | 362 Views
Using UML Models for the Performance Analysis of Network Systems. Nico de Wet and Pieter Kritzinger Department of Computer Science University of Cape Town. Context. M.Sc. Dissertation SPECS (SDL Performance Evaluation of Concurrent Systems) standard SDL/PR models annotated via GUI
E N D
Using UML Models for the Performance Analysis of Network Systems Nico de Wet and Pieter Kritzinger Department of Computer Science University of Cape Town
Context • M.Sc. Dissertation • SPECS (SDL Performance Evaluation of Concurrent Systems) • standard SDL/PR models annotated via GUI • specify non-functional duration constraints • block: actions per time unit • process: action quota • signal tranfer via channels: randomly distributed delay
Protocol Validation, Verification and Performance • Protocol Validation and Verification using FDTs accepted • Specification and Description Language (SDL) • Estelle • Process Meta Language (PROMELA) and SPIN • Performance fundamental quality attribute: performability • UML 1.x • general purpose language, no formal semantics • Map to formal method • Specialize UML with a profile (ITU-T Z.109 “SDL Combined with UML”)
Model-Driven Development and UML 2.0 • “The model is the implementation” • Syntax needed for graphical programming • SDL used as model-driven development language for decades in teleco industry • Specialized diagrams and abstractions useful in protocol development • High-level programming language but target language independant • UML 2.0 • UML 1.x: formal semantics, excessive size, architectural modelling • UML 2.0: architectural modelling based on SDL and ROOM • Telelogic Tau Generation 2 • Draft UML 2.0 specifications and ITU-T Z.109 “SDL combined with UML” • Telelogic Tau UML 2.0 and non-standard UML Syntax
Performance Modelling with SDL • Core problem: • means of specifying non-functional duration constraints lacking in standard • Solutions: • SPECS, ObjectGEODE, SPEET, QUEST, SDL/OPNET, SDL*, TSDL, perfSDL • Some approaches modify standard SDL syntax • Better: use annotated approach
Specifying Non-functional Time Related Aspects • Communication delay • Processing times • Execution modes • Time constraints on external environment • Scheduling
proSPEX • UML 2.0 and ITU-T Z.109 Recommendation “SDL Combioned with SDL” • SDL abstractions, tightened semantics & target-language independent syntax available • Previous work & UML Profile for schedulability, performance and time specification • Use annotated approach • Create model processor (tool integration) using XMI as interface • Map to process-based discrete event simulation library
The proSPEX Tool Architecture • Telelogic Tau G2 model editor • XML format • In future: editor supporting XML Metadata Interchange (XMI) 2.0 format • Filter Tau XML and place in data structures • XML extremely verbose, no supporting documentation, DTD • Extend open-source Simmcast network simulation framework • Network simulation primitives • How to map Telelogic UML 2.0 asbstractions to simulation model • Use Text Templating engine to generate simulation code
Concluding Remarks • The proSPEX methodology • Identified the UML 2.0 diagram roles and performance annotations • Problem of detail in state machines remains • The proSPEX tool architecture • Use pure UML 2.0 and XMI 2.0, not Telelogic UML 2.0 and XML in future • Vendor lock-in • Tau XML proprietary, no company support