SlideShare une entreprise Scribd logo
1  sur  61
Using Composite Feature
                Models to Support Agile
            Software Product Line Evolution
                                  Simon Urli, Mireille Blay-Fornarino,
                                    Philippe Collet, Sébastien Mosser

                                             urli@i3s.unice.fr
                            I3S Laboratory, Université de Nice-Sophia Antipolis




Models and Evolution 2012                            1
Plan




Models and Evolution 2012    2
Plan
               •     Usecase: ease the creation of customized
                     information broadcasting system




Models and Evolution 2012                2
Plan
               •     Usecase: ease the creation of customized
                     information broadcasting system
               •     Why a SPL is adapted to our usecase?




Models and Evolution 2012                2
Plan
               •     Usecase: ease the creation of customized
                     information broadcasting system
               •     Why a SPL is adapted to our usecase?
               •     Why is it difficult to evolve this SPL?




Models and Evolution 2012                  2
Plan
               •     Usecase: ease the creation of customized
                     information broadcasting system
               •     Why a SPL is adapted to our usecase?
               •     Why is it difficult to evolve this SPL?
               •     How a composition of feature models can help
                     us?




Models and Evolution 2012                  2
Plan
               •     Usecase: ease the creation of customized
                     information broadcasting system
               •     Why a SPL is adapted to our usecase?
               •     Why is it difficult to evolve this SPL?
               •     How a composition of feature models can help
                     us?
               •     How to manage the evolution of the different
                     feature models independently?

Models and Evolution 2012                  2
YourCast: to ease the creation of
                    information broadcasting systems




Models and Evolution 2012           3
YourCast: to ease the creation of
                    information broadcasting systems




Models and Evolution 2012           4
... and the customization for different users.




Models and Evolution 2012         5
... and the customization for different users.




Models and Evolution 2012         5
YourCast: some concepts




Models and Evolution 2012   6
YourCast: some concepts
                Sources




Models and Evolution 2012   6
YourCast: some concepts
                Sources




   Layout




Models and Evolution 2012   6
YourCast: some concepts
                Sources



                                Renderers

   Layout




Models and Evolution 2012   6
Requirements




Models and Evolution 2012        7
Requirements

               • One must be able to choose among all the
                     avalaible elements: need of Variability




Models and Evolution 2012               7
Requirements

               • One must be able to choose among all the
                     avalaible elements: need of Variability

               • A community must be able to contribute to
                     the system: need of Evolutivity




Models and Evolution 2012               7
Requirements

               • One must be able to choose among all the
                     avalaible elements: need of Variability

               • A community must be able to contribute to
                     the system: need of Evolutivity
               • One must be able to configure a valid
                     system at any time: need of Agility


Models and Evolution 2012               7
Software Product Line




Models and Evolution 2012   8
Software Product Line

               • Mass production of reliables and
                     personalized softwares




Models and Evolution 2012              8
Software Product Line

               • Mass production of reliables and
                     personalized softwares
               • Generation of softwares from
                     configurations and assets




Models and Evolution 2012              8
Software Product Line

               • Mass production of reliables and
                     personalized softwares
               • Generation of softwares from
                     configurations and assets
               • Configurations created by end-users from
                     variability models


Models and Evolution 2012                 8
Feature Model




Models and Evolution 2012         9
Feature Model
                                                                              Key
                                               Source                               Mandatory
                                                                                     feature
                                                                                     Optional
                                                                                     feature

                                  InfoKind                Criteria                    XOR

                                                                                       OR

                                                                                     Implies
                   PictureAlbum        Announces              Sort   Filter          Excludes




                  Picasa          FlickR           Announcement




Models and Evolution 2012                                 9
A first kernel...
                                                                              Key
                                  BroadcastingSystem
                                                                                    Mandatory
                                                                                     feature
                                                                                    Optional
                                                                                    feature
                      Layout           Source                  Renderer               XOR

                                                                                       OR

                                                                                     Implies

                      Classic          InfoKind               SupportInfo            Excludes




                                      Announces               Announces




                                    Announcement            SimpleAnnounces



Models and Evolution 2012                              10
... which becomes difficult to evolve
                                                BroadcastingSystem
                                                                                                             AboutKey domain objects for now.
                                                                                                                   80
                                                                                                                              Mandatory
                                                                                                                               feature
                                                                                                             About 280Optional features if we
                                                                                                                         000
                                                                                                                        feature

             Layout                            Source                                  Renderer
                                                                                                             represent them in one FM
                                                                                                                         XOR

                                                                                                                                   OR

                                                                                                                               Implies
                                                                                                                               Excludes
   Classic              IRSAM                  InfoKind                                      SupportInfo




     Calendar                   PictureAlbum        Announces                             Announces                 PictureAlbum            Calendar



              HyperCal
                                                                                                      AlbumMosaic                                         CalendarByDay
                                      FlickR                    Menu                                                        AgendaSession

                      Picasa
                                          Announcement                                                                                         CalendarByMonth
                                                                       SimpleAnnounces                         AlbumSlide
ICalReader


                                                                                         SimpleMenu




Models and Evolution 2012                                                         11
Idea: composite feature models




Models and Evolution 2012   12
Idea: composite feature models


               • Use a composition of feature models to
                     keep things separated




Models and Evolution 2012              12
Idea: composite feature models


               • Use a composition of feature models to
                     keep things separated
               • Manage the evolution of each domain
                     objects separately




Models and Evolution 2012                 12
Idea: composite feature models


               • Use a composition of feature models to
                     keep things separated
               • Manage the evolution of each domain
                     objects separately
               • Manage the evolution of dependencies in
                     abstracting them


Models and Evolution 2012                 12
Keep things separated




