From UML to Performance Models 29 June 2004 Dorina C. Petriu, Gordon Gu page 1 From UML to Performance Models: High Level View Dorina C. Petriu Gordon.

Slides:



Advertisements
Similar presentations
Case Studies Elevator control system Elevator control system Comet case studies From task structuring to target system configuration.
Advertisements

Executional Architecture
COURSE: COMPUTER PLATFORMS
A component- and message-based architectural style for GUI software
Vakgroep Informatietechnologie – IBCN Software Architecture Prof.Dr.ir. F. Gielen Quality Attributes & Tactics (2) Performance.
Introduction CSCI 444/544 Operating Systems Fall 2008.
Workload Characterization Sept. 23 rd, 2008 CSCI 8710.
28.2 Functionality Application Software Provides Applications supply the high-level services that user access, and determine how users perceive the capabilities.
1 SWE Introduction to Software Engineering Lecture 23 – Architectural Design (Chapter 13)
Introduction to Systems Architecture Kieran Mathieson.
ECEN5053 SW Eng of Dist Systems, Arch Des Part 2, Univ of Colorado, Boulder1 Architectural Design of Distributed Systems, Part 2 ECEN5053 SW.
Measuring Performance Chapter 12 CSE807. Performance Measurement To assist in guaranteeing Service Level Agreements For capacity planning For troubleshooting.
1 Multiple class queueing networks Mean Value Analysis - Open queueing networks - Closed queueing networks.
1 Software Testing and Quality Assurance Lecture 40 – Software Quality Assurance.
1 I/O Management in Representative Operating Systems.
Module 8: Monitoring SQL Server for Performance. Overview Why to Monitor SQL Server Performance Monitoring and Tuning Tools for Monitoring SQL Server.
Computer System Lifecycle Chapter 1. Introduction Computer System users, administrators, and designers are all interested in performance evaluation. Whether.
Ekrem Kocaguneli 11/29/2010. Introduction CLISSPE and its background Application to be Modeled Steps of the Model Assessment of Performance Interpretation.
Ajmer Singh PGT(IP) Software Concepts. Ajmer Singh PGT(IP) Operating System It is a program which acts as an interface between a user and hardware.
Maxim Shevertalov Jay Kothari William M. Mongan
(C) 2009 J. M. Garrido1 Object Oriented Simulation with Java.
9/14/2015B.Ramamurthy1 Operating Systems : Overview Bina Ramamurthy CSE421/521.
Advanced Operating Systems CIS 720 Lecture 1. Instructor Dr. Gurdip Singh – 234 Nichols Hall –
Database Design – Lecture 16
Performance analysis and prediction of physically mobile systems Point view: Computational devices including Mobile phones are expanding. Different infrastructure.
Introduction and Overview Questions answered in this lecture: What is an operating system? How have operating systems evolved? Why study operating systems?
Operating System Review September 10, 2012Introduction to Computer Security ©2004 Matt Bishop Slide #1-1.
 What is OS? What is OS?  What OS does? What OS does?  Structure of Operating System: Structure of Operating System:  Evolution of OS Evolution of.
