an adaptation methodology for the deployment of mobile component-based applications dhouha ayed,...

26
An Adaptation Methodology for the Deployment of Mobile Component-based Applications Dhouha Ayed, Chantal Taconet, Guy Bernard and Yolande Berbers

Upload: stephanie-ray

Post on 25-Dec-2015

229 views

Category:

Documents


0 download

TRANSCRIPT

An Adaptation Methodology for the Deployment of Mobile

Component-based Applications

Dhouha Ayed, Chantal Taconet, Guy Bernard and Yolande Berbers

Overview

IntroductionDeployment of component-based

applicationsDeployment adaptation rulesDeployment adaptation processConclusion and perspectives

Introduction (1)

Mobile hand-held devices are becoming a powerful platform.

Scarce resources Constant context change: location,

network connection, physical environment, etc.

Introduction (2)

Repetitive deployment tasks: installation, configuration, uninstallation, reinstallation, reconfiguration, etc.

Requirements of mobile users

Deployment automationAdaptive deploymentJust-in-time deployment

Overview

IntroductionDeployment of component-based

applicationsDeployment adaptation rulesDeployment adaptation processConclusion and perspectives

Existent Component-based Deployment Solutions

Package and Deployment of CCM (Corba Component Model)

J2EE, Sun D&C (Deployment and

Configuration) of OMG .NET, Microsoft

Deployment Parameters

Application architecturePlacement of each componentComponent implementationProperty values

Solution

Definition of a set of rules which specify the variability of the deployment parameters identify the context information which impacts

the deployment parameters define how the deployment parameter can vary

according to the context Adaptation algorithmsDynamic determination values of the

deployment parameters

Online Shopping Application

LocalSelection

LV

CartMgmt

AccessControl

ViewSelection

PurchaseMgmt

GUI

Cart

Selection

DB

LVGUI screen>14’’

version

Cart

Laptop

DB

Zone A

Zone B

Zone INode A

Node B

Node I

LVGUI

PDA version

PDA

DB

Zone A

Zone B

Zone JNode A

Node B

Node J

Cart

Node I

Overview

IntroductionDeployment of component-based

applicationsDeployment adaptation rulesDeployment adaptation processConclusion and perspectives

Adaptation Rules

Adaptation rules constrainti parameter = valuei, or

constrainti parameter = ContextMapping(cxti)

Two levels Component level rules Application level rules

Component Level Rules

Properties ’ adaptation rules : default values and the values that can be taken according to the context Functional properties Non functional properties

Maximum LV size property: AvailableMemorysize < 30MB => size=100kB AvailableMemorysize > 30MB => size=200kB DefaultSize=10KBLanguages property: Language=action:contextMapping(UserLanguage) DefaultLanguage="English"

Component Level Rules (2)

Choice of implementation versions rules Several implementation versions Context constraints required by each

version: strong or weakimplementation 1: constraint 1: os name="WinNT" \/ os name="Win2000 type=strong constraint 2: disk size> 30MB type=strong .implementation n: constraint_j: os name="WinCE" type=strong . constraint_z: ..

Application Level Rules

Variability of the application architecture according to the context

Complete component level rules that depend on the application semantics

Architecture Variability

Obligatory components/connections : deployed whatever the context state

Optional components/connections : require specification of context constraints OBL OBL

OBL OPTOPT OPT

OBL

OPTOPT

OPT (userzone = ”nearnoncoveredzone”) \/ (LVpreferable = ”true”) => Existence(LV) = true

Adaptation Rules : Consistency Check

Two types Inconsistency in the description of the

application architecture At the application level Deployment of detached components

Inconsistency in the description of the rule constraints At the component and application levels Contradiction between the rules associated

with the same deployment parameter

Overview

IntroductionDeployment of component-based

applicationsDeployment adaptation rulesDeployment adaptation processConclusion and perspectives

Deployment Adaptation Process (1)

Collection of the context information and filtering of the relevant ones.

Extraction of the deployment adaptation rules at the application level.

For each component instance: Check its existence, if exist do:

If placement rules specified at the application level are specified, assign its placement

assign its properties values : if no rule can be applied , apply rules at the component level

Deployment Adaptation Process (2)

Determine the connections between the components.

use a generic algorithm to determin the placement and the implementation of the component instances

placement and implementations process

Find the valid implementations/nodes assignments:For each component, find a placement node for

each of his implementations

Select the best assignment maximizing the number of satisfied weak

constraints optimizing the resources consumption

Implementation

Component Middleware

Context-aware Application

Context-aware Infrastructure

DeploymentAdapter

Deployer

Context-aware deployment service

CCM deployment tool

Evaluation

Conclusion

Methodology to adapt the deployment of component-based applications to the context

Adaptation rules Generic adaptation algorithmsAdaptation of the deployment

parametersAdaptation rules are divided into two

levels: The rules which

Perspectives

Dynamic reconfiguration of the application assembly.

Map our model on .NET, J2EE. Study different policies to uninstall

applications