Presentation is loading. Please wait.

Presentation is loading. Please wait.

Sumant Tambe* Akshay Dabholkar Aniruddha Gokhale

Similar presentations


Presentation on theme: "Sumant Tambe* Akshay Dabholkar Aniruddha Gokhale"— Presentation transcript:

1 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 : 16th Annual IEEE International Conference and Workshop on the Engineering of Computer Based Systems (ECBS), San Francisco, CA, USA

2 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.

3 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

4 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)

5 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 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.

7 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

8 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

9 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

10 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

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

12 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

13 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

14 Thank you!


Download ppt "Sumant Tambe* Akshay Dabholkar Aniruddha Gokhale"

Similar presentations


Ads by Google