SlideShare ist ein Scribd-Unternehmen logo
1 von 39
Downloaden Sie, um offline zu lesen
SEAA’14 -Verona August 2014
Managing a Software Ecosystem Using a
Multiple Software Product Line:
a Case Study on Digital Signage Systems
Simon Urli, Mireille Blay-Fornarino,
Philippe Collet, Sébastien Mosser, Michel Riveill
urli@i3s.unice.fr
I3S Laboratory - University Nice-Sophia Antipolis
1
SEAA’14 -Verona August 2014
SPL for software intensive systems
2
SEAA’14 -Verona August 2014
What about information systems?
3
SEAA’14 -Verona August 2014
Using SPL for Information Systems?
‣ Managing the complex variability
‣ Managing the fast evolution
‣ Integrating the final user in the SPL process
4
SEAA’14 -Verona August 20145
DIGITAL SIGNAGE SYSTEMS
SEAA’14 -Verona August 2014
Digital Signages everywhere
6
SEAA’14 -Verona August 2014
Digital Signage Systems (DSS)
7
Company
Services
Administration
Client Administration
Services
SEAA’14 -Verona August 2014
Digital Signage System Variability
8
Concepts:
- source
- layout
- zones
- renderer
- transition
Company
Services
SEAA’14 -Verona August 2014
Digital Signage System Variability
9
Concepts:
- source
- layout
- zones
- renderer
- transition
SEAA’14 -Verona August 2014
Digital Signage System Variability
10
Concepts:
- source
- layout
- zone
- renderer
- transition
SEAA’14 -Verona August 2014
Digital Signage System Variability
11
Concepts:
- source
- layout
- zone
- renderer
- transition
SEAA’14 -Verona August 2014
Digital Signage System Variability
12
Concepts:
- source
- layout
- zone
- renderer
- transition
SEAA’14 -Verona August 2014
History
13
2007: first DSS prototype
2009: DSS ecosystem
2012: start a SPL for DSS
2013: MSPL dedicated to DSS created
Today: the MSPL is still growing with its
ecosystem
SEAA’14 -Verona August 201414
Ecosystem
Decentralized
organization
Many contributors
Organic and fast
evolution
Distributed
knowledge
SEAA’14 -Verona August 201415
Ecosystem
Decentralized
organization
Many contributors
Organic and fast
evolution
Distributed
knowledge
SEAA’14 -Verona August 201416
Ecosystem
Decentralized organization
Many contributors
Organic and fast
evolution
Distributed
knowledge
SEAA’14 -Verona August 201417
Ecosystem
Decentralized organization
Many contributors
Organic and fast
evolution
Distributed
knowledge
SEAA’14 -Verona August 201418
Ecosystem
Decentralized organization
Many contributors
Organic and fast evolution
Distributed
knowledge
SEAA’14 -Verona August 2014
History
19
2007: first DSS prototype
2009: emerging DSS ecosystem
2012: start a SPL for DSS
2013: MSPL dedicated to DSS created
Today: the MSPL is still growing with its
ecosystem
j
SEAA’14 -Verona August 2014
History
20
2007: first DSS prototype
2009: emerging DSS ecosystem
2012: start a SPL for DSS
2013: MSPL dedicated to DSS created
Today: the MSPL is still growing with its
ecosystem
SEAA’14 -Verona August 201421Extracted from jSeduite presentation.Author: S. Mosser
jSeduite deployment: a lot of variability to manage!
SEAA’14 -Verona August 2014
History
22
2007: first DSS prototype
2009: emerging DSS ecosystem
2012: start a SPL for DSS
2013: MSPL dedicated to DSS created
Today: the MSPL is still growing with its
ecosystem
SEAA’14 -Verona August 2014
Goal
Build a SPL for DSS reusing the
legacy jSeduite and keeping the
ecosystem growing.
23
SEAA’14 -Verona August 2014
MSPL: several SPLs
24
GenerationTools
SPL
assets
SPL
assets
SPL
assets
SPL
assets
SPL
assets
AssetsProducts
SPL
for
layout
SPL
for
transitions
SPL
for
zones
SPL
for
renderers
SPL
for
sources
FMs
SEAA’14 -Verona August 2014
Using MSPL
‣ Managing the complex variability
‣ Managing the fast evolution
‣ Integrating the final user in the SPL process
25
SEAA’14 -Verona August 2014
Advertising
26
Layout Zone
Transition
Renderer Source
1 1..*
1
1
1 1..* 1 1
GenerationTools
MSPLassets
MSPLassets
MSPLassets
MSPLassets
MSPLassets
SPL
assets
SPL
assets
SPL
assets
SPL
assets
SPL
assets
DomainModelAssets
Shared
MSPL
assets
Products
SPL
for
layout
SPL
for
transitions
SPL
for
zones
SPL
for
renderers
SPL
for
sources
FMs
Details about reasoning
engine available at SPLC’14
@ Florence!
SEAA’14 -Verona August 2014
YourCast: MSPL Overview
27
Layout Zone
Transition
Renderer Source
1 1..*
1
1
1 1..* 1 1
GenerationTools
MSPLassets
MSPLassets
MSPLassets
MSPLassets
MSPLassets
SPL
assets
SPL
assets
SPL
assets
SPL
assets
SPL
assets
DomainModelAssets
Shared
MSPL
assets
Products
SPL
for
layout
SPL
for
transitions
SPL
for
zones
SPL
for
renderers
SPL
for
sources
FMs
2
1
4
3
SEAA’14 -Verona August 2014
Domain Model
28
Layout Zone
Transition
Renderer Source
1 1..*
1
1
1 1..* 1 1GenerationTools
MSPLassets
MSPLassets
MSPLassets
MSPLassets
MSPLassets
SPL
assets
SPL
assets
SPL
assets
SPL
assets
SPL
assets
DomainModelAssets
Shared
MSPL
assets
Products
SPL
for
layout
SPL
for
transitions
SPL
for
zones
SPL
for
renderers
SPL
for
sources
FMs
2
1
4
3
blueLayout
Zone1
Zone2
Zone3
Zone4
ForecastRenderer WeatherChannel
NoTransition
ArticleRenderer InternalNews
MosaicRenderer FlickR
Fade
RSSTitleRenderer RSSReader
ScrollingRight2Left
RSSDetailsRenderer RSSReader
PushTop2Bottom
Configuration
conforms to
SEAA’14 -Verona August 2014
Assets Management
29
Layout Zone
Transition
Renderer Source
1 1..*
1
1
1 1..* 1 1
GenerationTools
MSPLassets
MSPLassets
MSPLassets
MSPLassets
MSPLassets
SPL
assets
SPL
assets
SPL
assets
SPL
assets
SPL
assets
DomainModelAssets
Shared
MSPL
assets
Products
SPL
for
layout
SPL
for
transitions
SPL
for
zones
SPL
for
renderers
SPL
for
sources
FMs
2
1
4
3
SEAA’14 -Verona August 2014
Assets Management... and Evolution
30
Source
TypeInfo Criteria
PictureAlbum Filter
FlickR Album
+ +
FM
representing
new component
Code Assets
Textual
information
SEAA’14 -Verona August 2014
Evolving FM incrementally
31
Layout Zone
Transition
Renderer Source
1 1..*
1
1
1 1..* 1 1GenerationTools
MSPLassets
MSPLassets
MSPLassets
MSPLassets
MSPLassets
SPL
assets
SPL
assets
SPL
assets
SPL
assets
SPL
assets
DomainModelAssets
Shared
MSPL
assets
Products
SPL
for
layout
SPL
for
transitions
SPL
for
zones
SPL
for
renderers
SPL
for
sources
FMs
2
1
4
3
Source
TypeInfo Criteria
PictureAlbum Filter
FlickR Album
Mandatory feature
Optional feature
XOR
Key
Source
TypeInfo Criteria
Calendar PictureAlbum Filter
ICalReader FlickR Picasa Album Period
Source
TypeInfo Criteria
PictureAlbum Filter
Picasa Album
Source
TypeInfo Criteria
Calendar Filter
ICalReader Period
+ + =
Acher, M., Collet, P., Lahire, P., & France, R. B. (2012, March).
Separation of concerns in feature modeling: support and applications.
In Proceedings of the 11th annual international conference on Aspect-oriented Software Development. ACM.
SEAA’14 -Verona August 2014
Assets Management... and Evolution
32
Source
TypeInfo Criteria
PictureAlbum Filter
FlickR Album
+ +
Mandatory feature
Optional feature
XOR
Key
Source
TypeInfo Criteria
Calendar PictureAlbum Filter
ICalReader FlickR Picasa Album Period
Source
TypeInfo Criteria
PictureAlbum Filter
Picasa Album
Source
TypeInfo Criteria
Calendar Filter
ICalReader Period
+ =
SEAA’14 -Verona August 2014
MDE based generation
33
blueLayout
Zone1
Zone2
Zone3
Zone4
ForecastRenderer WeatherChannel
NoTransition
ArticleRenderer InternalNews
MosaicRenderer FlickR
Fade
RSSTitleRenderer RSSReader
ScrollingRight2Left
RSSDetailsRenderer RSSReader
PushTop2Bottom
conforms to
Administration
Company
Services
metamodel
SEAA’14 -Verona August 2014
History
34
2007: first DSS prototype
2009: DSS ecosystem
2012: start a SPL for DSS
2013: MSPL dedicated to DSS created
Today: the MSPL is still growing with its
ecosystem
SEAA’14 -Verona August 2014
jSeduite andYourCast in figures
35
jSeduite YourCast
Lifespan around 3 years less than 2 years
Internal developers 2 2
Contributors 14 around 35
Deployments 4 18
Number of sources around 25 68
Number of renderers around 20 74
Number of transitions mixed with renderers 15
Number of layouts around 5 13
KLOC 200 470
SEAA’14 -Verona August 2014
Tomorrow?
‣ Towards a better integration of final users
‣ More automated integration tests
‣ Automated production of documentation
‣ Managing evolution of SPL constraints
36
SEAA’14 -Verona August 2014
In a nutshell, what was the value in
creating a MSPL for our DSS
ecosystem?
• SPL benefits: ROI, fast derivation,
variability management
• Ecosystem benefits: fast evolving family
of products, many contributors
• MSPL benefits: final-user oriented SPL,
complex variability management
37
SEAA’14 -Verona August 2014
In a nutshell, where creating
a MSPL can be valuable?
• for SPL dedicated to complex domains
• for fast evolving SPL
• to manage properly a growing
ecosystem for complex domains
• to help building a community around
a complex domain
38
SEAA’14 -Verona August 2014
Thanks for your
attention!
39
urli@i3s.unice.fr