Models and Evolution 2012      13
Keep things separated




Models and Evolution 2012      13
What about the dependencies?
                                                BroadcastingSystem                                                      Key
                                                                                                                               Mandatory
                                                                                                                                feature
                                                                                                                                Optional
                                                                                                                                feature

             Layout                            Source                                  Renderer                                    XOR

                                                                                                                                   OR

                                                                                                                                Implies
                                                                                                                                Excludes
   Classic              IRSAM                  InfoKind                                      SupportInfo




     Calendar                   PictureAlbum        Announces                             Announces                 PictureAlbum              Calendar



              HyperCal
                                                                                                      AlbumMosaic                                           CalendarByDay
                                      FlickR                    Menu                                                          AgendaSession

                      Picasa
                                          Announcement                                                                                           CalendarByMonth
                                                                       SimpleAnnounces                         AlbumSlide
ICalReader


                                                                                         SimpleMenu




Models and Evolution 2012                                                         14
Use models to drive composite FMs
                                                                       1

                   RestrictionFunction           FMAssociation                FMAssociationEnd
                                          0..*
                                                                      1


                                                                                                             Metamodel
                                                                                         1

                    FeatureModel                 DomainElement                MultiplicityElement
                                                                          1




                                                   BroadcastingSystem
                                                                                                               Model


                                                             1..*
                                   1..1                                                        1..*
                                          1..1      1..*              1..1              1..1
                            Layout                         Renderer                                 Source




Models and Evolution 2012                                        15
Use models to drive composite FMs
                                          BroadcastingSystem
                                                                                         Model

                                                   1..*
                            1..1                                             1..*
                                   1..1   1..*                 1..1   1..1
                    Layout                       Renderer                       Source




                                                                                         Feature
                                                                                         models
Models and Evolution 2012                                 16
Use models to drive composite FMs
                                                                  BroadcastingSystem
                                                                                                                                                                           Model

                                                                                 1..*
                                     1..1                                                                                      1..*
                                            1..1                   1..*                              1..1              1..1
                           Layout                                            Renderer                                                 Source




                                                                                                                                               Source


             Layout
                                                                                                                                               InfoKind
                                                   Renderer




   Classic            IRSAM                     SupportInfo                                                                Calendar        PictureAlbum             Announces




                                Announces          PictureAlbum            Calendar                           ICalReader      HyperCal    Picasa          FlickR   Announcement      Menu



                                                                                                   CalendarByDay

                                                              AlbumSlide
                                   SimpleMenu                                         CalendarByMonth

                                            AlbumMosaic              AgendaSession                                                                                         Feature
                       SimpleAnnounces
                                                                                                                                                                           models
Models and Evolution 2012                                                                     16
Define functions to express dependencies
                                                                                       1

                            RestrictionFunction              FMAssociation                    FMAssociationEnd
                                                  0..*
                                                                                      1


                                                                                                                    Metamodel
                                                                                                         1

                             FeatureModel                    DomainElement                    MultiplicityElement
                                                                                          1




                                                               1..1        1..1
                                                  Renderer                        Source                              Model




                                                                                                                     Feature
                                                                                                                     models




Models and Evolution 2012                                             17
Define functions to express dependencies
                                                                                       1

                            RestrictionFunction              FMAssociation                    FMAssociationEnd
                                                  0..*
                                                                                      1


                                                                                                                    Metamodel
                                                                                                         1

                             FeatureModel                    DomainElement                    MultiplicityElement
                                                                                          1




                                                               1..1        1..1
                                                  Renderer                        Source                              Model




                                                                                                                     Feature
                                                                                                                     models




Models and Evolution 2012                                             17
Still separated FMs are
                                complex




                                      A simplified version realized in june 2012




Models and Evolution 2012        18
From domain objects to FMs by merging




Models and Evolution 2012          19
From domain objects to FMs by merging

                                  Source           Source       Source


                                  TypeInfo         TypeInfo     TypeInfo


                                PictureAlbum     PictureAlbum    Tweet


                                   FlickR          Picasa       Twitter




Models and Evolution 2012                   19
From domain objects to FMs by merging

                                  Source                   Source                Source


                                  TypeInfo                TypeInfo               TypeInfo


                                PictureAlbum            PictureAlbum              Tweet


                                   FlickR                  Picasa                Twitter




                            ∪               FlickR
                                                            Source


                                                            TypeInfo


                                                 PictureAlbum


                                                        Picasa
                                                                       Tweet


                                                                       Twitter




Models and Evolution 2012                   19
Evolution driven by a
                       community requires refactoring

                    Source                           Source                            Source




         InfoKind            Criteria     InfoKind             Criteria     InfoKind            Criteria




                                                                                                           ...
        Announces             Sort      PictureAlbum               Sort   PictureAlbum           Sort




      Announcement            Date         FlickR             DateTime      Picasa              ByDate




Models and Evolution 2012                                     20
Evolution driven by a community requires
                                                refactoring

                   Source                           Source                            Source




        InfoKind            Criteria     InfoKind             Criteria     InfoKind            Criteria




                                                                                                          ...
       Announces             Sort      PictureAlbum            Sort      PictureAlbum           Sort




     Announcement            Date         FlickR             DateTime      Picasa              ByDate




Models and Evolution 2012                                    21
Evolution driven by a community requires
                                                refactoring

                   Source                           Source                            Source




        InfoKind            Criteria     InfoKind             Criteria     InfoKind            Criteria




                                                                                                          ...
       Announces             Sort      PictureAlbum            Sort      PictureAlbum           Sort




     Announcement            Date         FlickR             DateTime      Picasa              ByDate




Models and Evolution 2012
                                                             =
                                                             21
