SlideShare une entreprise Scribd logo
1  sur  1
Télécharger pour lire hors ligne
Modeling Context and Dynamic Adaptations
                                          with Feature Models
                                                1                                  1                               2                                 1                                            3                                                                  3
                   Mathieu Acher , Philippe Collet , Franck Fleurey , Philippe Lahire , Sabine Moisan , and Jean-Paul Rigault

           1                                                                                                   2                                                           3
               University of Nice Sophia Antipolis, CNRS, France                                                 SINTEF, Oslo, Norway                                          INRIA Sophia Antipolis Mediterranée, France,
                       {acher,collet,lahire}@i3s.unice.fr                                                      franck.fleurey@sintef.no                                               {moisan,jpr}@sophia.inria.fr


                  Problem Statement                                                                                                                      DSML Approach
 o Dynamic Adaptive Systems (DAS) are software systems                                                                                     o Consider DAS as a Software Product Line (SPL)
   which have to dynamically adapt their behavior in order                                                                                 From common assets, different programs of a domain can be assembled
   to cope with a changing environment.                                                                            o Variants
                                                                                                                                           o Model also the context as an SPL
                                                                                                                   o Constraints
 o Issues:
                                                                                                                   o Context                                                                                                   VariantConstraint          -dependency
  o Large number of software configurations                                                                                                         VariabilityModel

                                                                                                                   o Rules                                                                                                                                0..1
  o Large number of contexts                                                                                                  0..*    -context
                                                                                                                                                                                                     0..*
                                                                                                                                                                                             -dimension                Dimension
                                                                                                                                                                                                                                              1..1 -variant      Variant
                                                                                                                                                                                                                  -upper : Integer
                                                                                                                              Variable
                      Video Surveillance Case Study                                                                                                                            -property
                                                                                                                                                                                           0..*                   -lower : Integer           -type     0..*



Variants                                                                                                                                                                                                                0..*     -property         -propertyValue 0..*
                    SPL of               SPL of               SPL of Frame to            SPL of Task                                                                                              -property
                                                              Frame Analysis             Dependent                                   BooleanVariable                                                                    Property                            PropertyValue
                 Segmentation         Classification
                                                                                                                                                                                                                  -direction : Integer          1..1       -value : Integer
                                                                                                                                                                           PropertyPriority                1..1
                                                                                                                                                         0..*   -rule   -priority : Integer                                                   -property
Base                                                                                                                                                                                                                                               -available
                                                                   Frame to Frame             Task                      EnumVariable                        Rule                                                     ContextConstraint              0..1
   Acquisition        Segmentation          Classification                                  Dependent                                                                      -priority       0..*       -context
                                                                      Analysis
                                                                                                                                                                                                                                                   -required
                                                                                                                                                                                                          1..1                                       0..1



                                               Revisiting the Approach with Feature Models
                                   Modeling Software Variants                                                                                            Configurations@run.time
     And-Group        Xor-Group
                                                           VSSystem                                                                        initial context                                                                       initial system
    Optional                                                                                                            VSContext                                                                          VSSystem
                      Or-Group
    Mandatory
                                                                                                                                 Scene                                                                                  Segmentation
                                     Segmentation                 Classification          LightingAnalyses                                                                                                                           TraversalAlgorithm
                                                                                                                                                 LightingConditions
           Acquisition               threshold: integer
                                                                                                                                                                                                                                           GridStep
                                                                                                                                                         NaturalLight
                                                                                                                                                                                                                                           WithMask
                                                                                                                                                         ArtificialLight
                                                          Contour     Density       Model     HeadlightDetect                                                                                                                          WithWindow
       TraversalAlgorithm         KernelFunction                                                                                                         Outdoors                                                               KernelFunction
                                                                                                                                                         Indoors                                                                      Edge
                                                                                                                                                         TimeOfDay                1                                                   Region
                                                                                                                                                                Night                                                                  ShadowElimination
