Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip...
Transcript of Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip...
![Page 1: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/1.jpg)
presented at VaMoS 2010received VaMoS 2020 most influential paper award
the variability model of the Linux kernel
Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski Krzysztof Czarnecki
UWaterloo UWaterloo ULeipzig / UWaterloo ITU Copenhagen UWaterlooAlkymi, NY Auvik Networks Inc. Chalmers | University of Gothenburg
VaMoS 2020: 14th Working Conference on Variability Modeling of Software-Intensive Systems
![Page 2: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/2.jpg)
start of my PhD studies
2
2009
![Page 3: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/3.jpg)
goal: feature model synthesis
3
constraints
synthesisΦ
meta-data
Ξ
Czarnecki, Wasowski. Feature diagrams and logics: There and back again. SPLC. 2007
Benavides, Trinidad, Ruiz-Cortés: Automated reasoning on feature models. CAiSE 2005.Batory. Feature models, grammars, and propositional formulas. SPLC. 2005
![Page 4: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/4.jpg)
4
1616 citations (January 11, 2010)
4856 citations (now!)
thousands of publications build upon feature modeling:model configuration, analysis, evolution, verification, reverse-engineering
![Page 5: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/5.jpg)
5
Professor, we need a real feature model!
![Page 6: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/6.jpg)
SPLOT model repositorywww.splot-research.org
6
……….. …………… …………. ………
problem: toy models propositionalmodels
![Page 7: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/7.jpg)
highly configurable systems software
7
Linux kernelnow ~15,000 options
(features)
![Page 8: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/8.jpg)
not the first looking at Linux and benchmarking
Sincero, Schirmeier, Schröder-Preikschat, Spinczyk. Is the Linux Kernel a Software Product Line?. OSSPL. 2007
Sincero, Schröder-Preikschat. The Linux Kernel Configurator as a Feature Modeling Tool. ASPL. 2008
Tartler, Sincero, Schröder-Preikschat, Lohmann. Dead or Alive: Finding zombie features in the Linux kernel. FOSD. 2009.
Segura, Cortés. Benchmarking on the Automated Analyses of Feature Models: A Preliminary Roadmap. VaMoS. 2009
8
![Page 9: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/9.jpg)
start of multiple paperson systems software
![Page 10: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/10.jpg)
10
![Page 11: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/11.jpg)
11
![Page 12: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/12.jpg)
Kconfig goes well beyond feature modeling!
12
scalability conceptsvisibility
modularization
derived defaults /derived features
hierarchy manipulation
expressive constraintsthree-state logics (follows Kleene‘s rules) for binding modes
comparison, arithmetic, and String operators
domain-specific vocabulary
Berger, She, Lotufo, Wasowski, Czarnecki, A Study of Variability Models and Languages in the Systems Software Domain, IEEE Transactions on Software Engineering. 2013.
![Page 13: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/13.jpg)
13
![Page 14: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/14.jpg)
14
Only 5 models describe real, existing software systems
![Page 15: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/15.jpg)
15
![Page 16: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/16.jpg)
16
![Page 17: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/17.jpg)
published models
17
msdn.microsoft.com/en-us/library/aa925157.aspx
code.google.com/p/dslvariantmanagement/wiki/DemoShowCase
![Page 18: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/18.jpg)
systems software models
18
eCos i386 (1256 features)
Linux kernel x86 (6559 features)
Berger, She, Lotufo, Wasowski, Czarnecki, A Study of Variability Models and Languages in the Systems Software Domain, IEEE Transactions on Software Engineering. 2013.
![Page 19: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/19.jpg)
19
![Page 20: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/20.jpg)
20
Significant number of cross-tree constraints!
![Page 21: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/21.jpg)
systems software models
dependency graph is still sparselinear dependency between size of model and dependencies(confirmed in temporal studies)
21
indicates that feature-based architectures scale well
goodnews!
Berger, She, Lotufo, Wasowski, Czarnecki, A Study of Variability Models and Languages in the Systems Software Domain. IEEE Transactions on Software Engineering. 2013.Lotufo, She, Berger, Czarnecki, Wasowski, Evolution of the Linux Kernel Variability Model. SPLC. 2010.
![Page 22: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/22.jpg)
22
![Page 23: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/23.jpg)
23
![Page 24: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/24.jpg)
24
bitbucket.org/tberger/variability-models
![Page 25: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/25.jpg)
impact
together with follow-up works on systems software: >650 citations
used to evaluate new techniques for:quality assurance
Chen, Nair, Krishna, Menzies. ”Sampling” as a Baseline Optimizer for Search-Based Software Engineering. IEEE Transactions on Software Engineering. 2019.A. von Rhein. Analysis Strategies for Configurable Systems. Ph.D. dissertation, University of Passau, 2016.Johansen, Haugen, Fleurey. An Algorithm for Generating t-wise Covering Arrays from Large Feature Models. SPLC. 2012....
evolution of feature modelsKnüppel, Thüm, Mennicke, Meinicke, Schaefer. Is there a Mismatch Between Real-World Feature Models and Product-Line Research?. FSE. 2017.Arcaini, Gargantini, Vavassori. Automated Repairing of Variability Models. SPLC, 2017....
automated software configurationXiong, Zhang, Hubaux, She, Wang, Czarnecki. Range Fixes: Interactive Error Resolution for Software Configuration. IEEE Transactions on Software Engineering. 2014.Krieter, Thüm, Schulze, Schröter, Saake. Propagating Configuration Decisions with Modal Implication Graphs. ICSE. 2018....
25
![Page 26: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/26.jpg)
Kconfig semantics are highly intricate
26
constraints
Φ
LVAT Undertaker Kconfigreader kconfig-sat kclause
El-Sharkawy, Krafczyk, Schmid,. Analysing the Kconfig semantics and its analysis tools. GPCE. 2015
![Page 27: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/27.jpg)
conclusion
Kconfig was and is still a mess (but a very useful mess)
impact and relevance
we did not really foresee it!
moving from the state shown by SPLOT to the community working with real and complex systems
methodological impact on feature modeling researchers
moved our careers strongly towards work with real cases
helped the community to publish in mainstream SE venues (among other factors)
27
![Page 28: Steven She Rafael Lotufo Thorsten Berger Andrzej Wasowski …bergert/slides/vamos2020 mip award.pdf · systems software models 18 eCos i386 (1256 features) Linux kernel x86 (6559](https://reader033.fdocuments.in/reader033/viewer/2022051806/60024e77f34af061ae5ac0e0/html5/thumbnails/28.jpg)
28
the variability model of the Linux kernel
Steven She, Rafael Lotufo, Thorsten Berger, Andrzej Wasowski, Krzysztof Czarnecki