An Introduction to UML & Modeling Resources Using UML Rahul Shah EE249 Discussion Sept. 25, 2001
Talk Outline An introduction to UML Different views in UML Examples from PicoRadio UML documentation Discussion of Bran Selic’s paper, “A generic framework for modeling resources with UML”
The Development Process InceptionElaborationConstructionTransition Requirements capture Analysis & Design Implementation Test Project Phases Process Components } UML
Unified Modeling Language Object oriented modeling language Intended to model discrete systems such as software, firmware or digital logic “Models are used to capture and precisely state requirements and domain knowledge so that all stakeholders may understand and agree on them.” (Rumbaugh, Jacobson & Booch)
UML Views Structural: things in the system and their relationship to other things Class diagrams Use case diagrams Component diagrams Dynamic: system behavior over time Statechart diagram Activity diagram Sequence diagram Model management, others
Class Diagram † † PicoRadio UML documentation
Use Case Diagram † † PicoRadio UML documentation
Activity Diagram † † PicoRadio UML documentation
Sequence Diagram † † PicoRadio UML documentation
A Generic Framework for Modeling Resources With UML Bran Selic IEEE Computer, June 2000.
Quantitative Analysis Schedulability analysis Deterministic technique Good for hard real-time systems Performance analysis Probabilistic characterization Good for soft real-time systems
QoS Contracts Peer interpretation Layered interpretation (realization mappings play the role of QoS contracts)
UML Model of QoS Contracts Associations Composition Aggregation Association Class
Management of Resources Generalization
Realization Mapping Realization relationship
QoS Analysis Compare the required QoS with the offered QoS The offered QoS should exceed the required QoS Aggregated QoS characteristics can complicate the analysis: Different characteristics combine in different ways Resources are often shared
Conclusions Models are useful to predict and quantify performance of software without actual construction Incorporating a generic QoS framework in UML helps us in analyzing software models UML is an industry standard, thus a common base to develop new techniques for analysis