WithWindow        GridStep        Color     Grey Edge        Region       Ellipse      Parallelepiped    Omega                                                                                                          Classification
                                                                                                                                                               Day
                                                                                                                                                                                                                               Density
                                GridStep or WithWindow excludes Edge (C1)                                                                                LightingNoise
                                                                                                                                                                                                                               Contour
                                             GridStep excludes Ellipse (C2)                                                                                     Flashes                                                 LightingAnalysis
                                                Edge excludes Density (C3)                                             2                                        Shadows                                                         DetectRapidChanges
                                                                                                                                                                HeadLight
                                             Modeling Context                                                                                                                                                                   HeadLightDetection

                                                                                                                                           new context                                                                 SPL after reconfiguration
                                                            VSContext                                                   VSContext                                                                          VSSystem
                                                                                                                                 Scene                                                                                  Segmentation
                       Scene
                                                                                            ObjectOfInterest                                     LightingConditions                                                                  TraversalAlgorithm
                                                                                                                                                                                                                                           GridStep
                                                                  Camera                                                                                 NaturalLight                                                                      WithMask
               LightingConditions                                                                                                                        ArtificialLight
                                                                                                                                                                                                                                       WithWindow
                                                    Resolution        DepthOfField                                                                       Outdoors                                                               KernelFunction
                                                                                                  Sort
NaturalLight                                                                                                                                             Indoors                                                                      Edge
                                                                                                                                                         TimeOfDay               3                                                    Region
    ArtificialLight                                       Outdoors        Indoors           Vehicle      Person                                                 Night                                                                  ShadowElimination
                                                                                                                                                                                                                        Classification
                 LightingNoise                 TimeOfDay
                                                                                                                                                               Day                                                             Density
        {flashes,headlight,shadows}: enum    {night, day}: enum                                                                                          LightingNoise                                                         Contour
                                                                                                                                                                Flashes                                                 LightingAnalysis
                                       Modeling Adaptation                                                                                                      Shadows                                                         DetectRapidChanges
                                                                                                                                                                HeadLight                                                       HeadLightDetection
                          Night and HeadLight implies HeadLightDetection (AR0)
                                           not LightingNoise implies Region (AR1)                                                      1     Initial deployment: configuration of the system from the context
                                                 LightingNoise implies Edge (AR2)
                                ArtificialLight implies DetectRapidChanges (AR3)                                                        2     Dynamic update of the context happens
                                      Flashes or HeadLight implies Contour (AR4)                                                       3     Dynamic reconfiguration of the system from the updated context



                                                    Results                                                                                                             Future Work
 o The concept of configuration is naturally present and defined by the                                                        o Leverage the expressiveness of FMs (e.g. attributes).
   semantics of FM.
                                                                                                                              o Achieve an automatic translation between DSML and FMs.
 o Uniform representation of the context model and the software system
   makes possible to express relations between the two models.                                                                o Update automatically contextual information.

 o DSML and FM-based approaches can complement each other.                                                                    o Connect state-of-the-art adaption engines to our models.

Contenu connexe

Plus de University of Rennes, INSA Rennes, Inria/IRISA, CNRS

Plus de University of Rennes, INSA Rennes, Inria/IRISA, CNRS (20)

Machine Learning and Deep Software Variability
Machine Learning and Deep Software VariabilityMachine Learning and Deep Software Variability
Machine Learning and Deep Software Variability
 
Mastering Software Variability for Innovation and Science
Mastering Software Variability for Innovation and ScienceMastering Software Variability for Innovation and Science
Mastering Software Variability for Innovation and Science
 
Transfer Learning Across Variants and Versions: The Case of Linux Kernel Size
Transfer Learning Across Variants and Versions: The Case of Linux Kernel SizeTransfer Learning Across Variants and Versions: The Case of Linux Kernel Size
Transfer Learning Across Variants and Versions: The Case of Linux Kernel Size
 
Reproducible Science and Deep Software Variability
Reproducible Science and Deep Software VariabilityReproducible Science and Deep Software Variability
Reproducible Science and Deep Software Variability
 
