1

Click here to load reader

Modeling Context and Dynamic Adaptations with Feature Models

  • Upload
    acher

  • View
    671

  • Download
    1

Embed Size (px)

DESCRIPTION

Self-adaptive and dynamic systems adapt their behavior according to the context of execution. The contextual information exhibits multiple variability factors which induce many possible configurations of the software system at runtime. The challenge is to specify the adaptation rules that can link the dynamic variability of the context with the possible variants of the system. Our work investigates the systematic use of feature models for modeling the context and the software variants, together with their inter relations, as a way to configure the adaptive system with respect to a particular context. A case study in the domain of video surveillance systems is used to illustrate the approach.

Citation preview

Page 1: Modeling Context and Dynamic Adaptations with Feature Models

Modeling Context and Dynamic Adaptations

with Feature ModelsMathieu Acher

1, Philippe Collet

1 , Franck Fleurey

2 , Philippe Lahire

1 , Sabine Moisan

3 , and Jean-Paul Rigault

3

1 University of Nice Sophia Antipolis, CNRS, France

{acher,collet,lahire}@i3s.unice.fr

2 SINTEF, Oslo, Norway

[email protected]

3 INRIA Sophia Antipolis Mediterranée, France,

{moisan,jpr}@sophia.inria.fr

Results

Video Surveillance Case Study

Future Work

Modeling Context

Modeling Software Variants

o Dynamic Adaptive Systems (DAS) are software systems

which have to dynamically adapt their behavior in order

to cope with a changing environment.

SPL of

Segmentation

Segmentation ClassificationFrame to Frame

Analysis

Task

DependentAcquisition

Variants

Base

o Consider DAS as a Software Product Line (SPL)

From common assets, different programs of a domain can be assembled

o Model also the context as an SPL

o Issues:

o Large number of software configurations

o Large number of contexts

TraversalAlgorithm

KernelFunction

Edge

Region

GridStep

WithMask

WithWindow

Classification

Contour

Density

Segmentation

VSSystem

ShadowElimination

LightingAnalysis

HeadLightDetection

DetectRapidChanges

LightingConditions

TimeOfDay

Night

Day

NaturalLight

ArtificialLight

Indoors

Outdoors

LightingNoise

Shadows

HeadLight

Flashes

Scene

VSContext

TraversalAlgorithm

KernelFunction

Edge

Region

GridStep

WithMask

WithWindow

Classification

Contour

Density

Segmentation

VSSystem

ShadowElimination

LightingAnalysis

HeadLightDetection

DetectRapidChanges

LightingConditions

TimeOfDay

Night

Day

NaturalLight

ArtificialLight

Indoors

Outdoors

LightingNoise

Shadows

HeadLight

Flashes

Scene

VSContext

o Leverage the expressiveness of FMs (e.g. attributes).

o Achieve an automatic translation between DSML and FMs.

o Update automatically contextual information.

o Connect state-of-the-art adaption engines to our models.

o The concept of configuration is naturally present and defined by the

semantics of FM.

o Uniform representation of the context model and the software system

makes possible to express relations between the two models.

o DSML and FM-based approaches can complement each other.

[email protected]

GridStep or WithWindow excludes Edge (C1)

GridStep excludes Ellipse (C2)

Edge excludes Density (C3)

initial context initial system

new context SPL after reconfiguration

Modeling Adaptation

Night and HeadLight implies HeadLightDetection (AR0)

not LightingNoise implies Region (AR1)

LightingNoise implies Edge (AR2)

ArtificialLight implies DetectRapidChanges (AR3)

Flashes or HeadLight implies Contour (AR4)

Revisiting the Approach with Feature Models

Problem Statement DSML Approach

o Variants

o Constraints

o Context

o Rules

3

1

2

1 Initial deployment: configuration of the system from the context

Dynamic update of the context happens

Dynamic reconfiguration of the system from the updated context

2

3

SPL of

Classification

SPL of Frame to

Frame Analysis

SPL of Task

Dependent

VariabilityModel

-context0..*

Rule

-rule0..* -priority : Integer

PropertyPriority

-priority 0..* ContextConstraint-context

1..1

-value : Integer

PropertyValue

-upper : Integer

-lower : Integer

DimensionVariant

VariantConstraint

-property0..*

-direction : Integer

Property-property

1..1

Variable

BooleanVariable

EnumVariable

-property

0..*

-available

-required

0..1

0..1

0..*-propertyValue

0..*

1..1

-type

-variant-dimension

0..*

0..1

-dependency

-property

1..1

VSSystem

LightingAnalyses

Acquisition

TraversalAlgorithm

GridStepWithWindow

KernelFunction

Color EdgeGrey

Classification

Model

Ellipse OmegaParallelepiped

Density HeadlightDetectContour

Segmentation

threshold: integer

Region

And-Group

Optional

Mandatory

Xor-Group

Or-Group

VSContext

ObjectOfInterestScene

LightingConditions

NaturalLight

OutdoorsArtificialLight Indoors

Camera

Resolution DepthOfField

TimeOfDay{night, day}: enum

LightingNoise{flashes,headlight,shadows}: enum

Sort

PersonVehicle