Top Banner
Customiza*on and 3D Prin*ng A Challenging Playground for So3ware Product Lines Mathieu Acher , Benoit Baudry, Olivier Barais, JeanMarc Jézéquel
37

3D Printing, Customization, and Product Lines

Dec 18, 2014

Download

Engineering

Acher

3D printing is gaining more and more momentum to build
customized product in a wide variety of fields. We con-
duct an exploratory study of Thingiverse, the most popular
Website for sharing user-created 3D design les, in order to
establish a possible connection with software product line
(SPL) engineering. We report on the socio-technical aspects
and current practices for modeling variability, implementing
variability, confi guring and deriving products, and reusing
artefacts. We provide hints that SPL-alike techniques are
practically used in 3D printing and thus relevant. Finally,
we discuss why the customization in the 3D printing eld
represents a challenging playground for SPL engineering.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 3D Printing, Customization, and Product Lines

Customiza*on  and  3D  Prin*ng    

A  Challenging  Playground  for    So3ware  Product  Lines  

 

Mathieu  Acher,  Benoit  Baudry,    Olivier  Barais,  Jean-­‐Marc  Jézéquel  

Page 2: 3D Printing, Customization, and Product Lines
Page 3: 3D Printing, Customization, and Product Lines
Page 4: 3D Printing, Customization, and Product Lines

3D  Print  your  3D  Printer  

Page 5: 3D Printing, Customization, and Product Lines

Puppets  

5  

Page 6: 3D Printing, Customization, and Product Lines

6  

Page 7: 3D Printing, Customization, and Product Lines

7  

Page 8: 3D Printing, Customization, and Product Lines
Page 9: 3D Printing, Customization, and Product Lines

9  

Page 10: 3D Printing, Customization, and Product Lines

So7ware  product  line  (SPL)  perspec*ve  

3D  PrinIng  is  gaining  momentum  – CustomizaIon  also  

•  SPL?  Variability?  •  «  the  ability  of  a  so3ware  system  or  arIfact  to  be  efficiently  extended,  changed,  customized  or  configured  for  use  in  a  parIcular  context  »  

•  Can  SPL  engineering  learn  from  3D  prin*ng?  •  Can  3D  prin*ng  benefit  from  SPL  engineering?  

10  

Page 11: 3D Printing, Customization, and Product Lines

Field/ethnographic  study    

We  observed  how  a  community  of  people  (i.e,  the  Thingiverse  community)  interacts  and  collaborates  for  achieving  a  technical  work  (i.e.,  customizing  and  producing  3D  models)  

11  

Page 12: 3D Printing, Customization, and Product Lines

Playground  

12  

Page 13: 3D Printing, Customization, and Product Lines

13  

Page 14: 3D Printing, Customization, and Product Lines

No  need  to  hide,    there  is  an  “open”  access  to  data  

14  

Page 15: 3D Printing, Customization, and Product Lines

Analysis  of  Thingiverse  

15  

Page 16: 3D Printing, Customization, and Product Lines

16  

Page 17: 3D Printing, Customization, and Product Lines

17  

Page 18: 3D Printing, Customization, and Product Lines

18  

Page 19: 3D Printing, Customization, and Product Lines

19  

.scad

Page 20: 3D Printing, Customization, and Product Lines

20  

Page 21: 3D Printing, Customization, and Product Lines

Documenta*on    (hLp://customizer.makerbot.com/docs)  

21  

Page 22: 3D Printing, Customization, and Product Lines

22  Variability Modeling Variability Implementation

Configuration Reuse

We  observed  how  a  community  of  people  (i.e,  the  Thingiverse  community)  interacts  and  collaborates  for  achieving  a  technical  work  (i.e.,  customizing  and  producing  3D  models)    

Preconcep*on:  product  line  perspec*ve  

Page 23: 3D Printing, Customization, and Product Lines

23  

Page 24: 3D Printing, Customization, and Product Lines

24  

Page 25: 3D Printing, Customization, and Product Lines

25  

Conditional statements hell

Page 26: 3D Printing, Customization, and Product Lines

26  

33 imbrications “else” not necessarily here

Page 27: 3D Printing, Customization, and Product Lines

27  

Configuration

Clone and Own

Page 28: 3D Printing, Customization, and Product Lines

28  

Reuse

Page 29: 3D Printing, Customization, and Product Lines

Key  Results  (1)  

•  Variability  Modeling  and  ConfiguraIon  – Variability  concepts  are  here    – No  constraints  – ConfiguraIon  

•  Configurator  •  Visibility  /  SeparaIon  of  Concerns  •  Many  configuraIon  issues  

– Huge  complexity    •  38  parameters,  8  tabs,  10^28  configuraIons  

29  

Page 30: 3D Printing, Customization, and Product Lines

Key  Results  (2)  

•  ImplementaIon  – Parameterized  Procedures  – CondiIonal  Statements  

•  33  imbricaIons  – pre-­‐compiled  datastructures    

•  themselves  parameterizable  

•  DerivaIon  – You  can  visualize  your  result  before  prinIng  

•  Limited  reuse  mechanism  

30  

Page 31: 3D Printing, Customization, and Product Lines

So  What?  

•  Will  So3ware  Product  Line  Engineering  save  the  world?  

•  Can  help,  can  learn  

•  Challenges  ahead  

31  

Page 32: 3D Printing, Customization, and Product Lines

Capture  Specific  Things  

•  Physical  properIes  – Are  we  even  able  to  print  the  3D  product  

•  Specific  to  the  product  – knowledge  out  there  

•  So3ware  level  

32  

Page 33: 3D Printing, Customization, and Product Lines

Complexity  and  Cogni*ve  Effort  

•  Keeping  a  low  cogniIve  effort  – Not  necessarily  so3ware  developers  

•   More  sophisIcated  techniques  induce  someImes  accidental  complexity  

33  

Page 34: 3D Printing, Customization, and Product Lines

Cost-­‐benefit  Tradeoff  

•  Cost  of  applying  more  sophisIcated  techniques  versus  benefit  of  upfront  investment  

•  Pay  off  when?  – For  dozens  of  people  in  their  garage?  – For  millions  of  rich  people?  

34  

Page 35: 3D Printing, Customization, and Product Lines

Challenging  Playground  

35  

Page 36: 3D Printing, Customization, and Product Lines

Future  

•  Automated  techniques  to  support  large  scale,  more  comprehensive  analysis    – Beyond  an  exploratory  and  very  manual  analysis  

– We  have  an  infrastructure  to  mine  Things  and  analyze  .scad  files  

•  Adressing  the  challenges  •  Helping  a  community  like  Thingiverse  to  master  the  complexity  

36  

Page 37: 3D Printing, Customization, and Product Lines

OpenJSCAD  

37