Software Variability and Artificial Intelligence
Software Variability and Artificial IntelligenceSoftware Variability and Artificial Intelligence
Software Variability and Artificial Intelligence
 
Teaching Software Product Lines: A Snapshot of Current Practices and Challenges
Teaching Software Product Lines: A Snapshot of Current Practices and ChallengesTeaching Software Product Lines: A Snapshot of Current Practices and Challenges
Teaching Software Product Lines: A Snapshot of Current Practices and Challenges
 
Exploiting the Enumeration of All Feature Model Configurations: A New Perspec...
Exploiting the Enumeration of All Feature Model Configurations: A New Perspec...Exploiting the Enumeration of All Feature Model Configurations: A New Perspec...
Exploiting the Enumeration of All Feature Model Configurations: A New Perspec...
 
Assessing Product Line Derivation Operators Applied to Java Source Code: An E...
Assessing Product Line Derivation Operators Applied to Java Source Code: An E...Assessing Product Line Derivation Operators Applied to Java Source Code: An E...
Assessing Product Line Derivation Operators Applied to Java Source Code: An E...
 
Synthesis of Attributed Feature Models From Product Descriptions
Synthesis of Attributed Feature Models From Product DescriptionsSynthesis of Attributed Feature Models From Product Descriptions
Synthesis of Attributed Feature Models From Product Descriptions
 
From Basic Variability Models to OpenCompare.org
From Basic Variability Models to OpenCompare.orgFrom Basic Variability Models to OpenCompare.org
From Basic Variability Models to OpenCompare.org
 
Pandoc: a universal document converter
Pandoc: a universal document converterPandoc: a universal document converter
Pandoc: a universal document converter
 
Metamorphic Domain-Specific Languages
Metamorphic Domain-Specific LanguagesMetamorphic Domain-Specific Languages
Metamorphic Domain-Specific Languages
 
3D Printing, Customization, and Product Lines
3D Printing, Customization, and Product Lines3D Printing, Customization, and Product Lines
3D Printing, Customization, and Product Lines
 
WebFML: Synthesizing Feature Models Everywhere (@ SPLC 2014)
WebFML: Synthesizing Feature Models Everywhere (@ SPLC 2014)WebFML: Synthesizing Feature Models Everywhere (@ SPLC 2014)
WebFML: Synthesizing Feature Models Everywhere (@ SPLC 2014)
 
A survey on teaching of software product lines
A survey on teaching of software product linesA survey on teaching of software product lines
A survey on teaching of software product lines
 
Product Comparison Matrix (PCM), Variability Modeling: The Wikipedia Case Study
Product Comparison Matrix (PCM), Variability Modeling: The Wikipedia Case StudyProduct Comparison Matrix (PCM), Variability Modeling: The Wikipedia Case Study
Product Comparison Matrix (PCM), Variability Modeling: The Wikipedia Case Study
 
Ec2013 tutorial-mb variability-final
Ec2013 tutorial-mb variability-finalEc2013 tutorial-mb variability-final
Ec2013 tutorial-mb variability-final
 
ASE'11 (short paper)
ASE'11 (short paper)ASE'11 (short paper)
ASE'11 (short paper)
 
ASE tool demonstration
ASE tool demonstrationASE tool demonstration
ASE tool demonstration
 
Acher PhD thesis defense
Acher PhD thesis defense Acher PhD thesis defense
Acher PhD thesis defense
 

Dernier

Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...fonyou31
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...christianmathematics
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxVishalSingh1417
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...PsychoTech Services
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Celine George
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Disha Kariya
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
General AI for Medical Educators April 2024
General AI for Medical Educators April 2024General AI for Medical Educators April 2024
General AI for Medical Educators April 2024Janet Corral
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 

Dernier (20)

Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
General AI for Medical Educators April 2024
General AI for Medical Educators April 2024General AI for Medical Educators April 2024
General AI for Medical Educators April 2024
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 

