Towards A QoS Modeling and Modularization Framework for Component-based Systems

13
Towards A QoS Modeling and Modularization Framework for Component- based Systems Sumant Tambe* Akshay Dabholkar Aniruddha Gokhale Amogh Kavimandan (Presenter) Vanderbilt University, Nashville, TN, USA *Contact : [email protected] Advances in Quality of Service Management, (AQuSerM) EDOC 2008 Workshop, Munich, Germany

description

Towards A QoS Modeling and Modularization Framework for Component-based Systems. Sumant Tambe* Akshay Dabholkar Aniruddha Gokhale Amogh Kavimandan (Presenter) Vanderbilt University, Nashville, TN, USA *Contact : [email protected]. - PowerPoint PPT Presentation

Transcript of Towards A QoS Modeling and Modularization Framework for Component-based Systems

Page 1: Towards A QoS Modeling and Modularization Framework for Component-based Systems

Towards A QoS Modeling and Modularization Framework for Component-based Systems

Sumant Tambe*

Akshay Dabholkar

Aniruddha Gokhale

Amogh Kavimandan (Presenter)

Vanderbilt University, Nashville, TN, USA

*Contact : [email protected]

Advances in Quality of Service Management, (AQuSerM)

EDOC 2008 Workshop, Munich, Germany

Page 2: Towards A QoS Modeling and Modularization Framework for Component-based Systems

2

Sumant Tambe, et. al Component QoS Modeling Language

AQuSerM 2008

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, Timeliness

Examples of Enterprise DRE systems Advanced air-traffic control systems Continuous patient monitoring

systems

Detector1

Detector2

Planner3 Planner1

Error Recovery

Effector1

Effector2

Config

LEGEND

Receptacle

Event Sink

Event Source

Facet

Page 3: Towards A QoS Modeling and Modularization Framework for Component-based Systems

3

Sumant Tambe, et. al Component QoS Modeling Language

AQuSerM 2008

QoS Design Challenges System’s structure is the primary design dimension

whereas QoS is the secondary Challenges

QoS requirements often cross-cut the primary dimension E.g., deciding the number of replicas and their interconnections in a fault-

tolerant system

Low-level imperative techniques of specifying QoS is 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

Page 4: Towards A QoS Modeling and Modularization Framework for Component-based Systems

4

Sumant Tambe, et. al Component QoS Modeling Language

AQuSerM 2008

Solution: Declarative Modeling of QoS Requirements

Desirable properties of a graphical QoS modeling language 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 Decoupled from structural meta-model to enable

independent meta-model evolution

Our solution: Component QoS Modeling Language (CQML)

Page 5: Towards A QoS Modeling and Modularization Framework for Component-based Systems

5

Sumant Tambe, et. al Component QoS Modeling Language

AQuSerM 2008

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

Page 6: Towards A QoS Modeling and Modularization Framework for Component-based Systems

6

Sumant Tambe, et. al Component QoS Modeling Language

AQuSerM 2008

Separation of Concerns

Separate Structural view from the QoS view

CQML model interpreters and transformations coalesce both the views of the model

Page 7: Towards A QoS Modeling and Modularization Framework for Component-based Systems

7

Sumant Tambe, et. al Component QoS Modeling Language

AQuSerM 2008

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 Avionic platform

Page 8: Towards A QoS Modeling and Modularization Framework for Component-based Systems

8

Sumant Tambe, et. al Component QoS Modeling Language

AQuSerM 2008

CQML Meta-model CQML meta-model is based on the feature model shown before Abstract QoS elements correspond to the features All concrete QoS elements inherit associations from abstract elements More QoS elements can be added by inheriting from the abstract ones Can be superimposed on other component modeling languages (reusable)

Page 9: Towards A QoS Modeling and Modularization Framework for Component-based Systems

9

Sumant Tambe, et. al Component QoS Modeling Language

AQuSerM 2008

Composition of CQML and Structural Languages

CQML uses a base language with the features shown before (e.g., PICML) Added as a library in base language using GME meta-model composition QoS Associations are added with structural elements of the base language Does not disturb syntax, semantics, and interpreters of the base language Process can be repeated for other structural modeling languages

Page 10: Towards A QoS Modeling and Modularization Framework for Component-based Systems

10

Sumant Tambe, et. al Component QoS Modeling Language

AQuSerM 2008

Using CQML for M2M Transformation Problem: Generating fault-monitoring

infrastructure from CQML’s fault-tolerance modeling (FailOverUnit) capabilities

Step1: Model structural composition of component

Step2: Annotate components with FailOverUnit(s) marking them “protected”

Step3: Use aspect-oriented M2M transformation (described next) developed using Embedded Constraint Language (ECL)

Step4: Fault detector and heart-beat components are generated for “protected” components

Step5: Use existing interpreters of the base language to generate platform-specific metadata.

Page 11: Towards A QoS Modeling and Modularization Framework for Component-based Systems

11

Sumant Tambe, et. al Component QoS Modeling Language

AQuSerM 2008

M2M Transformation Algorithm

Detector1

Detector2

Planner3 Planner1

Error Recovery

Effector1

Effector2

Config

LEGEND

Receptacle

Event Sink

Event Source

Facet

FailOverUnit

Detector1

Detector2

Planner3 Planner1

Error Recovery

Effector1

Effector2

Config

LEGEND

Receptacle

Event Sink

Event Source

Facet

Transformation

Collocated Heartbeat ComponentsFault Detector

Page 12: Towards A QoS Modeling and Modularization Framework for Component-based Systems

12

Sumant Tambe, et. al Component QoS Modeling Language

AQuSerM 2008

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 coalesce two views into

one automatically In future: Generalizing the approach to analyze multiple QoS

requirements simultaneously

Page 13: Towards A QoS Modeling and Modularization Framework for Component-based Systems

13

Sumant Tambe, et. al Component QoS Modeling Language

AQuSerM 2008

Thank you!