Weitere ähnliche Inhalte

Andere mochten auch

S&L Digital Signage - Case Study - Virgin Pier Perth Airport
S&L Digital Signage - Case Study - Virgin Pier Perth AirportS&L Digital Signage - Case Study - Virgin Pier Perth Airport
S&L Digital Signage - Case Study - Virgin Pier Perth AirportTim Webb
 
Measuring Digital Signage Networks - Quividi
Measuring Digital Signage Networks - QuividiMeasuring Digital Signage Networks - Quividi
Measuring Digital Signage Networks - QuividiBroadSign
 
Measuring & Bench-marking Digital Signage
Measuring & Bench-marking Digital SignageMeasuring & Bench-marking Digital Signage
Measuring & Bench-marking Digital SignageRon Graham
 
Digital Signage Solution Malaysia
Digital Signage Solution MalaysiaDigital Signage Solution Malaysia
Digital Signage Solution MalaysiaNajib Habeb
 
Digital_Signage_Finacial_Network_BIA
Digital_Signage_Finacial_Network_BIADigital_Signage_Finacial_Network_BIA
Digital_Signage_Finacial_Network_BIAGreg Weaver
 
MCSi Digital Signage Presentation
MCSi Digital Signage PresentationMCSi Digital Signage Presentation
MCSi Digital Signage PresentationGary Quasebarth
 

