Sumant Tambe* Akshay Dabholkar Aniruddha Gokhale

Slides:



Advertisements
Similar presentations
1 CS 426 Senior Projects Chapter 19: Interfaces and Components [Arlow & Neustadt 2005] February 28, 2008.
Advertisements

Using the Vanderbilt Generic Modeling Environment (GME) to Address SOA QoS Sumant Tambe Graduate Intern, Applied Research, Telcordia Technologies Inc.
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
Spectra Software Defined Radio Products Applying Model Driven Design, Generative Programming, and Agile Software Techniques to the SDR Domain OOPSLA '05.
Sumant Tambe, et. al LEESA DSPD 2008 An Embedded Declarative Language for Hierarchical Object Structure Traversal Sumant Tambe* Aniruddha Gokhale Vanderbilt.
Sumant Tambe, et. al LEESA DSPD 2008 An Embedded Declarative Language for Hierarchical Object Structure Traversal Sumant Tambe* Aniruddha Gokhale Vanderbilt.
©Ian Sommerville 2000 Software Engineering, 6th edition. Slide 1 Component-based development l Building software from reusable components l Objectives.
SAMANVITHA RAMAYANAM 18 TH FEBRUARY 2010 CPE 691 LAYERED APPLICATION.
R R R 1 Frameworks III Practical Issues. R R R 2 How to use Application Frameworks Application developed with Framework has 3 parts: –framework –concrete.
HPEC’02 Workshop September 24-26, 2002, MIT Lincoln Labs Applying Model-Integrated Computing & DRE Middleware to High- Performance Embedded Computing Applications.
Model-Driven Engineering for Development-Time QoS Validation of Component-based Software Systems James Hill, Sumant Tambe & Aniruddha Gokhale Vanderbilt.
Model Driven Development An introduction. Overview Using Models Using Models in Software Feasibility of MDA MDA Technologies The Unified Modeling Language.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Sunday, October 15, 2000 JINI Pattern Language Workshop ACM OOPSLA 2000 Minneapolis, MN, USA Fault Tolerant CORBA Extensions for JINI Pattern Language.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
DataReader 2 Enhancing Security in Ultra-Large Scale (ULS) Systems using Domain- specific Modeling Joe Hoffert, Akshay Dabholkar, Aniruddha Gokhale, and.
Investigating Survivability Strategies for Ultra-Large Scale (ULS) Systems Vanderbilt University Nashville, Tennessee Institute for Software Integrated.
CoSMIC: Tool-suite for Weaving Deployment & Configuration Crosscutting Concerns of CCM-based DRE Systems Dr. Aniruddha Gokhale (PI) Institute for Software.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
Aniruddha Gokhale and Jeff Gray Institute for Software Integrated Systems (ISIS) Vanderbilt University Software Composition and Modeling Laboratory University.
MDDPro: Model-Driven Dependability Provisioning in Enterprise Distributed Real-time and Embedded Systems Sumant Tambe* Jaiganesh Balasubramanian Aniruddha.
NetQoPE: A Middleware-based Netowork QoS Provisioning Engine for Distributed Real-time and Embedded Systems Jaiganesh Balasubramanian
Component-based System Integration via (Meta)Model Composition
A QoS Policy Modeling Language for Publish/Subscribe Middleware Platforms A QoS Policy Modeling Language for Publish/Subscribe Middleware Platforms Joe.
Chapter 19: Interfaces and Components [Arlow and Neustadt, 2005] University of Nevada, Reno Department of Computer Science & Engineering.
Enhancing Security in Enterprise Distributed Real-time and Embedded Systems using Domain-specific Modeling Akshay Dabholkar, Joe Hoffert, Aniruddha Gokale,
A Model Transformation Approach to Automated Model Construction and Evolution Yuehua Lin Jeff Gray Department of.
Towards A QoS Modeling and Modularization Framework for Component-based Systems Sumant Tambe* Akshay Dabholkar Aniruddha Gokhale Amogh Kavimandan (Presenter)
Fault-tolerance for Component-based Systems – An Automated Middleware Specialization Approach Sumant Tambe* Akshay Dabholkar Aniruddha Gokhale Abhishek.
Systematic Specialization of General-Purpose Middleware for Cyber-Physical Systems Akshay Dabholkar, Aniruddha Gokhale, and Sumant Tambe Dept. of EECS,
SRA Key Topics Reference Architectures for Cyber-Physical Systems Dr. Christian El Salloum AVL List GmbH.
The Role of Reflection in Next Generation Middleware
Separation of Concerns in the Design of Distributed Systems
International Service Availability Symposium (ISAS) 2007
MPCS – Advanced java Programming
A Graphical Modeling Environment for the
SysML v2 Formalism: Requirements & Benefits
Distribution and components
Software Quality Engineering
Component Based Software Engineering
Aniruddha Gokhale Assistant Professor ISIS, Dept. of EECS
An Approach to Middleware Specialization for Cyber Physical Systems
QoS-Enabled Middleware
Vanderbilt University
A Platform-Independent Component Modeling Language for DRE Systems
Chapter 19: Interfaces and Components
Cloud Modeling Framework CloudMF
Model-Driven Analysis Frameworks for Embedded Systems
11/14/2018 QUICKER: A Model-driven QoS Mapping Tool for QoS-enabled Component Middleware Amogh Kavimandan, Krishnakumar Balasubramanian, Nishanth Shankaran,
Applying Domain-Specific Modeling Languages to Develop DRE Systems
Component-Based Software Engineering
Tools for Composing and Deploying Grid Middleware Web Services
Chapter 20 Object-Oriented Analysis and Design
Service Oriented Architecture (SOA)
UML profiles.
Analysis models and design models
An Introduction to Software Architecture
Chapter 19: Interfaces and Components
Templatized Model Transformation: Enabling Reuse in Model Transformations Amogh Kavimandan and Aniruddha Gokhale Dept. of EECS, Vanderbilt University,
Chapter 19: Interfaces and Components
International Service Availability Symposium (ISAS) 2007
SAMANVITHA RAMAYANAM 18TH FEBRUARY 2010 CPE 691
A GUI Based Aid for Generation of Code-Frameworks of TMOs
Overview of the ETSI Test Description Language
Automated Analysis and Code Generation for Domain-Specific Models
Interfaces and Components
Graphical Modeling of INFOD applications
Chapter 19: Interfaces and Components
ONAP Architecture Principle Review
Presentation transcript:

