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.
Synthesis of Attributed Feature Models: Foundations 3
Product Lines/Highly configurable systems
config NR_CPUSint "Maximum number of CPUs" if SMP && !MAXSMPrange 2 8 if SMP && X86_32 && !X86_BIGSMPrange 2 512 if SMP && !MAXSMP && !CPUMASK_OFFSTACKrange 2 8192 if SMP && !MAXSMP && CPUMASK_OFFSTACK && X86_64default "1" if !SMPdefault "8192" if MAXSMPdefault "32" if SMP && X86_BIGSMPdefault "8" if SMP---help--- This allows you to specify the maximum number of CPUs which this kernel will support. If CPUMASK_OFFSTACK is enabled, the maximum supported value is 4096, otherwise the maximum value is 512. The minimum value which makes sense is 2.
This is purely to save memory - each supported CPU adds approximately eight kilobytes to the kernel image.
Linux kernel
Synthesis of Attributed Feature Models: Foundations 4
● 2000+ options in about:config
● 3 types: boolean, integers, stringFirefox
Product Lines/Highly configurable systems
Synthesis of Attributed Feature Models: Foundations 5
Product Lines
Product comparison matrices
Comparison of digital SLRs
Synthesis of Attributed Feature Models: Foundations 6
Modeling and Synthesis
● Boolean feature models (FMs) are nice but options are not only boolean. Languages/operations have been defined on top of attributed FMs; so where are attributed feature models?
● Numerous works address the synthesis of Boolean feature models, eg [Czarnecki et al. SPLC'07, Andersen et al. SPLC'12, Davril et al. FSE'13, Becan et al. ESE'15] but none of them consider attributes
●
We introduce for the first time an algorithmic and parameterizable approach for synthesizing attributed FMs from product descriptions
Synthesis of Attributed Feature Models: Foundations 7
From Configuration Matrix to AFM
#2 synthesis procedure#3 scalability evaluation
#1 semantics
Synthesis of Attributed Feature Models: Foundations 8
Attributed Feature Model (AFM)● AFM = attributed feature diagram + an arbitrary constraint
● Attributed feature diagram =
– Hierarchy of features
– Attributes: placed in features, they take a value in a domain
– Domain = set of values, null value and a partial order
– A set of human readable constraints
Synthesis of Attributed Feature Models: Foundations 9
Formalizing the AFM Synthesis Problem
● Configuration matrix = intermediate representation of a set of configurations
● Given a configuration matrix, synthesize an AFM which is
– Maximal = the feature diagram contains as much as possible information
– Sound and Complete = represent exactly the set of configurations
Synthesis of Attributed Feature Models: Foundations 10
Formalizing the AFM Synthesis Problem
● Theoretical contributions (more details in the paper)
– Over-approximation of the attributed feature diagram
– Several AFMs are possible for one configuration matrix
root F0 F1 F2 F3 A1 A2
Yes Yes Yes No Yes 3 0
Yes Yes No Yes Yes 2 2
Yes Yes Yes No No 2 0
Yes Yes No Yes No 0 8
root
F1
F3
F2F0A1 A2
root
F1
F3F2F0A1
A2
excludes
Synthesis
Synthesis of Attributed Feature Models: Foundations 11