Use refactoring scripts to
                        support agile evolution
                             // renaming
                             renameFeature sourcePicasa.DateTime as "Date"

                             rootname = strConcat rootname "."

                             foreach (t in s) do
                              fname = name t
                              newname = strConcat rootname fname
                              renameFeature t newname
                             end

                             // remove/insert
                             removeFeature sourcePicasa.Date
                             insert fmPartiel into fm1.fmroot with MAND



                            FAMILIAR: FeAture Model scrIpt Language for manIpulation and
                                               Automatic Reasoning



Models and Evolution 2012                               22
Conclusion




    23
Conclusion
Need of tools to agile management of
feature models evolution




                 23
Conclusion
Need of tools to agile management of
feature models evolution
Separation in many feature models




                  23
Conclusion
Need of tools to agile management of
feature models evolution
Separation in many feature models
Definition of a model to link concepts




                  23
Conclusion
Need of tools to agile management of
feature models evolution
Separation in many feature models
Definition of a model to link concepts
Expression of dependencies in the model



                  23
Conclusion
Need of tools to agile management of
feature models evolution
Separation in many feature models
Definition of a model to link concepts
Expression of dependencies in the model
Creation of feature models in a bottom-up
approach using a merge operator
                  23
... and perspectives!




Models and Evolution 2012       24
... and perspectives!
               ‣ Validation of our approach on other
                     usecases:




Models and Evolution 2012          24
... and perspectives!
               ‣ Validation of our approach on other
                     usecases:
                    ‣ Internet-of-Things: Sens-App project




Models and Evolution 2012              24
... and perspectives!
               ‣ Validation of our approach on other
                     usecases:
                    ‣ Internet-of-Things: Sens-App project
                    ‣ Scientific Workflows: refactoring of an
                            existing work




Models and Evolution 2012                   24
... and perspectives!
               ‣ Validation of our approach on other
                     usecases:
                    ‣ Internet-of-Things: Sens-App project
                    ‣ Scientific Workflows: refactoring of an
                            existing work
               ‣ Automatization of vocabulary alignment:
                     towards ontology

Models and Evolution 2012                   24
Thanks!




Models and Evolution 2012      25
Thanks!




Models and Evolution 2012      25
26

Contenu connexe

Tendances

IBM - Paul Pilotto
IBM - Paul PilottoIBM - Paul Pilotto
IBM - Paul PilottoIDGnederland
 
IBM - Yannick Stiller
IBM - Yannick StillerIBM - Yannick Stiller
IBM - Yannick StillerIDGnederland
 
IBM - Craig Bender
IBM - Craig BenderIBM - Craig Bender
IBM - Craig BenderIDGnederland
 
RDZ for Cobol Programmers slides 7 14 Debugger deep dive final2
RDZ for Cobol Programmers slides 7 14 Debugger deep dive final2RDZ for Cobol Programmers slides 7 14 Debugger deep dive final2
RDZ for Cobol Programmers slides 7 14 Debugger deep dive final2Susan Yoskin
 
Your first steps with Visual COBOL - COBOL Developer Day
Your first steps with Visual COBOL -  COBOL Developer DayYour first steps with Visual COBOL -  COBOL Developer Day
Your first steps with Visual COBOL - COBOL Developer DayMicro Focus
 
June 25 webcast adding mobile to power applications
June 25 webcast   adding mobile to power applicationsJune 25 webcast   adding mobile to power applications
June 25 webcast adding mobile to power applicationsLeigh Williamson
 
Rational developer for z systems : DevOps benefits here and now
Rational developer for z systems : DevOps benefits here and nowRational developer for z systems : DevOps benefits here and now
Rational developer for z systems : DevOps benefits here and nowDevOps for Enterprise Systems
 
What Is Your PLM Challenge - Manage configurable products and maintain produc...
What Is Your PLM Challenge - Manage configurable products and maintain produc...What Is Your PLM Challenge - Manage configurable products and maintain produc...
What Is Your PLM Challenge - Manage configurable products and maintain produc...Dawn Collins
 
What Is Your PLM Challenge - Decrease downtime and minimize production problems
What Is Your PLM Challenge - Decrease downtime and minimize production problemsWhat Is Your PLM Challenge - Decrease downtime and minimize production problems
What Is Your PLM Challenge - Decrease downtime and minimize production problemsDawn Collins
 
Some "Do"s and "Dont'"s of Benchmarking
Some "Do"s and "Dont'"s of BenchmarkingSome "Do"s and "Dont'"s of Benchmarking
Some "Do"s and "Dont'"s of BenchmarkingPaulShawIBM
 
Something super epic...
Something super epic...Something super epic...
Something super epic...Rabah Rahil
 
Analytics on z Systems Focus on Real Time - Hélène Lyon
Analytics on z Systems Focus on Real Time - Hélène LyonAnalytics on z Systems Focus on Real Time - Hélène Lyon
Analytics on z Systems Focus on Real Time - Hélène LyonNRB
 
Cincom Smalltalk Roadmap 2010
Cincom Smalltalk Roadmap 2010Cincom Smalltalk Roadmap 2010
Cincom Smalltalk Roadmap 2010ESUG
 
5.18 external bluemix ref
5.18 external   bluemix ref5.18 external   bluemix ref
5.18 external bluemix refThinkForwardest
 
Bluemix successstories april_2015
Bluemix successstories april_2015Bluemix successstories april_2015
Bluemix successstories april_2015Ken Dooley
 
IBM Z for the Digital Enterprise - IBM Z Software Keynote
IBM Z for the Digital Enterprise - IBM Z Software KeynoteIBM Z for the Digital Enterprise - IBM Z Software Keynote
IBM Z for the Digital Enterprise - IBM Z Software KeynoteDevOps for Enterprise Systems
 
