variability modeling in the real a perspective from the
play

Variability Modeling in the Real: A Perspective from the Operating - PowerPoint PPT Presentation

Variability Modeling in the Real: A Perspective from the Operating Systems Domain 25 th IEEE/ACM International Conference on Automated Software Engineering ASE 2010 Antwerp, Belgium, Sept. 22 nd , 2010 Thorsten Berger, Steven She, Rafael Lotufo,


  1. Variability Modeling in the Real: A Perspective from the Operating Systems Domain 25 th IEEE/ACM International Conference on Automated Software Engineering ASE 2010 Antwerp, Belgium, Sept. 22 nd , 2010 Thorsten Berger, Steven She, Rafael Lotufo, Andrzej Wasowski, Krzysztof Czarnecki Thorsten Berger 1

  2. Biologists go into the Wild for their Studies… John Liebenberg / Barcroft Media andfinally.tv/2009/06/white-lions-released-into-wild

  3. Biologists go into the Wild for their Studies… John Liebenberg / Barcroft Media andfinally.tv/2009/06/white-lions-released-into-wild

  4. Biologists go into the Wild for their Studies… Lion Feature Model Sex Habitat Mane Color Appearance Size Male Female Small Medium Large John Liebenberg / Barcroft Media andfinally.tv/2009/06/white-lions-released-into-wild

  5. Biologists go into the Wild for their Studies… Lion Feature Model Sex Habitat Mane Color Appearance Size Male Female Small Medium Large John Liebenberg / Barcroft Media andfinally.tv/2009/06/white-lions-released-into-wild

  6. Variability Modeling Thorsten Berger 6

  7. Variability Modeling Variability Model (15810 possible configurations) Thorsten Berger 7

  8. Variability Modeling Variability Model Configuration #1 (15810 possible configurations) Thorsten Berger 8

  9. Variability Modeling Variability Model Configuration #1 Configuration #2 (15810 possible configurations) Thorsten Berger 9

  10. Variability Modeling “Variability needs in software are constantly increasing, because: Variability Model Configuration #1 Configuration #2 (15810 possible configurations) • Variability moves from mechanics and hardware to software, • Design decisions are delayed as long as economically feasible.“ Jan Bosch Thorsten Berger 10

  11. Feature Modeling Thorsten Berger 11

  12. Feature Modeling Other Domains Thorsten Berger 12

  13. Feature Modeling Other Domains Tools FMP Thorsten Berger 13

  14. Feature Modeling Other Domains Tools FMP Standardization Efforts Common Variability Language (CVL) eclipse.org/proposals/feature-model Thorsten Berger 14

  15. NOW, WHAT‘S THE PROBLEM? Thorsten Berger 15

  16. What about Empirical Research?  A lot of research on variability , but not on real models ! Thorsten Berger 16

  17. What about Empirical Research?  A lot of research on variability , but not on real models ! Some industry reports available, but not the models!  Thorsten Berger 17

  18. What about Empirical Research?  A lot of research on variability , but not on real models ! Some industry reports available, but not the models!   Assumptions of real models used for synthetic examples! Thorsten Berger 18

  19. What about Empirical Research?  A lot of research on variability , but not on real models ! Some industry reports available, but not the models!   Assumptions of real models used for synthetic examples!  Literature studies: Thorsten Berger 19

  20. What about Empirical Research?  A lot of research on variability , but not on real models ! Some industry reports available, but not the models!   Assumptions of real models used for synthetic examples!  Literature studies: • Hubaux et al. [VAMOS10]: ° Only 2% of reviewed papers (8 of 415) discuss applications of Feature Models in practice ° Few details about their usage given Thorsten Berger 20

  21. What about Empirical Research?  A lot of research on variability , but not on real models ! Some industry reports available, but not the models!   Assumptions of real models used for synthetic examples!  Literature studies: • Hubaux et al. [VAMOS10]: ° Only 2% of reviewed papers (8 of 415) discuss applications of Feature Models in practice ° Few details about their usage given • Chen et al. [SPLC09]: ° “There is only little , if any, experimental or detailed comparative analysis … of different VM approaches.” ° All VM approaches share similar concepts ° Some sort of reference model needed for model transformations , tools and future research Thorsten Berger 21

  22. OUR STUDY… Thorsten Berger 22

  23. Three Research Questions 1. Can we provide quantitative and qualitative empirical evidence whether Feature Modeling concepts are used in real-world languages? 2. Are additional concepts needed? 3. Are the assumptions about real models in the literature correct? Thorsten Berger 23

  24. Three Research Questions 1. Can we provide quantitative and qualitative empirical evidence whether Feature Modeling concepts are used in real-world languages? 2. Are additional concepts needed? 3. Are the assumptions about real models in the literature correct? Thorsten Berger 24

  25. Three Research Questions 1. Can we provide quantitative and qualitative empirical evidence whether Feature Modeling concepts are used in real-world languages? 2. Are additional concepts needed? 3. Are the assumptions about real models in the literature correct? Thorsten Berger 25

  26. We study CONCEPTS, SEMANTICS AND USAGE OF… Thorsten Berger 26

  27. Kconfig and CDL CDL language Kconfig language eCos 3.0 Linux Kernel 2.6.32 (embedded RTOS, (22 hardware architectures, 116 architectures, 6.4 mio. SLOC) ~1 mio. SLOC) 6320 Features (X86) 1244 Features (I386) Thorsten Berger 27

  28. Kconfig and CDL Kconfig language Thorsten Berger 28

  29. Kconfig and CDL Thorsten Berger 29

  30. Kconfig and CDL Thorsten Berger 30

  31. What do we mean by variability model SEMANTICS? Thorsten Berger 31

  32. Variability Model Semantics  Configuration Space Semantics Thorsten Berger 32

  33. Variability Model Semantics  Configuration Space Semantics Kconfig Model menuconfig MISC_FILESYSTEMS bool "Miscellaneous filesystems" if MISC_FILESYSTEMS C 1 ={(JFFS2,y),(JFFS2_DEBUG,2),…} config JFFS2_FS tristate "Journalling Flash FS" if MTD C 2 ={(JFFS2,m),(JFFS2_DEBUG,0),…} select CRC32 if MTD config JFFS2_FS_DEBUG int "JFFS2 Debug level (0=quiet, 2=noisy)" C n ={(JFFS2,n),(JFFS2_DEBUG,0),…} depends on JFFS2_FS default 0 range 0 2 --- help --- Debug verbosity of ... Thorsten Berger 33

  34. METHODOLOGY Thorsten Berger 34

  35. Methodology - Design Space  Reverse-engineered formal semantics (denotational style) Thorsten Berger 35

  36. Methodology - Design Space  Reverse-engineered formal semantics (denotational style) tools and their examples source code documentation Thorsten Berger 36

  37. Methodology - Design Space  Reverse-engineered formal semantics (denotational style) tools and their examples source code documentation Semantic Abstract Syntax Semantic Domain Function Thorsten Berger 37

  38. Methodology - Design Space  Reverse-engineered formal semantics (denotational style) tools and their examples source code documentation Semantic Abstract Syntax Semantic Domain Function Propositional Propositional Semantic Function Semantic Domain Propositional Abstraction for Reasoners Thorsten Berger 38

  39. Methodology - Language Usage extension of configurators LibCDL XConfig Thorsten Berger 39

  40. Methodology - Language Usage extension of Linux and eCos configurators models CDL model LibCDL Intermediate export Model Kconfig model XConfig Intermediate export Model Thorsten Berger 40

  41. Methodology - Language Usage analysis extension of Linux and eCos infrastructure configurators models CDL model LibCDL Intermediate parsing export Model Kconfig model parsing XConfig Intermediate export Model Thorsten Berger 41

  42. Methodology - Language Usage analysis extension of Linux and eCos infrastructure configurators models CDL model LibCDL Intermediate parsing export Model Kconfig model parsing XConfig Intermediate export Model Thorsten Berger 42

  43. Methodology - Language Usage analysis extension of Linux and eCos ϕ ecos propositional infrastructure configurators models abstraction CDL model LibCDL Intermediate parsing export Model Kconfig model parsing XConfig Intermediate export Model ϕ linux propositional abstraction Thorsten Berger 43

  44. Methodology - Language Usage analysis extension of Linux and eCos ϕ ecos propositional infrastructure configurators models abstraction CDL model LibCDL Intermediate parsing export Model SAT-based Kconfig analysis model parsing XConfig Intermediate export Model ϕ linux propositional abstraction Thorsten Berger 44

  45. RESULTS Thorsten Berger 45

  46. Three Research Questions 1. Can we provide quantitative and qualitative empirical evidence whether Feature Modeling concepts are used in real-world languages? 2. Are additional concepts needed? 3. Are the assumptions about real models in the literature correct? Thorsten Berger 46

  47. Three Research Questions 1. Can we provide quantitative and qualitative empirical evidence whether Feature Modeling concepts are used in real-world languages? 2. Are additional concepts needed? 3. Are the assumptions about real models in the literature correct? Thorsten Berger 47

  48. Feature Modeling Concepts  Concepts: • Boolean (optional), Integer and String features (attributes) • Hierarchy • Group constraints • Cross-tree constraints Thorsten Berger 48

Recommend


More recommend