Model Driven Performance Analysis University College London James Skene –

Slides:



Advertisements
Similar presentations
Copyright © 2006 Data Access Technologies, Inc. Open Source eGovernment Reference Architecture Approach to Semantic Interoperability Cory Casanave, President.
Advertisements

The role of OCL in the Model Driven Architecture Jos Warmer Klasse Objecten
Formal Techniques in Software Engineering Universiteit AntwerpenIntroduction 1.1 Formal Techniques in Software Engineering 3de BAC Informatica Chapter.
OMG‘s MDA: An Overview copyright © 2001, MATHEMA AG OMG‘s MDA: An Overview OMG‘s MDA: An Overview Markus Völter
MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.
Amit, Keyur, Sabhay and Saleh Model Driven Architecture in the Enterprise.
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
7 July 2003 MDA presentation Dennis Wagelaar 1 Model-Driven Architecture The current state of affairs.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Model Driven Architecture (MDA) Partha Kuchana. Agenda What is MDA Modeling Approaches MDA in a NutShell MDA Models SDLC MDA Models (an Example) MDA -
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006.
OMG Meeting, Helsinki Model Driven Architecture An Alternative Implementation Approach Werner Froidevaux
MDD Tutorial for managers Eclipse ECESIS Project A presentation of MDD basics Model-driven development (MDD) tutorial for managers EUROPEAN SOFTWARE INSTITUTE,
Ekrem Kocaguneli 11/29/2010. Introduction CLISSPE and its background Application to be Modeled Steps of the Model Assessment of Performance Interpretation.
MDA Guide Version CYT. 2 Outline OMG Vision and Process Introduction to MDA How is MDA Used? MDA Transformations Other MDA Capabilities Using the.
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
UML - Development Process 1 Software Development Process Using UML (2)
Model-Driven Architecture & OptimalJ Roland T. Craddolph.
Faculty of Informatics and Information Technologies Slovak University of Technology Peter Kajsa and Ľubomír Majtás Design.
Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Mappings, Use of MOF for Language Families Joachim Fischer Workshop on.
Metadata Tools and Methods Chris Nelson Metanet Conference 2 April 2001.
MDA and QVT  Tom Gullion, Director of Product Management, Together Products.
MDE Model Driven Engineering Xavier Blanc Université Pierre et Marie Curie
1 Modeling Server-side Components with UML Junichi Suzuki, Ph.D. School of Information and Computer Science University.
3 April SOA: Services Oriented Architecture MDA: Model Driven Architecture.
Model transformation with a dedicated imperative language IRISA Rennes (France) - Triskell team Jean-Marc Jézéquel Didier Vojtisek Jean-Philippe Thibault.
Introduction to MDA (Model Driven Architecture) CYT.
Assessing the Suitability of UML for Modeling Software Architectures Nenad Medvidovic Computer Science Department University of Southern California Los.
2nd TTCN-3 User Conference, June The TTCN-3 Metamodel – A Basis for Tool Integration Ina Schieferdecker TU Berlin/Fraunhofer Fokus Hajo Eichler,
Specializing and extending the UML
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
UML Profiles Eclipse ECESIS Project The UML Profile technology SOFTEAM 144 Ave des Champs Elysées Paris, France
Model-Driven Analysis Frameworks for Embedded Systems George Edwards USC Center for Systems and Software Engineering
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
A language to describe software texture in abstract design models and implementation.
Systems Analysis and Design in a Changing World, 3rd Edition
Performance evaluation of component-based software systems Seminar of Component Engineering course Rofideh hadighi 7 Jan 2010.
Dr. Darius Silingas | No Magic, Inc. Domain-Specific Profiles for Your UML Tool Building DSL Environments with MagicDraw UML.
1 Unobtrusive Performance Analysis – Where is the QoS in TAPAS? University College London James Skene –
XASTRO Metamodel. CCSDS SAWG2 Presentation Outline XASTRO-1 Metamodel XASTRO-2 Metamodel Alignment with Model Driven Architecture.
MDA – Model Driven Architecture Olivier Riboux. Overview What is MDA? The Challenges MDA addresses Developing in the MDA Benefits / Conclusion Case Study:
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
CIM LAB MEETING Presentation on UML Rakesh Mopidevi Kwangyeol Ryu.
MDD approach for the Design of Context-Aware Applications.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Extensible Modeling and Simulation Framework Extensible 3D Graphics (X3D) Don Brutzman MOVES Institute, Naval Postgraduate School Andreas Tolk VMASC, Old.
1 Unified Modeling Language, Version 2.0 Chapter 2.
XASTRO-2 Presentation CCSDS SAWG th November 2004.
UML Profile BY RAEF MOUSHEIMISH. Background Model is a description of system or part of a system using well- defined language. Model is a description.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Basic Characteristics of Object-Oriented Systems
Model Driven Architecture MDA SE-548 Lale Doğan
Page 1 Hitachi Ltd. – FhI FOKUS TTCN-3 User Conference, June 2005 MDA based approach for generation of TTCN-3 test specifications Hideto Ogawa, Hitachi.
CHESS Methodology and Tool Federico Ciccozzi MBEES Meeting Sälen, January 2011 January 2011.
What is UML? What is UP? [Arlow and Neustadt, 2005] October 5, 2017
SysML v2 Formalism: Requirements & Benefits
Systems Analysis and Design With UML 2
Systems Analysis and Design With UML 2
Web Application Modeling
Daniel Amyot and Jun Biao Yan
Model-Driven Analysis Frameworks for Embedded Systems
Introduction to UML.
Tools for Composing and Deploying Grid Middleware Web Services
Evaluating Compuware OptimalJ as an MDA tool
UML profiles.
Constructing MDA-based Application Using Rational XDE for .NET
Model Driven Software Development
Presentation transcript:

Model Driven Performance Analysis University College London James Skene –

Outline Requirements for the analysis method, as I see them. Overview of the model driven performance approach chosen –Rationale related to the requirements. Future work

Performance Analysis Functional Requirements Assuming the existence of the TAPAS platform… Reason about compositionality of service level agreements Predict application capacity –Over-provisioning or under provisioning w.r.t SLAs a cost. –Targeted at ASP technologies Enable design time performance prediction –Select architecture

Non-functional requirements Be usable: –Performance analysis outside usual software engineering competence Must be integrated with standard software engineering practice –Minimise cost of performance analysis. Be used: –Performance analysis is currently not performed despite benefits

Approach Mappings from analysis to design models within the Model Driven Architecture (MDA) Qualitatively: –Includes UML so is integrated with standard software engineering practice. –Is tool supported, so: Can integrate the technique Can provide assistance with the technique Can automate the technique Also meets the functional requirements!

The Model Driven Architecture (MDA) Family of specifications –UML – The Unified Modelling Language –MOF – The Meta-Object Facility –CWM – The Common Warehouse Meta-model –Also: CORBA – The Common Object-Request Broker Architecture Not really an architecture Software designs captured as UML models

PIMs and PSMs Problem: Technical infrastructure changes independently of business rules, but these are strongly coupled in designs. Solution: Decouple them Platform Independent Model (PIM) Platform Specific Model (PSM) «realize»

Semantic domains PIMs and PSMs relate to different types of thing. It is convenient to describe these designs using different languages. –E.g. EJB implementation details UML can describe object oriented designs. UML contains extension mechanisms to provide additional interpretations for model elements.

Metamodels UML PIMPSM Virtual Metamodel Profile Meta-model: Model:

Profiles The lightweight extension mechanisms: –Stereotypes extend the meaning of UML model elements. –Tagged values associate qualities with model elements. –Constraints govern the form of models, enforcing domain semantics. Act at meta-model level. –Profiles group stereotypes, tagged values and constraints. Freedom through constraint Opportunity for standardisation

Mappings PIM PSM Source Code Analysis Results PIM

How are mappings described? Imperative mappings specify an algorithm Declarative mappings specify pair-wise constraints Declarative mappings can be captured in a profile using constraints. «profile» Mapping «profile» Design «profile» QN

Benefits of mappings They can be checked, providing assistance to modellers Declarative mappings only need to be partially specified –The flexibility addresses the difficulty in producing feasible analysis models. The mappings define a semantics for the design domain, in terms of the analysis domain concepts. The declarative mappings provide guidance for subsequent automated mappings. Can capture expert modelling techniques

Design domain: A soft-real- time profile Based on the ‘UML Profile for Schedulability, Performance, and Time Specification’ Stereotypes to: –Identify workload classes –Identify resources accessed under mutual exclusion –Identify actions having resource demands

A Soft-real-time profile 2 Tagged values to: –Specify workload parameters (e.g. population, think- time, or arrival rate) –Specify resource demands for actions/procedures –Specify probabilities for choices, average number of iterations. Constraints: –Object containing action with resource demand must be deployed in context where resource is available.

Example design model - sequence :UpdateBean :ManagerBean:EmployeeBean 1:update() 2:ejbCreate() 3:ejbCreate() {repetitions = 100, demand={cpu:10000}} {p= 0.5, demand={cpu:100, disk1:5}} {demand={cpu:100, disk1:5}}

Platform Example design model – deployment :UpdateBean :ManagerBean :EmployeeBean {serviceRate=0.1s} «resource» CPU «resource» Disk2 «resource» Disk1 «deploys» {serviceRate=0.1s}{serviceRate=0.001s}

A performance analysis domain profile Queuing networks Stereotypes: –Identify instances as queues, delays or populations. Tagged values: –Specify service intervals and probabilities on links. Constraints: –Ensure that the network is connected.

Example QN Collaboration «client» Workload «queue» CPU «queue» Disk1 «queue» Disk2 {thinkTime = 5sec, Population = 15} {serviceRate = 1000}{p = 0.05} {p = 0.02}{serviceRate = 0.1}

Mapping from design to analysis domain Resources correspond to queues. Resource demands translate to probabilities or demand vectors. Much more complicated mappings will be required to capture infrastructure details (e.g. performance of containers). «model» Design «model» QN «DesignToQN»

Requirements? PIM PSM Analysis EJBMQ serverOracle Tool: QN SPA SPN Lifecycle SLAng

Progress SLAng identifies relevant scenarios and technologies. Assembling a toolset: –Poseidon UML –MDR plug-in for NetBeans –LUI OCL checker, NEPTUNE project –Libraries and tools for performance analysis

Future work Define profiles Associate with SLAng constructs Create tool to automate analysis Integrate into single IDE Automate mappings