COBie - Standardized Product Data Sheets for BIM
COBie - Standardized Product Data Sheets for BIMCOBie - Standardized Product Data Sheets for BIM
COBie - Standardized Product Data Sheets for BIMBiswajit Kundu
 

Tendances (18)

IBM - Paul Pilotto
IBM - Paul PilottoIBM - Paul Pilotto
IBM - Paul Pilotto
 
IBM - Yannick Stiller
IBM - Yannick StillerIBM - Yannick Stiller
IBM - Yannick Stiller
 
IBM - Craig Bender
IBM - Craig BenderIBM - Craig Bender
IBM - Craig Bender
 
RDZ for Cobol Programmers slides 7 14 Debugger deep dive final2
RDZ for Cobol Programmers slides 7 14 Debugger deep dive final2RDZ for Cobol Programmers slides 7 14 Debugger deep dive final2
RDZ for Cobol Programmers slides 7 14 Debugger deep dive final2
 
Your first steps with Visual COBOL - COBOL Developer Day
Your first steps with Visual COBOL -  COBOL Developer DayYour first steps with Visual COBOL -  COBOL Developer Day
Your first steps with Visual COBOL - COBOL Developer Day
 
June 25 webcast adding mobile to power applications
June 25 webcast   adding mobile to power applicationsJune 25 webcast   adding mobile to power applications
June 25 webcast adding mobile to power applications
 
Artus ESE 2008
Artus ESE 2008Artus ESE 2008
Artus ESE 2008
 
Rational developer for z systems : DevOps benefits here and now
Rational developer for z systems : DevOps benefits here and nowRational developer for z systems : DevOps benefits here and now
Rational developer for z systems : DevOps benefits here and now
 
What Is Your PLM Challenge - Manage configurable products and maintain produc...
What Is Your PLM Challenge - Manage configurable products and maintain produc...What Is Your PLM Challenge - Manage configurable products and maintain produc...
What Is Your PLM Challenge - Manage configurable products and maintain produc...
 
What Is Your PLM Challenge - Decrease downtime and minimize production problems
What Is Your PLM Challenge - Decrease downtime and minimize production problemsWhat Is Your PLM Challenge - Decrease downtime and minimize production problems
What Is Your PLM Challenge - Decrease downtime and minimize production problems
 
Some "Do"s and "Dont'"s of Benchmarking
Some "Do"s and "Dont'"s of BenchmarkingSome "Do"s and "Dont'"s of Benchmarking
Some "Do"s and "Dont'"s of Benchmarking
 
Something super epic...
Something super epic...Something super epic...
Something super epic...
 
Analytics on z Systems Focus on Real Time - Hélène Lyon
Analytics on z Systems Focus on Real Time - Hélène LyonAnalytics on z Systems Focus on Real Time - Hélène Lyon
Analytics on z Systems Focus on Real Time - Hélène Lyon
 
Cincom Smalltalk Roadmap 2010
Cincom Smalltalk Roadmap 2010Cincom Smalltalk Roadmap 2010
Cincom Smalltalk Roadmap 2010
 
5.18 external bluemix ref
5.18 external   bluemix ref5.18 external   bluemix ref
5.18 external bluemix ref
 
Bluemix successstories april_2015
Bluemix successstories april_2015Bluemix successstories april_2015
Bluemix successstories april_2015
 
IBM Z for the Digital Enterprise - IBM Z Software Keynote
IBM Z for the Digital Enterprise - IBM Z Software KeynoteIBM Z for the Digital Enterprise - IBM Z Software Keynote
IBM Z for the Digital Enterprise - IBM Z Software Keynote
 
COBie - Standardized Product Data Sheets for BIM
COBie - Standardized Product Data Sheets for BIMCOBie - Standardized Product Data Sheets for BIM
COBie - Standardized Product Data Sheets for BIM
 

Similaire à Using Composite Feature Models to Support Agile Software Product Line Evolution

How to Build Composite Applications with PRISM
How to Build Composite Applications with PRISMHow to Build Composite Applications with PRISM
How to Build Composite Applications with PRISMDataLeader.io
 
The SENSORIA Development Environment
The SENSORIA Development EnvironmentThe SENSORIA Development Environment
The SENSORIA Development EnvironmentIstvan Rath
 
UI5 Evolution Overview 2018
UI5 Evolution Overview 2018UI5 Evolution Overview 2018
UI5 Evolution Overview 2018Peter Muessig
 
webinar LieberLieber & Emerasoft. Verso il DevOps, con i modelli
webinar LieberLieber & Emerasoft. Verso il DevOps, con i modelliwebinar LieberLieber & Emerasoft. Verso il DevOps, con i modelli
webinar LieberLieber & Emerasoft. Verso il DevOps, con i modelliEmerasoft, solutions to collaborate
 
A classification framework for component models
A classification framework for component modelsA classification framework for component models
A classification framework for component modelsIvica Crnkovic
 
Eclipse Summit 2008 - Thales - SolFa
Eclipse Summit 2008 - Thales - SolFaEclipse Summit 2008 - Thales - SolFa
Eclipse Summit 2008 - Thales - SolFaBENOIT_LANGLOIS
 
Best practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini PatilBest practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini PatilRoopa Nadkarni
 
Enterprise Dev Ops At Scale
Enterprise Dev Ops At ScaleEnterprise Dev Ops At Scale
Enterprise Dev Ops At ScaleWesley Pullen
 
Towards a Modularity Maturity Model
Towards a Modularity Maturity ModelTowards a Modularity Maturity Model
Towards a Modularity Maturity ModelGraham Charters
 