Andere mochten auch (8)

S&L Digital Signage - Case Study - Virgin Pier Perth Airport
S&L Digital Signage - Case Study - Virgin Pier Perth AirportS&L Digital Signage - Case Study - Virgin Pier Perth Airport
S&L Digital Signage - Case Study - Virgin Pier Perth Airport
 
Measuring Digital Signage Networks - Quividi
Measuring Digital Signage Networks - QuividiMeasuring Digital Signage Networks - Quividi
Measuring Digital Signage Networks - Quividi
 
Measuring & Bench-marking Digital Signage
Measuring & Bench-marking Digital SignageMeasuring & Bench-marking Digital Signage
Measuring & Bench-marking Digital Signage
 
New CDS Digital Signage Brochure 2017
New CDS Digital Signage Brochure 2017New CDS Digital Signage Brochure 2017
New CDS Digital Signage Brochure 2017
 
Digital Signage Solution Malaysia
Digital Signage Solution MalaysiaDigital Signage Solution Malaysia
Digital Signage Solution Malaysia
 
Software Product Lines
Software Product LinesSoftware Product Lines
Software Product Lines
 
Digital_Signage_Finacial_Network_BIA
Digital_Signage_Finacial_Network_BIADigital_Signage_Finacial_Network_BIA
Digital_Signage_Finacial_Network_BIA
 
