towards a qos modeling and modularization framework for component-based systems
Post on 23-Jan-2016
32 Views
Preview:
DESCRIPTION
TRANSCRIPT
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 : sutambe@dre.vanderbilt.edu
Advances in Quality of Service Management, (AQuSerM)
EDOC 2008 Workshop, Munich, Germany
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
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
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)
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
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
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
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)
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
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.
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
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
13
Sumant Tambe, et. al Component QoS Modeling Language
AQuSerM 2008
Thank you!
top related