No magic@md day2011
No magic@md day2011No magic@md day2011
No magic@md day2011MDDAY11
 
Mdeforge slides
Mdeforge slidesMdeforge slides
Mdeforge slidesJuri Rocco
 
Developing Modeling Tool for RM-ODP with Eclipse Sirius
Developing Modeling Tool for RM-ODP with Eclipse SiriusDeveloping Modeling Tool for RM-ODP with Eclipse Sirius
Developing Modeling Tool for RM-ODP with Eclipse SiriusObeo
 
From Monolithic to Microservices in 45 Minutes
From Monolithic to Microservices in 45 MinutesFrom Monolithic to Microservices in 45 Minutes
From Monolithic to Microservices in 45 MinutesMongoDB
 
Using OSGi R4 Service Platform in Vehicle Embedded Systems - Miguel Lopez, So...
Using OSGi R4 Service Platform in Vehicle Embedded Systems - Miguel Lopez, So...Using OSGi R4 Service Platform in Vehicle Embedded Systems - Miguel Lopez, So...
Using OSGi R4 Service Platform in Vehicle Embedded Systems - Miguel Lopez, So...mfrancis
 
EnArWeb: Enterprise Architect in the Web
EnArWeb: Enterprise Architect in the WebEnArWeb: Enterprise Architect in the Web
EnArWeb: Enterprise Architect in the WebKonrad Wieland
 
DerbyDev_ModMonolith_290323.pptx
DerbyDev_ModMonolith_290323.pptxDerbyDev_ModMonolith_290323.pptx
DerbyDev_ModMonolith_290323.pptxAaronWhite801549
 
Wikidsmart PM: Requirements Management within Confluence, Integrated with JIRA
Wikidsmart PM: Requirements Management within Confluence, Integrated with JIRAWikidsmart PM: Requirements Management within Confluence, Integrated with JIRA
Wikidsmart PM: Requirements Management within Confluence, Integrated with JIRAzAgile
 
History and Future of the Downloadable Mobile Marketplace - Jon Bostrom, Nokia
History and Future of the Downloadable Mobile Marketplace - Jon Bostrom, NokiaHistory and Future of the Downloadable Mobile Marketplace - Jon Bostrom, Nokia
History and Future of the Downloadable Mobile Marketplace - Jon Bostrom, Nokiamfrancis
 

Similaire à Using Composite Feature Models to Support Agile Software Product Line Evolution (20)

How to Build Composite Applications with PRISM
How to Build Composite Applications with PRISMHow to Build Composite Applications with PRISM
How to Build Composite Applications with PRISM
 
The SENSORIA Development Environment
The SENSORIA Development EnvironmentThe SENSORIA Development Environment
The SENSORIA Development Environment
 
UI5 Evolution Overview 2018
UI5 Evolution Overview 2018UI5 Evolution Overview 2018
UI5 Evolution Overview 2018
 
D linsync10 fusaapps
D linsync10 fusaappsD linsync10 fusaapps
D linsync10 fusaapps
 
webinar LieberLieber & Emerasoft. Verso il DevOps, con i modelli
webinar LieberLieber & Emerasoft. Verso il DevOps, con i modelliwebinar LieberLieber & Emerasoft. Verso il DevOps, con i modelli
webinar LieberLieber & Emerasoft. Verso il DevOps, con i modelli
 
A classification framework for component models
A classification framework for component modelsA classification framework for component models
A classification framework for component models
 
Eclipse Summit 2008 - Thales - SolFa
Eclipse Summit 2008 - Thales - SolFaEclipse Summit 2008 - Thales - SolFa
Eclipse Summit 2008 - Thales - SolFa
 
Best practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini PatilBest practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini Patil
 
Enterprise Dev Ops At Scale
Enterprise Dev Ops At ScaleEnterprise Dev Ops At Scale
Enterprise Dev Ops At Scale
 
Towards a Modularity Maturity Model
Towards a Modularity Maturity ModelTowards a Modularity Maturity Model
Towards a Modularity Maturity Model
 
Mdeforge
MdeforgeMdeforge
Mdeforge
 
No magic@md day2011
No magic@md day2011No magic@md day2011
No magic@md day2011
 
Mdeforge slides
Mdeforge slidesMdeforge slides
Mdeforge slides
 
Developing Modeling Tool for RM-ODP with Eclipse Sirius
Developing Modeling Tool for RM-ODP with Eclipse SiriusDeveloping Modeling Tool for RM-ODP with Eclipse Sirius
Developing Modeling Tool for RM-ODP with Eclipse Sirius
 
From Monolithic to Microservices in 45 Minutes
From Monolithic to Microservices in 45 MinutesFrom Monolithic to Microservices in 45 Minutes
From Monolithic to Microservices in 45 Minutes
 
Using OSGi R4 Service Platform in Vehicle Embedded Systems - Miguel Lopez, So...
Using OSGi R4 Service Platform in Vehicle Embedded Systems - Miguel Lopez, So...Using OSGi R4 Service Platform in Vehicle Embedded Systems - Miguel Lopez, So...
Using OSGi R4 Service Platform in Vehicle Embedded Systems - Miguel Lopez, So...
 
EnArWeb: Enterprise Architect in the Web
EnArWeb: Enterprise Architect in the WebEnArWeb: Enterprise Architect in the Web
EnArWeb: Enterprise Architect in the Web
 
DerbyDev_ModMonolith_290323.pptx
DerbyDev_ModMonolith_290323.pptxDerbyDev_ModMonolith_290323.pptx
DerbyDev_ModMonolith_290323.pptx
 