Modeling Context and Dynamic Adaptations with Feature Models

  • 1. Modeling Context and Dynamic Adaptations with Feature Models 1 1 2 1 3 3 Mathieu Acher , Philippe Collet , Franck Fleurey , Philippe Lahire , Sabine Moisan , and Jean-Paul Rigault 1 2 3 University of Nice Sophia Antipolis, CNRS, France SINTEF, Oslo, Norway INRIA Sophia Antipolis Mediterranée, France, {acher,collet,lahire}@i3s.unice.fr franck.fleurey@sintef.no {moisan,jpr}@sophia.inria.fr Problem Statement DSML Approach o Dynamic Adaptive Systems (DAS) are software systems o Consider DAS as a Software Product Line (SPL) which have to dynamically adapt their behavior in order From common assets, different programs of a domain can be assembled to cope with a changing environment. o Variants o Model also the context as an SPL o Constraints o Issues: o Context VariantConstraint -dependency o Large number of software configurations VariabilityModel o Rules 0..1 o Large number of contexts 0..* -context 0..* -dimension Dimension 1..1 -variant Variant -upper : Integer Variable Video Surveillance Case Study -property 0..* -lower : Integer -type 0..* Variants 0..* -property -propertyValue 0..* SPL of SPL of SPL of Frame to SPL of Task -property Frame Analysis Dependent BooleanVariable Property PropertyValue Segmentation Classification -direction : Integer 1..1 -value : Integer PropertyPriority 1..1 0..* -rule -priority : Integer -property Base -available Frame to Frame Task EnumVariable Rule ContextConstraint 0..1 Acquisition Segmentation Classification Dependent -priority 0..* -context Analysis -required 1..1 0..1 Revisiting the Approach with Feature Models Modeling Software Variants Configurations@run.time And-Group Xor-Group VSSystem initial context initial system Optional VSContext VSSystem Or-Group Mandatory Scene Segmentation Segmentation Classification LightingAnalyses TraversalAlgorithm LightingConditions Acquisition threshold: integer GridStep NaturalLight WithMask ArtificialLight Contour Density Model HeadlightDetect WithWindow TraversalAlgorithm KernelFunction Outdoors KernelFunction Indoors Edge TimeOfDay 1 Region Night ShadowElimination WithWindow GridStep Color Grey Edge Region Ellipse Parallelepiped Omega Classification Day Density GridStep or WithWindow excludes Edge (C1) LightingNoise Contour GridStep excludes Ellipse (C2) Flashes LightingAnalysis Edge excludes Density (C3) 2 Shadows DetectRapidChanges HeadLight Modeling Context HeadLightDetection new context SPL after reconfiguration VSContext VSContext VSSystem Scene Segmentation Scene ObjectOfInterest LightingConditions TraversalAlgorithm GridStep Camera NaturalLight WithMask LightingConditions ArtificialLight WithWindow Resolution DepthOfField Outdoors KernelFunction Sort NaturalLight Indoors Edge TimeOfDay 3 Region ArtificialLight Outdoors Indoors Vehicle Person Night ShadowElimination Classification LightingNoise TimeOfDay Day Density {flashes,headlight,shadows}: enum {night, day}: enum LightingNoise Contour Flashes LightingAnalysis Modeling Adaptation Shadows DetectRapidChanges HeadLight HeadLightDetection Night and HeadLight implies HeadLightDetection (AR0) not LightingNoise implies Region (AR1) 1 Initial deployment: configuration of the system from the context LightingNoise implies Edge (AR2) ArtificialLight implies DetectRapidChanges (AR3) 2 Dynamic update of the context happens Flashes or HeadLight implies Contour (AR4) 3 Dynamic reconfiguration of the system from the updated context Results Future Work o The concept of configuration is naturally present and defined by the o Leverage the expressiveness of FMs (e.g. attributes). semantics of FM. o Achieve an automatic translation between DSML and FMs. o Uniform representation of the context model and the software system makes possible to express relations between the two models. o Update automatically contextual information. o DSML and FM-based approaches can complement each other. o Connect state-of-the-art adaption engines to our models.