CQML: Aspect-oriented Modeling for Modularizing and Weaving QoS Concerns in Component-based Systems Sumant Tambe* Akshay Dabholkar Aniruddha Gokhale Vanderbilt University, Nashville, TN, USA *Contact : sutambe@dre.vanderbilt.edu 16th Annual IEEE International Conference and Workshop on the Engineering of Computer Based Systems (ECBS), San Francisco, CA, USA

Component-based Enterprise DRE Systems Characteristics of component-based enterprise DRE systems Multiple reusable components composed together to realize functionality Simultaneous Quality of Service (QoS) requirements E.g., Availability, Network quality of service, Timeliness Examples of Enterprise DRE systems Advanced air-traffic control systems Continuous patient monitoring systems Add yellow box stating goal of RT FT in EDRE.

QoS Design Challenges System’s structure is the primary design dimension whereas QoS is the secondary Challenges QoS requirements often cross-cut the structural dimension E.g., deciding the number of replicas and their interconnections in a fault-tolerant system Low-level imperative techniques of specifying QoS are overly complex E.g., API calls for configuring object request broker (ORB) for real-timeliness Multiple QoS interact in complex ways, which is extremely hard, if not impossible, to analyze at code level Granularity of applicability of QoS varies widely E.g., System level, component assembly level, component level, component connection level, port level, method level QoS notations tightly coupled with platform-specific modeling languages

Solution: Declarative Modeling of QoS Requirements Desirable properties of a graphical QoS modeling language for Component-based Systems Platform-independent representation of QoS High-level, declarative QoS specification Separate “structural view” and “QoS view” for separation of system design concerns Fine to coarse granularity of QoS association Reusable, Extensible Decoupled from structural meta-model to enable independent meta-model evolution If it is decoupled from the structural meta-model, it would be more reusable. Our solution: Component QoS Modeling Language (CQML)

High-level Declarative QoS Modeling using CQML CQML is developed using GME FailOverUnit Annotate protected components and assemblies Specify # of replicas Network-level QoS Annotate component connections Specify priority of communication traffic QoS provisioning using differentiated services Security QoS Annotate component ports or connections Controls role-based access control (RBAC) Policies More QoS can be added

Separation of Concerns Separate Structural view from the QoS view CQML model interpreters and transformations coalesce both the views of the model We’ll see how this separation of concerns is important in case of fault-tolerance.

Granularity of QoS Associations QoS view supports different granularity Components Connections Component Ports Component Assemblies Interface Methods Granularity is based on the feature model of contemporary component modeling languages Examples of contemporary component modeling languages PICML for CCM platform J2EEML for J2EE platform ESML for Avionics platform

Composition of CQML and Base Languages CQML uses a base language with the features shown before Added as a library in base language using GME meta-model composition Does not disturb syntax, semantics, and interpreters of the base language

Composition of CQML and Base Languages Language composition similar to MOF’s import + inherit CQML join-point model defines a set of abstract structural elements Join-point model is reused by inheriting it in the concrete structural elements of the base language Reuse of associations, cardinalities, and constraints defined over the abstract elements CQML’s Join-point model

Superimposing Declarative QoS Aspects Dependency Inversion Principle (DIP) applied at meta-modeling level All concrete QoS elements inherit associations from abstract elements Reuse of associations, cardinalities, and constraints defined over the abstract elements Abstract QoS elements correspond to abstract structural elements CQML’s Join-point model Abstract QoS Elements Concrete QoS Elements

Using CQML for M2M Transformation Automated Structural FT Modeling Composite Metamodel CQML

Using CQML for M2M Transformation Problem: Generating replica components using CQML’s FailOverUnit modeling Step1: Model structural composition of components Step2: Annotate components with FailOverUnit(s) marking them “protected” in the QoS view Step3: Use aspect-oriented M2M transformation developed using Embedded Constraint Language (ECL) Step4: Component replicas and interconnections are generated automatically Step5: Use existing interpreters of the base language to generate platform-specific metadata. Transformation QoS View Structural View

Concluding Remarks Separation of structural and QoS concerns is key to simplifying system design with non-functional requirements CQML provides higher level graphical QoS modeling support (e.g., fault-tolerance) CQML enhances a structural modeling language with declarative QoS modeling capability when composed CQML separates QoS design from structural design using views Aspect-oriented M2M transformations can transform QoS requirements into structural models automatically

Thank you!