Wikidsmart PM: Requirements Management within Confluence, Integrated with JIRA
Wikidsmart PM: Requirements Management within Confluence, Integrated with JIRAWikidsmart PM: Requirements Management within Confluence, Integrated with JIRA
Wikidsmart PM: Requirements Management within Confluence, Integrated with JIRA
 
History and Future of the Downloadable Mobile Marketplace - Jon Bostrom, Nokia
History and Future of the Downloadable Mobile Marketplace - Jon Bostrom, NokiaHistory and Future of the Downloadable Mobile Marketplace - Jon Bostrom, Nokia
History and Future of the Downloadable Mobile Marketplace - Jon Bostrom, Nokia
 

Plus de Simon Urli

Spoon: Open Source Library to analyze, rewrite, transform, transpile Java Sou...
Spoon: Open Source Library to analyze, rewrite, transform, transpile Java Sou...Spoon: Open Source Library to analyze, rewrite, transform, transpile Java Sou...
Spoon: Open Source Library to analyze, rewrite, transform, transpile Java Sou...Simon Urli
 
How to Design a Program Repair Bot? Insights from the Repairnator Project
How to Design a Program Repair Bot? Insights from the Repairnator ProjectHow to Design a Program Repair Bot? Insights from the Repairnator Project
How to Design a Program Repair Bot? Insights from the Repairnator ProjectSimon Urli
 
How to Design a Program Repair Bot? Insights from the Repairnator Project
How to Design a Program Repair Bot? Insights from the Repairnator ProjectHow to Design a Program Repair Bot? Insights from the Repairnator Project
How to Design a Program Repair Bot? Insights from the Repairnator ProjectSimon Urli
 
A Visual Support for Decomposing Complex Feature Models
A Visual Support for Decomposing Complex Feature ModelsA Visual Support for Decomposing Complex Feature Models
A Visual Support for Decomposing Complex Feature ModelsSimon Urli
 
GDR GPL 2015 - Processus de Configuration Flexible pour Lignes de Produits Lo...
GDR GPL 2015 - Processus de Configuration Flexible pour Lignes de Produits Lo...GDR GPL 2015 - Processus de Configuration Flexible pour Lignes de Produits Lo...
GDR GPL 2015 - Processus de Configuration Flexible pour Lignes de Produits Lo...Simon Urli
 
Handling Complex Configurations in Software Product Lines: a Tooled Approach
Handling Complex Configurations in Software Product Lines: a Tooled ApproachHandling Complex Configurations in Software Product Lines: a Tooled Approach
Handling Complex Configurations in Software Product Lines: a Tooled ApproachSimon Urli
 
Managing a Software Ecosystem Using a Multiple Software Product Line: a Case ...
Managing a Software Ecosystem Using a Multiple Software Product Line: a Case ...Managing a Software Ecosystem Using a Multiple Software Product Line: a Case ...
Managing a Software Ecosystem Using a Multiple Software Product Line: a Case ...Simon Urli
 
Vers des interfaces graphiques flexibles de configurations
Vers des interfaces graphiques flexibles de configurationsVers des interfaces graphiques flexibles de configurations
Vers des interfaces graphiques flexibles de configurationsSimon Urli
 

Plus de Simon Urli (8)

Spoon: Open Source Library to analyze, rewrite, transform, transpile Java Sou...
Spoon: Open Source Library to analyze, rewrite, transform, transpile Java Sou...Spoon: Open Source Library to analyze, rewrite, transform, transpile Java Sou...
Spoon: Open Source Library to analyze, rewrite, transform, transpile Java Sou...
 
How to Design a Program Repair Bot? Insights from the Repairnator Project
How to Design a Program Repair Bot? Insights from the Repairnator ProjectHow to Design a Program Repair Bot? Insights from the Repairnator Project
How to Design a Program Repair Bot? Insights from the Repairnator Project
 
How to Design a Program Repair Bot? Insights from the Repairnator Project
How to Design a Program Repair Bot? Insights from the Repairnator ProjectHow to Design a Program Repair Bot? Insights from the Repairnator Project
How to Design a Program Repair Bot? Insights from the Repairnator Project
 
A Visual Support for Decomposing Complex Feature Models
A Visual Support for Decomposing Complex Feature ModelsA Visual Support for Decomposing Complex Feature Models
A Visual Support for Decomposing Complex Feature Models
 
GDR GPL 2015 - Processus de Configuration Flexible pour Lignes de Produits Lo...
GDR GPL 2015 - Processus de Configuration Flexible pour Lignes de Produits Lo...GDR GPL 2015 - Processus de Configuration Flexible pour Lignes de Produits Lo...
GDR GPL 2015 - Processus de Configuration Flexible pour Lignes de Produits Lo...
 
Handling Complex Configurations in Software Product Lines: a Tooled Approach
Handling Complex Configurations in Software Product Lines: a Tooled ApproachHandling Complex Configurations in Software Product Lines: a Tooled Approach
Handling Complex Configurations in Software Product Lines: a Tooled Approach
 
Managing a Software Ecosystem Using a Multiple Software Product Line: a Case ...
Managing a Software Ecosystem Using a Multiple Software Product Line: a Case ...Managing a Software Ecosystem Using a Multiple Software Product Line: a Case ...
Managing a Software Ecosystem Using a Multiple Software Product Line: a Case ...
 
Vers des interfaces graphiques flexibles de configurations
Vers des interfaces graphiques flexibles de configurationsVers des interfaces graphiques flexibles de configurations
Vers des interfaces graphiques flexibles de configurations
 

Dernier

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 

Dernier (20)

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 

