23
Flexible Product Line Engineering With a Virtual Platform Michał Antkiewicz Mar 10, 2015 http://gsd.uwaterloo.ca http://necsis.ca

Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

Flexible  Product  Line  Engineering  With  a  Virtual  Platform

Michał  Antkiewicz  

Mar  10,  2015

http://gsd.uwaterloo.ca http://necsis.ca

Page 2: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

�2

Page 3: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

“Virtual  Platform”  is  …

an  incremental  and  minimally  invasive  strategy  for  adoption  of  product  line  

engineering  

�3

Page 4: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

Organization

Project  1

Asset

Component  Library

Framework

Project  2

Asset

Variant  1

�4

Page 5: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

Organization

Project  1

Asset

Component  Library

Framework

Project  2

Asset

Variant  1

Variant  2

�5

Page 6: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

Cloning        Product-­‐Line  EngineeringOrganization

Project  1

Asset

Component  Library

Framework

Project  2

Asset

Asset

Asset

Integrated  Platform

Component  Library

Framework

Project  1

ConfigAsset

Project  2

ConfigAsset

Variant  1

Variant  2

�6

Page 7: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

Organization

Project  1

Asset

Component  Library

Framework

Project  2

Asset

Asset

Asset

Integrated  Platform

Component  Library

Framework

Project  1

ConfigAsset

Project  2

ConfigAsset

�7

Transition

Page 8: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

Organization

Project  1

Asset

Component  Library

Framework

Project  2

Asset

Asset

Asset

Integrated  Platform

Component  Library

Framework

Project  1

ConfigAsset

Project  2

ConfigAsset

�8

?+flexibility

+innovation

+independence

+low  cost  of initial  reuse

+speed

+scale

+propagation

+lowredundancy

+new   variants

+configuration over  implementation

Page 9: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

“Make  the  distributed  assets  reusable  instead  of  integrating  them  into  a  platform”

!

Key  Idea  1

�9

Page 10: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

Clone  Management  Framework

Rubin  et  al.,  SPLC’12,  ICSE  NIER’13,  SPLC’13  (Best  Paper  Award)

�10

Page 11: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

“Offer  incremental  benefits  for  incremental  efforts”

!

Key  Idea  2

�11

Page 12: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

Virtual  Platform  =  6  Governance  Levels

For  each  level  • Description  • Advantages  • Disadvantages  • Tactics  • (Example)  • Recommendation

�12

Page 13: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

Governance  Levels

L0:  Ad-­‐Hoc  Clone  &  Own

L1:  Clone  &  Own  with  Provenance

L2:  Clone  &  Own  with  Features

L3:  Clone  &  Own  with  Configuration

L4:  Clone  &  Own  with  a  Feature  Modeln cy  

of  

R e u s e Pr e p ar at io n  

L5:  PLE  with  an  Integrated  Platform  and              Clone  &  Own

L6:  PLE  with  a  Fully  Integrated  Platform

�13

Page 14: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

“Each  level  is  ‘good’  given  the  specific  needs”

!

Key  Idea  3

�14

Page 15: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

"Cloning  Considered  Harmful"  Considered  Harmful  

Kapser  and  Godfrey,  WCRE  '06

�15

Page 16: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

“Integrated  Platform  not  Always  Desirable”

Dubinsky  et  al.,  CSMR,  2013  

(Best  Paper  Award)  

Stallinger  et  al.,  PLEASE,  2011

�16

Page 17: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

Organization

Project  1

Asset

Component  Library

Framework

Project  2

Asset

Asset

Asset

Integrated  Platform

Component  Library

Framework

Project  1

ConfigAsset

Project  2

ConfigAsset

�17

 L0  L1  L2  L3  L4  L5  L6

Page 18: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

Case  Study:  Clafer  Web  Tools

�18

Page 19: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

�19

Page 20: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

Conclusions

�20

Page 21: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

A  roadmap  for  organizations

• Justifiable  effort  /  expected  benefits  

• Ability  to  scale  up  reuse

�21

Page 22: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

A  way  to  achieve  some  benefits  of  PLE  by  SMEs

• Feature-­‐oriented  development  

• Proactively  or  retroactively

�22

Page 23: Flexible’ProductLine’Engineering’ With’aVirtual’Platformmsdl.cs.mcgill.ca/conferences/NECSIS/NECSIS_McGill... · “Virtual’Platform”’is’… an’incremental’and’minimally+invasive’

Thank  You!

�23