1 System Models. 2 Outline Introduction Architectural models Fundamental models Guideline.
January 2004WOSP’ UML and SPE Part II: The UML Performance Profile Dr. Dorina Petriu Carleton University Department of Systems and Computer Engineering.
/ Copyright © Siemens AG All rights reserved. Corporate Technology Performance Prediction of Client-Server Systems by High-Level Abstraction Models.
Session 26 Modeling the Static View: The Deployment Diagram Written by Thomas A. Pender Published by Wiley Publishing, Inc. October 27, 2011 Presented.
Ingres Version 6.4 An Overview of the Architecture Presented by Quest Software.
Performance evaluation of component-based software systems Seminar of Component Engineering course Rofideh hadighi 7 Jan 2010.
Layered Queuing Network Solver Navdeep Kaur Kapoor Department of Systems and Computer Engineering March 6, 2008.
Architectural Design of Distributed Applications Chapter 13 Part of Design Analysis Designing Concurrent, Distributed, and Real-Time Applications with.
Chapter 2 Processes and Threads Introduction 2.2 Processes A Process is the execution of a Program More specifically… – A process is a program.
Case Study: A Database Service CSCI 8710 September 25, 2008.
1 Client-Server Interaction. 2 Functionality Transport layer and layers below –Basic communication –Reliability Application layer –Abstractions Files.
DEAS2005Michael Shin Copyright1 Connector-Based Self-Healing Mechanism for Components of a Reliable System Michael E. Shin Department of Computer Science.
Software Design Evaluation: Vision and Tools....The PUMA project 25 June 2004 Murray Woodside, Dorina Petriu page 1 Software Design Evaluation: Vision.
1 Part VII Component-level Performance Models for the Web © 1998 Menascé & Almeida. All Rights Reserved.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Operating Systems.
Multimedia Retrieval Architecture Electrical Communication Engineering, Indian Institute of Science, Bangalore – , India Multimedia Retrieval Architecture.
1 Architectural Blueprints—The “4+1” View Model of Software Architecture (
Channels. Models for Communications Synchronous communications – E.g. Telephone call Asynchronous communications – E.g. .
OPERATING SYSTEMS CS 3502 Fall 2017
Modelowanie i analiza systemów informacyjnych Performance evaluation of a software UML design Marek Bazan Kwiecień 2017.
Advanced Operating Systems CIS 720
Flash Storage 101 Revolutionizing Databases
Software Architecture in Practice
OPERATING SYSTEMS CS3502 Fall 2017
Modeling Architecture-OS Interactions using LQNS
Chapter 3: Windows7 Part 2.
Lecture 21: Introduction to Process Scheduling
Chapter 3: Windows7 Part 2.
Tiers vs. Layers.
Operating Systems : Overview
Operating Systems : Overview
Single server model Queue Server I/O Controller And device Arrivals.
4+1 View Model of Software Architecture
Lecture 21: Introduction to Process Scheduling
Simple Web Server: Bottlenecks
Layered Queueing Network Modeling of Software Systems Murray Woodside 5201 Canal Building Building Security System (buffering)
4+1 View Model of Software Architecture
Performance And Scalability In Oracle9i And SQL Server 2000
Chapter 6: Architectural Design
Mr. M. D. Jamadar Assistant Professor
Presentation transcript:

From UML to Performance Models 29 June 2004 Dorina C. Petriu, Gordon Gu page 1 From UML to Performance Models: High Level View Dorina C. Petriu Gordon Gu Carleton University well formed annotated UML models introduction to LQN high-level view of the transformation

From UML to Performance Models 29 June 2004 Dorina C. Petriu, Gordon Gu page 2 Well-formed annotated UML model key use cases described by representative scenarios  frequently executed, have performance constraints resources used by each scenario resource types: active or passive, physical or logical, hardware or software  examples: processor, disk, process, software server, lock, buffer quantitative resource demands must be given for each scenario step  how much, how many times? workload intensity for each scenario open workload: arrival rate of requests for the scenario closed workload: number of simultaneous users

From UML to Performance Models 29 June 2004 Dorina C. Petriu, Gordon Gu page 3 Software architecture and deployment Retrieve SDiskIO DEserver Client Server server client > 1..k DEclient > 1..n DEclient > ClientCPU > Ethernet > ServerCPU DEserver > Sdisk >

From UML to Performance Models 29 June 2004 Dorina C. Petriu, Gordon Gu page 4 Scenario with performance annotations ClientRetrieveTSDiskIOT request document wait_S accept request read request update logfile wait_D write to logfile parse request get document read from disk send document recycle thread receive document > {PAdemand=(‘msrd’, ’mean’,(220/$cpuS,’ms’))} > {PAdemand=(‘msrd’,’mean’, ( /$cpuS,’ms’))} > {Papopulation = $Nusers} > {PAdemand=(‘asmd’,’mean’ (0.5,’ms’)), PAextOp=(‘net1’,1) PArespTime= (‘req’,’mean’, (1,’sec’), (‘pred’,’mean’,$RespT)}} > {PAdemand=(‘asmd’, ’mean’, (1.5,’ms’))} > {PAdemand=(‘msrd’,’mean’, (35/$cpuS,’ms’))} > {PAdemand=(‘msrd’,’mean’, (25/$cpuS,’ms’))} > {PAdemand=(‘msrd’,’mean’, ($cdS,’ms’)), PAextOp=(‘readDisk’, $DocS’)} > {PAdemand=(‘msrd’,’mean’, (0.70,’ms’)), PAextOp=(‘writeDisk’, $RP’)} > {PAdemand=(‘msr’,’mean’, (170/$cpuS,’ms’))} > {PAdemand=(‘msrd’,’mean’, ($scdC/$cpuS,’ms’)), PAextOp=(‘net2’,$DocS’)} > {PAdemand=(‘msrd’,’mean’, ($gcdC/$cpuS,’ms’))}

From UML to Performance Models 29 June 2004 Dorina C. Petriu, Gordon Gu page 5 Layered Queueing Network (LQN) model Advantages of LQN modeling models software tasks (rectangles) and hardware devices (circles) represents nested services (a server is also a client to other servers) software components have entries corresponding to different services arcs represent service requests (synchronous and asynchronous) multi-servers used to model components with internal concurrency What can we get from the LQN solver Service time (mean, variance) Waiting time Probability of missing deadline Throughput Utilization clientE DBWriteDBRead DB DKWriteDKRead Client CPU ClientT Disk DB CPU DB Disk

From UML to Performance Models 29 June 2004 Dorina C. Petriu, Gordon Gu page 6 UML -> LQN Transformations: Mapping the structure Comp <<PAhost>> XCPU <<PAhost>> XCPU (3) <<PAresource>> Ydisk (4) <<PAresource>> CompT XCPU (5) <<PAhost>> XCPU <<PAresource>> ThreadT XCPU (6) Thread Comp <<PAhost>> XCPU Comp <<PAresource>> 1..n (1) Comp <<PAresource>> 1..n (1) Active <<PAresource>> (2) <<PAresource>> Active <<PAresource>> (2) XCPU <<PAhost>> XCPU (3) XCPU <<PAhost>> XCPU (3) << Ydisk (4) << Ydisk (4) <<PAresource>> (5) <<PAhost>> XCPU > <<PAresource>> (6) Thread > CompT Active

From UML to Performance Models 29 June 2004 Dorina C. Petriu, Gordon Gu page 7 UML->LQN Transformation: Mapping the Behavior Client CPU e1 [ph1] Client CPU Server e2 [ph1, ph2] Server

From UML to Performance Models 29 June 2004 Dorina C. Petriu, Gordon Gu page 8 Mapping software architecture and physical devices to LQN b) Mapping physical resources (processors and I/O devices) to LQN devices a) Mapping software architecture to LQN tasks DEclientT RetrieveT SDiskIOT Retrieve SDiskIO DEserver Client Server server client > 1..k DEclient > 1..n DEclientT RetrieveT SDiskIOT Client CPU Server CPU Sdisk DEclient > ClientCPU > Ethernet > ServerCPU DEserver > Sdisk >

From UML to Performance Models 29 June 2004 Dorina C. Petriu, Gordon Gu page 9 Effect of communication network DEclientT RetrieveT SDiskIOT ClientC PU Server CPU Sdisk DEclient > ClientCPU > Ethernet > ServerCPU DEserver > Sdisk > net1 net2 dummy CPU Ethernet

From UML to Performance Models 29 June 2004 Dorina C. Petriu, Gordon Gu page 10 Groups of scenario steps to LQN entries DEclientT RetrieveT SDiskIOT request document wait_r read request update logfile wait_d parse request get document accept request send document write to logfile read from disk send document entry clientE phase 2 entry retrieveE phase 1 entry retrieveE ph 2 entry write phase 1 entry read phase 1 DEclientT Client CPU Sdisk Ethernet clientE [ph2] net1 dummy CPU net1E RetrieveT sever CPU retrieveE [ph1,ph2] net2 net2E SDiskIOT write [ph1] read [ph1]