Using Composite Feature Models to Support Agile Software Product Line Evolution

  • 1. Using Composite Feature Models to Support Agile Software Product Line Evolution Simon Urli, Mireille Blay-Fornarino, Philippe Collet, Sébastien Mosser urli@i3s.unice.fr I3S Laboratory, Université de Nice-Sophia Antipolis Models and Evolution 2012 1
  • 3. Plan • Usecase: ease the creation of customized information broadcasting system Models and Evolution 2012 2
  • 4. Plan • Usecase: ease the creation of customized information broadcasting system • Why a SPL is adapted to our usecase? Models and Evolution 2012 2
  • 5. Plan • Usecase: ease the creation of customized information broadcasting system • Why a SPL is adapted to our usecase? • Why is it difficult to evolve this SPL? Models and Evolution 2012 2
  • 6. Plan • Usecase: ease the creation of customized information broadcasting system • Why a SPL is adapted to our usecase? • Why is it difficult to evolve this SPL? • How a composition of feature models can help us? Models and Evolution 2012 2
  • 7. Plan • Usecase: ease the creation of customized information broadcasting system • Why a SPL is adapted to our usecase? • Why is it difficult to evolve this SPL? • How a composition of feature models can help us? • How to manage the evolution of the different feature models independently? Models and Evolution 2012 2
  • 8. YourCast: to ease the creation of information broadcasting systems Models and Evolution 2012 3
  • 9. YourCast: to ease the creation of information broadcasting systems Models and Evolution 2012 4
  • 10. ... and the customization for different users. Models and Evolution 2012 5
  • 11. ... and the customization for different users. Models and Evolution 2012 5
  • 12. YourCast: some concepts Models and Evolution 2012 6
  • 13. YourCast: some concepts Sources Models and Evolution 2012 6
  • 14. YourCast: some concepts Sources Layout Models and Evolution 2012 6
  • 15. YourCast: some concepts Sources Renderers Layout Models and Evolution 2012 6
  • 17. Requirements • One must be able to choose among all the avalaible elements: need of Variability Models and Evolution 2012 7
  • 18. Requirements • One must be able to choose among all the avalaible elements: need of Variability • A community must be able to contribute to the system: need of Evolutivity Models and Evolution 2012 7
  • 19. Requirements • One must be able to choose among all the avalaible elements: need of Variability • A community must be able to contribute to the system: need of Evolutivity • One must be able to configure a valid system at any time: need of Agility Models and Evolution 2012 7
  • 20. Software Product Line Models and Evolution 2012 8
  • 21. Software Product Line • Mass production of reliables and personalized softwares Models and Evolution 2012 8
  • 22. Software Product Line • Mass production of reliables and personalized softwares • Generation of softwares from configurations and assets Models and Evolution 2012 8
  • 23. Software Product Line • Mass production of reliables and personalized softwares • Generation of softwares from configurations and assets • Configurations created by end-users from variability models Models and Evolution 2012 8
  • 24. Feature Model Models and Evolution 2012 9
  • 25. Feature Model Key Source Mandatory feature Optional feature InfoKind Criteria XOR OR Implies PictureAlbum Announces Sort Filter Excludes Picasa FlickR Announcement Models and Evolution 2012 9
  • 26. A first kernel... Key BroadcastingSystem Mandatory feature Optional feature Layout Source Renderer XOR OR Implies Classic InfoKind SupportInfo Excludes Announces Announces Announcement SimpleAnnounces Models and Evolution 2012 10
  • 27. ... which becomes difficult to evolve BroadcastingSystem AboutKey domain objects for now. 80 Mandatory feature About 280Optional features if we 000 feature Layout Source Renderer represent them in one FM XOR OR Implies Excludes Classic IRSAM InfoKind SupportInfo Calendar PictureAlbum Announces Announces PictureAlbum Calendar HyperCal AlbumMosaic CalendarByDay FlickR Menu AgendaSession Picasa Announcement CalendarByMonth SimpleAnnounces AlbumSlide ICalReader SimpleMenu Models and Evolution 2012 11
  • 28. Idea: composite feature models Models and Evolution 2012 12
  • 29. Idea: composite feature models • Use a composition of feature models to keep things separated Models and Evolution 2012 12
  • 30. Idea: composite feature models • Use a composition of feature models to keep things separated • Manage the evolution of each domain objects separately Models and Evolution 2012 12
  • 31. Idea: composite feature models • Use a composition of feature models to keep things separated • Manage the evolution of each domain objects separately • Manage the evolution of dependencies in abstracting them Models and Evolution 2012 12
  • 32. Keep things separated Models and Evolution 2012 13
  • 33. Keep things separated Models and Evolution 2012 13
  • 34. What about the dependencies? BroadcastingSystem Key Mandatory feature Optional feature Layout Source Renderer XOR OR Implies Excludes Classic IRSAM InfoKind SupportInfo Calendar PictureAlbum Announces Announces PictureAlbum Calendar HyperCal AlbumMosaic CalendarByDay FlickR Menu AgendaSession Picasa Announcement CalendarByMonth SimpleAnnounces AlbumSlide ICalReader SimpleMenu Models and Evolution 2012 14
  • 35. Use models to drive composite FMs 1 RestrictionFunction FMAssociation FMAssociationEnd 0..* 1 Metamodel 1 FeatureModel DomainElement MultiplicityElement 1 BroadcastingSystem Model 1..* 1..1 1..* 1..1 1..* 1..1 1..1 Layout Renderer Source Models and Evolution 2012 15
  • 36. Use models to drive composite FMs BroadcastingSystem Model 1..* 1..1 1..* 1..1 1..* 1..1 1..1 Layout Renderer Source Feature models Models and Evolution 2012 16
  • 37. Use models to drive composite FMs BroadcastingSystem Model 1..* 1..1 1..* 1..1 1..* 1..1 1..1 Layout Renderer Source Source Layout InfoKind Renderer Classic IRSAM SupportInfo Calendar PictureAlbum Announces Announces PictureAlbum Calendar ICalReader HyperCal Picasa FlickR Announcement Menu CalendarByDay AlbumSlide SimpleMenu CalendarByMonth AlbumMosaic AgendaSession Feature SimpleAnnounces models Models and Evolution 2012 16
  • 38. Define functions to express dependencies 1 RestrictionFunction FMAssociation FMAssociationEnd 0..* 1 Metamodel 1 FeatureModel DomainElement MultiplicityElement 1 1..1 1..1 Renderer Source Model Feature models Models and Evolution 2012 17
  • 39. Define functions to express dependencies 1 RestrictionFunction FMAssociation FMAssociationEnd 0..* 1 Metamodel 1 FeatureModel DomainElement MultiplicityElement 1 1..1 1..1 Renderer Source Model Feature models Models and Evolution 2012 17
  • 40. Still separated FMs are complex A simplified version realized in june 2012 Models and Evolution 2012 18
  • 41. From domain objects to FMs by merging Models and Evolution 2012 19
  • 42. From domain objects to FMs by merging Source Source Source TypeInfo TypeInfo TypeInfo PictureAlbum PictureAlbum Tweet FlickR Picasa Twitter Models and Evolution 2012 19
  • 43. From domain objects to FMs by merging Source Source Source TypeInfo TypeInfo TypeInfo PictureAlbum PictureAlbum Tweet FlickR Picasa Twitter ∪ FlickR Source TypeInfo PictureAlbum Picasa Tweet Twitter Models and Evolution 2012 19
  • 44. Evolution driven by a community requires refactoring Source Source Source InfoKind Criteria InfoKind Criteria InfoKind Criteria ... Announces Sort PictureAlbum Sort PictureAlbum Sort Announcement Date FlickR DateTime Picasa ByDate Models and Evolution 2012 20
  • 45. Evolution driven by a community requires refactoring Source Source Source InfoKind Criteria InfoKind Criteria InfoKind Criteria ... Announces Sort PictureAlbum Sort PictureAlbum Sort Announcement Date FlickR DateTime Picasa ByDate Models and Evolution 2012 21
  • 46. Evolution driven by a community requires refactoring Source Source Source InfoKind Criteria InfoKind Criteria InfoKind Criteria ... Announces Sort PictureAlbum Sort PictureAlbum Sort Announcement Date FlickR DateTime Picasa ByDate Models and Evolution 2012 = 21
  • 47. Use refactoring scripts to support agile evolution // renaming renameFeature sourcePicasa.DateTime as "Date" rootname = strConcat rootname "." foreach (t in s) do fname = name t newname = strConcat rootname fname renameFeature t newname end // remove/insert removeFeature sourcePicasa.Date insert fmPartiel into fm1.fmroot with MAND FAMILIAR: FeAture Model scrIpt Language for manIpulation and Automatic Reasoning Models and Evolution 2012 22
  • 49. Conclusion Need of tools to agile management of feature models evolution 23
  • 50. Conclusion Need of tools to agile management of feature models evolution Separation in many feature models 23
  • 51. Conclusion Need of tools to agile management of feature models evolution Separation in many feature models Definition of a model to link concepts 23
  • 52. Conclusion Need of tools to agile management of feature models evolution Separation in many feature models Definition of a model to link concepts Expression of dependencies in the model 23
  • 53. Conclusion Need of tools to agile management of feature models evolution Separation in many feature models Definition of a model to link concepts Expression of dependencies in the model Creation of feature models in a bottom-up approach using a merge operator 23
  • 54. ... and perspectives! Models and Evolution 2012 24
  • 55. ... and perspectives! ‣ Validation of our approach on other usecases: Models and Evolution 2012 24
  • 56. ... and perspectives! ‣ Validation of our approach on other usecases: ‣ Internet-of-Things: Sens-App project Models and Evolution 2012 24
  • 57. ... and perspectives! ‣ Validation of our approach on other usecases: ‣ Internet-of-Things: Sens-App project ‣ Scientific Workflows: refactoring of an existing work Models and Evolution 2012 24
  • 58. ... and perspectives! ‣ Validation of our approach on other usecases: ‣ Internet-of-Things: Sens-App project ‣ Scientific Workflows: refactoring of an existing work ‣ Automatization of vocabulary alignment: towards ontology Models and Evolution 2012 24
  • 61. 26

Notes de l'éditeur

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. customization !\n
  10. customization !\n
  11. customization !\n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. Présenté tout de suite le pb. Complexité\n
  24. Présenté tout de suite le pb. Complexité\n
  25. Présenté tout de suite le pb. Complexité\n
  26. Transition avec les features models : capture de la variabilité dans les modèles pour simplifier la manipulation ou définitions séparées de la variabilité. \n
  27. Transition avec les features models : capture de la variabilité dans les modèles pour simplifier la manipulation ou définitions séparées de la variabilité. \n
  28. Transition avec les features models : capture de la variabilité dans les modèles pour simplifier la manipulation ou définitions séparées de la variabilité. \n
  29. \n
  30. Kernel ? \n
  31. Pb à la fois humain et calculatoire + communauté qui fait évoluer\n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. talk about feature models at the end\n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n
  58. \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n
  64. \n
  65. \n
  66. \n
  67. \n
  68. \n
  69. \n
  70. \n
  71. \n
  72. Parler de validation\n
  73. Parler de validation\n
  74. Parler de validation\n
  75. Parler de validation\n
  76. Parler de validation\n
  77. \n
  78. \n