MCSi Digital Signage Presentation
MCSi Digital Signage PresentationMCSi Digital Signage Presentation
MCSi Digital Signage Presentation
 

Ähnlich wie Managing a Software Ecosystem Using a Multiple Software Product Line: a Case Study on Digital Signage Systems

3-D Cloud Monitoring: Enabling Effective Cloud Infrastructure and Application...
3-D Cloud Monitoring: Enabling Effective Cloud Infrastructure and Application...3-D Cloud Monitoring: Enabling Effective Cloud Infrastructure and Application...
3-D Cloud Monitoring: Enabling Effective Cloud Infrastructure and Application...Florian Blum
 
Designing a Better Planet with Big Data and Sensor Networks (for Intelligent ...
Designing a Better Planet with Big Data and Sensor Networks (for Intelligent ...Designing a Better Planet with Big Data and Sensor Networks (for Intelligent ...
Designing a Better Planet with Big Data and Sensor Networks (for Intelligent ...Rainer Sternfeld
 
Sika_APIForceMuleSoftMeetUp_5April2024.pdf
Sika_APIForceMuleSoftMeetUp_5April2024.pdfSika_APIForceMuleSoftMeetUp_5April2024.pdf
Sika_APIForceMuleSoftMeetUp_5April2024.pdfMarianaLemus7
 
FIWARE Accelerator Programme: 80 Milion Euro for Start-Ups and SMEs
FIWARE Accelerator Programme: 80 Milion Euro for Start-Ups and SMEsFIWARE Accelerator Programme: 80 Milion Euro for Start-Ups and SMEs
FIWARE Accelerator Programme: 80 Milion Euro for Start-Ups and SMEsCodemotion
 
Eclipse RMF - Requirements Modeling Framework - ReqIF in der Open Source
Eclipse RMF - Requirements Modeling Framework - ReqIF in der Open Source Eclipse RMF - Requirements Modeling Framework - ReqIF in der Open Source
Eclipse RMF - Requirements Modeling Framework - ReqIF in der Open Source Mark Brörkens
 
Osgis2011 edina addy_pope
Osgis2011 edina addy_popeOsgis2011 edina addy_pope
Osgis2011 edina addy_popeAddy Pope
 
Osgis2011 edina addy_pope
Osgis2011 edina addy_popeOsgis2011 edina addy_pope
Osgis2011 edina addy_popeAddy Pope
 
DOES14 - Joshua Corman - Sonatype
DOES14 - Joshua Corman - SonatypeDOES14 - Joshua Corman - Sonatype
DOES14 - Joshua Corman - SonatypeGene Kim
 
3° Fiware Overview-Chile- Track
3° Fiware Overview-Chile- Track3° Fiware Overview-Chile- Track
3° Fiware Overview-Chile- TrackTIDChile
 
Presentazione SCOPE by flyby
Presentazione SCOPE by flyby Presentazione SCOPE by flyby
Presentazione SCOPE by flyby SLOPE Project
 
Continuous Code Quality with the sonar ecosystem
Continuous Code Quality with the sonar ecosystemContinuous Code Quality with the sonar ecosystem
Continuous Code Quality with the sonar ecosystemRoman Pickl
 
20140902 LinDa Workshop Semantincs2014 - LinDA Project Overview
20140902 LinDa Workshop Semantincs2014 - LinDA Project Overview20140902 LinDa Workshop Semantincs2014 - LinDA Project Overview
20140902 LinDa Workshop Semantincs2014 - LinDA Project OverviewLinDa_FP7
 
Data warehouse approach to statistical data management and the perspective of...
Data warehouse approach to statistical data management and the perspective of...Data warehouse approach to statistical data management and the perspective of...
Data warehouse approach to statistical data management and the perspective of...Istituto nazionale di statistica
 
Dynatrace: Davis - Hololens - AI update - Cloud announcements - Self driving IT
Dynatrace: Davis - Hololens - AI update - Cloud announcements - Self driving ITDynatrace: Davis - Hololens - AI update - Cloud announcements - Self driving IT
Dynatrace: Davis - Hololens - AI update - Cloud announcements - Self driving ITDynatrace
 
Empirical research results for the evolution of a data-intensive software sys...
Empirical research results for the evolution of a data-intensive software sys...Empirical research results for the evolution of a data-intensive software sys...
Empirical research results for the evolution of a data-intensive software sys...Tom Mens
 
Metrics Monitoring Is So Critical - What's Your Best Approach?
Metrics Monitoring Is So Critical - What's Your Best Approach? Metrics Monitoring Is So Critical - What's Your Best Approach?
Metrics Monitoring Is So Critical - What's Your Best Approach? Wavefront
 
IO Visor Summit 2017: Welcome & Overview via Pere Monclus
IO Visor Summit 2017: Welcome & Overview via Pere MonclusIO Visor Summit 2017: Welcome & Overview via Pere Monclus
IO Visor Summit 2017: Welcome & Overview via Pere MonclusIO Visor Project
 

Ähnlich wie Managing a Software Ecosystem Using a Multiple Software Product Line: a Case Study on Digital Signage Systems (20)

3-D Cloud Monitoring: Enabling Effective Cloud Infrastructure and Application...
3-D Cloud Monitoring: Enabling Effective Cloud Infrastructure and Application...3-D Cloud Monitoring: Enabling Effective Cloud Infrastructure and Application...
3-D Cloud Monitoring: Enabling Effective Cloud Infrastructure and Application...
 
Designing a Better Planet with Big Data and Sensor Networks (for Intelligent ...
Designing a Better Planet with Big Data and Sensor Networks (for Intelligent ...Designing a Better Planet with Big Data and Sensor Networks (for Intelligent ...
Designing a Better Planet with Big Data and Sensor Networks (for Intelligent ...
 
Evolving Mobile Data Application Services With SDN
Evolving Mobile Data Application Services With SDNEvolving Mobile Data Application Services With SDN
Evolving Mobile Data Application Services With SDN
 
Sip@iPLM 2016
Sip@iPLM 2016 Sip@iPLM 2016
Sip@iPLM 2016
 
Sika_APIForceMuleSoftMeetUp_5April2024.pdf
Sika_APIForceMuleSoftMeetUp_5April2024.pdfSika_APIForceMuleSoftMeetUp_5April2024.pdf
Sika_APIForceMuleSoftMeetUp_5April2024.pdf
 
FIWARE Accelerator Programme: 80 Milion Euro for Start-Ups and SMEs
FIWARE Accelerator Programme: 80 Milion Euro for Start-Ups and SMEsFIWARE Accelerator Programme: 80 Milion Euro for Start-Ups and SMEs
FIWARE Accelerator Programme: 80 Milion Euro for Start-Ups and SMEs
 
Eclipse RMF - Requirements Modeling Framework - ReqIF in der Open Source
Eclipse RMF - Requirements Modeling Framework - ReqIF in der Open Source Eclipse RMF - Requirements Modeling Framework - ReqIF in der Open Source
Eclipse RMF - Requirements Modeling Framework - ReqIF in der Open Source
 
Osgis2011 edina addy_pope
Osgis2011 edina addy_popeOsgis2011 edina addy_pope
Osgis2011 edina addy_pope
 
Osgis2011 edina addy_pope
Osgis2011 edina addy_popeOsgis2011 edina addy_pope
Osgis2011 edina addy_pope
 
DOES14 - Joshua Corman - Sonatype
DOES14 - Joshua Corman - SonatypeDOES14 - Joshua Corman - Sonatype
DOES14 - Joshua Corman - Sonatype
 
3° Fiware Overview-Chile- Track
3° Fiware Overview-Chile- Track3° Fiware Overview-Chile- Track
3° Fiware Overview-Chile- Track
 
Presentazione SCOPE by flyby
Presentazione SCOPE by flyby Presentazione SCOPE by flyby
Presentazione SCOPE by flyby
 
Continuous Code Quality with the sonar ecosystem
Continuous Code Quality with the sonar ecosystemContinuous Code Quality with the sonar ecosystem
Continuous Code Quality with the sonar ecosystem
 
Meet the OWASP
Meet the OWASPMeet the OWASP
Meet the OWASP
 
20140902 LinDa Workshop Semantincs2014 - LinDA Project Overview
20140902 LinDa Workshop Semantincs2014 - LinDA Project Overview20140902 LinDa Workshop Semantincs2014 - LinDA Project Overview
20140902 LinDa Workshop Semantincs2014 - LinDA Project Overview
 
Data warehouse approach to statistical data management and the perspective of...
Data warehouse approach to statistical data management and the perspective of...Data warehouse approach to statistical data management and the perspective of...
Data warehouse approach to statistical data management and the perspective of...
 
Dynatrace: Davis - Hololens - AI update - Cloud announcements - Self driving IT
Dynatrace: Davis - Hololens - AI update - Cloud announcements - Self driving ITDynatrace: Davis - Hololens - AI update - Cloud announcements - Self driving IT
Dynatrace: Davis - Hololens - AI update - Cloud announcements - Self driving IT
 
Empirical research results for the evolution of a data-intensive software sys...
Empirical research results for the evolution of a data-intensive software sys...Empirical research results for the evolution of a data-intensive software sys...
Empirical research results for the evolution of a data-intensive software sys...
 
Metrics Monitoring Is So Critical - What's Your Best Approach?
Metrics Monitoring Is So Critical - What's Your Best Approach? Metrics Monitoring Is So Critical - What's Your Best Approach?
Metrics Monitoring Is So Critical - What's Your Best Approach?
 
IO Visor Summit 2017: Welcome & Overview via Pere Monclus
IO Visor Summit 2017: Welcome & Overview via Pere MonclusIO Visor Summit 2017: Welcome & Overview via Pere Monclus
IO Visor Summit 2017: Welcome & Overview via Pere Monclus
 

Mehr von 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
 
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
 
Using Composite Feature Models to Support Agile Software Product Line Evoluti...
Using Composite Feature Models to Support Agile Software Product Line Evoluti...Using Composite Feature Models to Support Agile Software Product Line Evoluti...
Using Composite Feature Models to Support Agile Software Product Line Evoluti...Simon Urli
 

Mehr von 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
 
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
 
Using Composite Feature Models to Support Agile Software Product Line Evoluti...
Using Composite Feature Models to Support Agile Software Product Line Evoluti...Using Composite Feature Models to Support Agile Software Product Line Evoluti...
Using Composite Feature Models to Support Agile Software Product Line Evoluti...
 

Kürzlich hochgeladen

A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Intelisync
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyFrank van der Linden
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 

Kürzlich hochgeladen (20)

A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The Ugly
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 

Managing a Software Ecosystem Using a Multiple Software Product Line: a Case Study on Digital Signage Systems

  • 1. SEAA’14 -Verona August 2014 Managing a Software Ecosystem Using a Multiple Software Product Line: a Case Study on Digital Signage Systems Simon Urli, Mireille Blay-Fornarino, Philippe Collet, Sébastien Mosser, Michel Riveill urli@i3s.unice.fr I3S Laboratory - University Nice-Sophia Antipolis 1
  • 2. SEAA’14 -Verona August 2014 SPL for software intensive systems 2
  • 3. SEAA’14 -Verona August 2014 What about information systems? 3
  • 4. SEAA’14 -Verona August 2014 Using SPL for Information Systems? ‣ Managing the complex variability ‣ Managing the fast evolution ‣ Integrating the final user in the SPL process 4
  • 5. SEAA’14 -Verona August 20145 DIGITAL SIGNAGE SYSTEMS
  • 6. SEAA’14 -Verona August 2014 Digital Signages everywhere 6
  • 7. SEAA’14 -Verona August 2014 Digital Signage Systems (DSS) 7 Company Services Administration Client Administration Services
  • 8. SEAA’14 -Verona August 2014 Digital Signage System Variability 8 Concepts: - source - layout - zones - renderer - transition Company Services
  • 9. SEAA’14 -Verona August 2014 Digital Signage System Variability 9 Concepts: - source - layout - zones - renderer - transition
  • 10. SEAA’14 -Verona August 2014 Digital Signage System Variability 10 Concepts: - source - layout - zone - renderer - transition
  • 11. SEAA’14 -Verona August 2014 Digital Signage System Variability 11 Concepts: - source - layout - zone - renderer - transition
  • 12. SEAA’14 -Verona August 2014 Digital Signage System Variability 12 Concepts: - source - layout - zone - renderer - transition
  • 13. SEAA’14 -Verona August 2014 History 13 2007: first DSS prototype 2009: DSS ecosystem 2012: start a SPL for DSS 2013: MSPL dedicated to DSS created Today: the MSPL is still growing with its ecosystem
  • 14. SEAA’14 -Verona August 201414 Ecosystem Decentralized organization Many contributors Organic and fast evolution Distributed knowledge
  • 15. SEAA’14 -Verona August 201415 Ecosystem Decentralized organization Many contributors Organic and fast evolution Distributed knowledge
  • 16. SEAA’14 -Verona August 201416 Ecosystem Decentralized organization Many contributors Organic and fast evolution Distributed knowledge
  • 17. SEAA’14 -Verona August 201417 Ecosystem Decentralized organization Many contributors Organic and fast evolution Distributed knowledge
  • 18. SEAA’14 -Verona August 201418 Ecosystem Decentralized organization Many contributors Organic and fast evolution Distributed knowledge
  • 19. SEAA’14 -Verona August 2014 History 19 2007: first DSS prototype 2009: emerging DSS ecosystem 2012: start a SPL for DSS 2013: MSPL dedicated to DSS created Today: the MSPL is still growing with its ecosystem j
  • 20. SEAA’14 -Verona August 2014 History 20 2007: first DSS prototype 2009: emerging DSS ecosystem 2012: start a SPL for DSS 2013: MSPL dedicated to DSS created Today: the MSPL is still growing with its ecosystem
  • 21. SEAA’14 -Verona August 201421Extracted from jSeduite presentation.Author: S. Mosser jSeduite deployment: a lot of variability to manage!
  • 22. SEAA’14 -Verona August 2014 History 22 2007: first DSS prototype 2009: emerging DSS ecosystem 2012: start a SPL for DSS 2013: MSPL dedicated to DSS created Today: the MSPL is still growing with its ecosystem
  • 23. SEAA’14 -Verona August 2014 Goal Build a SPL for DSS reusing the legacy jSeduite and keeping the ecosystem growing. 23
  • 24. SEAA’14 -Verona August 2014 MSPL: several SPLs 24 GenerationTools SPL assets SPL assets SPL assets SPL assets SPL assets AssetsProducts SPL for layout SPL for transitions SPL for zones SPL for renderers SPL for sources FMs
  • 25. SEAA’14 -Verona August 2014 Using MSPL ‣ Managing the complex variability ‣ Managing the fast evolution ‣ Integrating the final user in the SPL process 25
  • 26. SEAA’14 -Verona August 2014 Advertising 26 Layout Zone Transition Renderer Source 1 1..* 1 1 1 1..* 1 1 GenerationTools MSPLassets MSPLassets MSPLassets MSPLassets MSPLassets SPL assets SPL assets SPL assets SPL assets SPL assets DomainModelAssets Shared MSPL assets Products SPL for layout SPL for transitions SPL for zones SPL for renderers SPL for sources FMs Details about reasoning engine available at SPLC’14 @ Florence!
  • 27. SEAA’14 -Verona August 2014 YourCast: MSPL Overview 27 Layout Zone Transition Renderer Source 1 1..* 1 1 1 1..* 1 1 GenerationTools MSPLassets MSPLassets MSPLassets MSPLassets MSPLassets SPL assets SPL assets SPL assets SPL assets SPL assets DomainModelAssets Shared MSPL assets Products SPL for layout SPL for transitions SPL for zones SPL for renderers SPL for sources FMs 2 1 4 3
  • 28. SEAA’14 -Verona August 2014 Domain Model 28 Layout Zone Transition Renderer Source 1 1..* 1 1 1 1..* 1 1GenerationTools MSPLassets MSPLassets MSPLassets MSPLassets MSPLassets SPL assets SPL assets SPL assets SPL assets SPL assets DomainModelAssets Shared MSPL assets Products SPL for layout SPL for transitions SPL for zones SPL for renderers SPL for sources FMs 2 1 4 3 blueLayout Zone1 Zone2 Zone3 Zone4 ForecastRenderer WeatherChannel NoTransition ArticleRenderer InternalNews MosaicRenderer FlickR Fade RSSTitleRenderer RSSReader ScrollingRight2Left RSSDetailsRenderer RSSReader PushTop2Bottom Configuration conforms to
  • 29. SEAA’14 -Verona August 2014 Assets Management 29 Layout Zone Transition Renderer Source 1 1..* 1 1 1 1..* 1 1 GenerationTools MSPLassets MSPLassets MSPLassets MSPLassets MSPLassets SPL assets SPL assets SPL assets SPL assets SPL assets DomainModelAssets Shared MSPL assets Products SPL for layout SPL for transitions SPL for zones SPL for renderers SPL for sources FMs 2 1 4 3
  • 30. SEAA’14 -Verona August 2014 Assets Management... and Evolution 30 Source TypeInfo Criteria PictureAlbum Filter FlickR Album + + FM representing new component Code Assets Textual information
  • 31. SEAA’14 -Verona August 2014 Evolving FM incrementally 31 Layout Zone Transition Renderer Source 1 1..* 1 1 1 1..* 1 1GenerationTools MSPLassets MSPLassets MSPLassets MSPLassets MSPLassets SPL assets SPL assets SPL assets SPL assets SPL assets DomainModelAssets Shared MSPL assets Products SPL for layout SPL for transitions SPL for zones SPL for renderers SPL for sources FMs 2 1 4 3 Source TypeInfo Criteria PictureAlbum Filter FlickR Album Mandatory feature Optional feature XOR Key Source TypeInfo Criteria Calendar PictureAlbum Filter ICalReader FlickR Picasa Album Period Source TypeInfo Criteria PictureAlbum Filter Picasa Album Source TypeInfo Criteria Calendar Filter ICalReader Period + + = Acher, M., Collet, P., Lahire, P., & France, R. B. (2012, March). Separation of concerns in feature modeling: support and applications. In Proceedings of the 11th annual international conference on Aspect-oriented Software Development. ACM.
  • 32. SEAA’14 -Verona August 2014 Assets Management... and Evolution 32 Source TypeInfo Criteria PictureAlbum Filter FlickR Album + + Mandatory feature Optional feature XOR Key Source TypeInfo Criteria Calendar PictureAlbum Filter ICalReader FlickR Picasa Album Period Source TypeInfo Criteria PictureAlbum Filter Picasa Album Source TypeInfo Criteria Calendar Filter ICalReader Period + =
  • 33. SEAA’14 -Verona August 2014 MDE based generation 33 blueLayout Zone1 Zone2 Zone3 Zone4 ForecastRenderer WeatherChannel NoTransition ArticleRenderer InternalNews MosaicRenderer FlickR Fade RSSTitleRenderer RSSReader ScrollingRight2Left RSSDetailsRenderer RSSReader PushTop2Bottom conforms to Administration Company Services metamodel
  • 34. SEAA’14 -Verona August 2014 History 34 2007: first DSS prototype 2009: DSS ecosystem 2012: start a SPL for DSS 2013: MSPL dedicated to DSS created Today: the MSPL is still growing with its ecosystem
  • 35. SEAA’14 -Verona August 2014 jSeduite andYourCast in figures 35 jSeduite YourCast Lifespan around 3 years less than 2 years Internal developers 2 2 Contributors 14 around 35 Deployments 4 18 Number of sources around 25 68 Number of renderers around 20 74 Number of transitions mixed with renderers 15 Number of layouts around 5 13 KLOC 200 470
  • 36. SEAA’14 -Verona August 2014 Tomorrow? ‣ Towards a better integration of final users ‣ More automated integration tests ‣ Automated production of documentation ‣ Managing evolution of SPL constraints 36
  • 37. SEAA’14 -Verona August 2014 In a nutshell, what was the value in creating a MSPL for our DSS ecosystem? • SPL benefits: ROI, fast derivation, variability management • Ecosystem benefits: fast evolving family of products, many contributors • MSPL benefits: final-user oriented SPL, complex variability management 37
  • 38. SEAA’14 -Verona August 2014 In a nutshell, where creating a MSPL can be valuable? • for SPL dedicated to complex domains • for fast evolving SPL • to manage properly a growing ecosystem for complex domains • to help building a community around a complex domain 38
  • 39. SEAA’14 -Verona August 2014 Thanks for your attention! 39 urli@i3s.unice.fr