• No results found

B. Software Ecosystem Statistics

B.6. Dependencies and Sizes of Units

B.6.1. Debian

ρ = 0.006604; p-value = 0.2672; 95% conf. interval : [−0.005062, 0.018267]

B.6. Dependencies and Sizes of Units

B. Software Ecosystem Statistics

B.6.2. Eclipse

ρ = 0.042741; p-value = 0.04997; 95% conf. interval : [7.328e-06,8.532e-02]

B.6. Dependencies and Sizes of Units

ρ = 0.218197; p-value < 2.2e-16; 95% conf. interval : [0.177115, 0.25852]

B.6.3. Android

B. Software Ecosystem Statistics

A

p

p

e

n

d

i

x

C

Survey Questionnaire

The following survey questionnaire for our study on industrial variability modeling was

designed using SurveyGizmo1 and is currently available online at our project website2.

9/24/12 7-Minute-Questionnaire on Industrial Use of Variability Modeling

Save and continue survey later

7-Minute-Questionnaire on Industrial Use of Variability Modeling

7-Minute-Questionnaire on Industrial Use of Variability Modeling

Definitely yes Yes Neutral No Definitely no

Please check all that apply.

Back Next

Do you consider variability modeling useful?

Which of the following uses of variability modeling are most valueable in your experience?

Management of existing variability Derivation of products Planning of variability Product configuration Domain modeling Marketing feature scoping Design/Architecture Software deployment Requirements specification QA/Testing Documentation Other 10% 1 http://www.surveygizmo.com 2http://gsd.uwaterloo.ca/industrial-variability-modeling 175

C. Survey Questionnaire

9/24/12 7-Minute-Questionnaire on Industrial Use of Variability Modeling

1/1 https://edu.surveygizmo.com/s3/788749/variability

Save and continue survey later

7-Minute-Questionnaire on Industrial Use of Variability Modeling

7-Minute-Questionnaire on Industrial Use of Variability Modeling

Please check all that apply.

Please check all notations that apply.

Back Next

How have you modeled variability?

Separate variability models

Annotation of existing implementation artifacts Other

Which notations have you used to model variability?

Feature model Decision model UML-based representation Goal model

Domain-specific language (DSL) Architecture description language (ADL) Aspect-oriented language

Frame-based representation Product matrix Spreadsheet

Configuration facilities of a component framework (e.g. Spring, EJB, OSGI) Key/value pairs (e.g. in xml- or text-based configuration or properties files) Free-text description

Other:

20%

9/24/12 7-Minute-Questionnaire on Industrial Use of Variability Modeling

Save and continue survey later

7-Minute-Questionnaire on Industrial Use of Variability Modeling

7-Minute-Questionnaire on Industrial Use of Variability Modeling

Please check all tools that apply.

Back Next

Which tools have you used to model variability?

AHEAD Tool Suite from University of Texas DOPLER Tool Suite from University of Linz dslvariantmanagement (open source) FeatureIDE from University of Magdeburg GEARS from BigLever Software mbeddr.com (open source) Product Configurator from Camos Product Modeler from Configit Pure::variants from Pure::Systems Oracle configurator/modeller SAP configurator

Siebel configurator from Oracle XFeature from P&P Software Other open source tools: Other commercial tools: Home-grown domain-specific tools:

30%

9/24/12 7-Minute-Questionnaire on Industrial Use of Variability Modeling

1/1 https://edu.surveygizmo.com/s3/788749/variability

Save and continue survey later

7-Minute-Questionnaire on Industrial Use of Variability Modeling

7-Minute-Questionnaire on Industrial Use of Variability Modeling

Please check all units that apply.

Please make one selection per row.

No model 1 model 2-5 models > 5 models

< 50 51-100 101-1000 1001-10000 > 10001

Please select the percentage of features that have such dependencies (in average).

0-25% 26-50% 51-75% 76-100% Don't know

Back Next

Which of these "units of variability" do your variability models use?

Features Decisions Configuration options Variation points Calibration parameters Other:

How many units of variability (as specified above) do your models have?

Do some of your models have explicitly-modelled feature dependencies (e.g. requires, excludes)?

40%

9/24/12 7-Minute-Questionnaire on Industrial Use of Variability Modeling

Save and continue survey later

7-Minute-Questionnaire on Industrial Use of Variability Modeling

7-Minute-Questionnaire on Industrial Use of Variability Modeling

Please check all artifact types that apply.

Back Next

Your models represent the variability contained in which implementation artifacts?

Requirements Architecture/design Platform Components/modules Libraries

Source code (static variability) Running product (dynamic variability) Test cases

Documention Other:

50%

C. Survey Questionnaire

9/24/12 7-Minute-Questionnaire on Industrial Use of Variability Modeling

1/1 https://edu.surveygizmo.com/s3/788749/variability

Save and continue survey later

7-Minute-Questionnaire on Industrial Use of Variability Modeling

7-Minute-Questionnaire on Industrial Use of Variability Modeling

Please check all areas where problems occurred.

Please check all mechanisms that apply.

Back Next

Have you experienced complexity problems with variability modeling? If yes, where?

Visualization of models

Dependency management (e.g. explosion of dependencies) Configuration process (e.g. with conflicts during configuration) Model evolution

Traceability Other:

What mechanisms have you employed to combat complexity in variability models?

Decomposition into multiple models Hierarchical organization of multiple models

Some notion of encapsulation/interfaces between multiple models

Abstraction / simplification of variability (hard restrictions on the level of granularity for representing variations). Visualization of models

View-based editing and visualization

Automated reasoning tools (e.g. to check consistency, resolve configuration conflicts or propagate choices) Other:

60%

9/24/12 7-Minute-Questionnaire on Industrial Use of Variability Modeling

Save and continue survey later

7-Minute-Questionnaire on Industrial Use of Variability Modeling

7-Minute-Questionnaire on Industrial Use of Variability Modeling

To help us setting your answers in context, it would be very helpful if you could give us some information about the introduction of your product lines and their domains.

Please check all that apply.

(e.g. automotive, telecommunication, medical...)

Back Next

Which of the following strategies to introduce a product line have you used?

Product line was developed before any product was derived (pro-active). A single product was evolved into a product line (re-active).

Multiple existing products were re-engineered into a product line (refactorive). Any combination of the strategies above

Other

What are the application domains of your product lines?

70%

9/24/12 7-Minute-Questionnaire on Industrial Use of Variability Modeling

1/1 https://edu.surveygizmo.com/s3/788749/variability

Save and continue survey later

7-Minute-Questionnaire on Industrial Use of Variability Modeling

7-Minute-Questionnaire on Industrial Use of Variability Modeling

It would also be very helpful if you could tell us about your roles and experience in product line projects to set your previous answers in context.

Check all that apply.

Back Next

What have been your roles in product line projects?

Developer Modeler Team Leader Project Manager Domain Expert Researcher Product Manager Marketing Expert Other:

How many years of industrial experience do you have in software product line development?

<1 year 1-2 years 3-5 years 5-10 years >10 years

Bibliography

[ABM00] Colin Atkinson, Joachim Bayer, and Dirk Muthig. Component-based

product line development: the kobra approach. In Proceedings of the First Conference on Software Product Lines: Experience and Research Directions, SPLC’00, 2000.

[AC04] M. Antkiewicz and K. Czarnecki. Featureplugin: feature modeling plug-in

for eclipse. In Proceedings of the 2004 OOPSLA workshop on eclipse technology eXchange, OOPSLA’04, 2004.

[ACC+11] Mathieu Acher, Anthony Cleve, Philippe Collet, Philippe Merle, Laurence

Duchien, and Philippe Lahire. Reverse engineering architectural feature models. In Proceedings of the 5th European Conference on Software Architecture, ECSA’11, 2011.

[ACSW12] Nele Andersen, Krzysztof Czarnecki, Steven She, and Andrzej Wą-

sowski. Efficient synthesis of feature models. In Proceedings of the 16th International Software Product Line Conference, SPLC’12, 2012.

[ADCBZ09] Pietro Abate, Roberto Di Cosmo, Jaap Boender, and Stefano Zacchiroli.

Strong dependencies between software components. In Proceedings of the 2009 3rd International Symposium on Empirical Software Engineering and Measurement, ESEM ’09, 2009.

[AE07] A. Aldazabal and S. Erofeev. Product line unified modeler (plum). 2007.

[AHA+12] E.K. Abbasi, A. Hubaux, M. Acher, Q. Boucher, P. Heymans, A.B.Y.P.

Heymans, F. FSR, and W. Region. What’s in a web configurator?

empirical results from 111 cases. Technical Report P-CS-TR CONF- 000001, PReCISE - FUNDP, University of Namur, 2012.

[AHM+08] Nathaniel Ayewah, David Hovemeyer, J. David Morgenthaler, John Penix,

and William Pugh. Using static analysis to find bugs. IEEE Software, 25, 2008.

[AK09] S. Apel and C. Kästner. An overview of feature-oriented software devel-

opment. Journal of Object Technology (JOT), 8(5):49–84, 2009.

[AMS04] T. Asikainen, T. Männistö, and T. Soininen. Using a configurator

for modelling and configuring software product lines based on fea-

Bibliography

Product Derivation—Towards Tool Support, at the Software Product Line Conference, 2004.

[AMS06] Timo Asikainen, Tomi Mannisto, and Timo Soininen. A unified conceptual

foundation for feature modelling. In Proceedings of the 10th International on Software Product Line Conference, SPLC’06, 2006.

[AMS07] Timo Asikainen, Tomi Männistö, and Timo Soininen. Kumbang: A

domain ontology for modelling variability in software product families. Advanced Engineering Informatics, 21(1):23–40, 2007.

[anda] Android developer’s guide. Available at http://developer.android.

com/guide.

[andb] Android open source project—people and roles. http://source.android.

com/source/roles.html.

[Apt03] K.R. Apt. Principles of constraint programming. Cambridge University

Press, 2003.

[ASM04] Timo Asikainen, Timo Soininen, and Tomi Männistö. A koala-based

approach for modelling and deploying configurable software product

families. In Frank van der Linden, editor, Software Product-Family

Engineering, volume 3014 of Lecture Notes in Computer Science, pages 225–249. Springer Berlin / Heidelberg, 2004. ISBN 978-3-540-21941-5.

[BA11] Olavo Barbosa and Carina Alves. A systematic mapping study on software

ecosystems. In Proceedings of the Third International Workshop on

Software Ecosystems, IWSECO’11, 2011.

[Bat04] Don Batory. Feature-oriented programming and the ahead tool

suite. In Proceedings of the 26th International Conference on Software Engineering, ICSE ’04, 2004.

[Bat05] Don Batory. Feature models, grammars, and propositional formulas.

In Proceedings of the 9th International Conference on Software Product Lines, SPLC’05, 2005.

[BBS10] Jan Bosch and Petra Bosch-Sijtsema. From integration to composition: On

the impact of software product lines, global development and ecosystems. Journal of Systems and Software, 83(1):67–76, January 2010.

[BCFH10] Quentin Boucher, Andreas Classen, Paul Faber, and Patrick Hey-

mans. Introducing TVL, a text-based feature modelling language.

In Proceedings of the Fourth International Workshop on Variability Modelling of Software-Intensive Systems, VaMoS’10, 2010.

Bibliography

[BCL+12] Luciano Baresi, Sholom Cohen, Jaejoon Lee, Klaus Schmid, and

Karina Villela, editors. International Workshop on Services,

Clouds, and Alternative Design Strategies for Variant-Rich

Software Systems, SCArVeS’12, 2012. Call for Papers avail-

able at http://www.iese.fraunhofer.de/content/dam/iese/en/

mediacenter/documents/SCArVeS2012-CfP-final.pdf.

[BCW11] Kacper Bak, Krzysztof Czarnecki, and Andrzej Wasowski. Feature and

meta-models in clafer: mixed, specialized, and coupled. In Proceedings of the Third International Conference on Software Language Engineering, SLE’10, 2011.

[Bec03] M. Becker. Towards a general model of variability in product families. In

Proceedings of the First Workshop on Software Variability Management, SVM’03, 2003.

[BEL04] Thomas Bednasch, Christian Endler, and Markus Lang. CaptainFeature,

2002-2004. Tool available on SourceForge at https://sourceforge.net/ projects/captainfeature/.

[Ber07] Thorsten Berger. Softwareproduktlinien-entwicklung—domain engineer-

ing: Konzepte, probleme und lösungsansätze. Master’s thesis, University of Leipzig, 2007. Extensive case study on product line engineering with open source technologies.

[Ber10] Thorsten Berger. Feature-to-Code Mapping, Poster at SPLC’10. http:

//www.thorsten-berger.net/paper/splc2010_poster_tb.pdf, 2010.

[Beu03] Danilo Beuche. Composition and Construction of Embedded Software

Families. PhD thesis, Otto-von-Guericke-Universität Magdeburg, Ger-

many, December 2003. Available from http://www-ivs.cs.uni-

magdeburg.de/~danilo.

[Beu04] Danilo Beuche. pure::variants Eclipse Plugin. User Guide. pure-systems

GmbH. Available from http://web.pure-systems.com/fileadmin/ downloads/pv_userguide.pdf, 2004.

[BFK+99] Joachim Bayer, Oliver Flege, Peter Knauber, Roland Laqua, Dirk Muthig,

Klaus Schmid, Tanya Widen, and Jean-Marc DeBaud. Pulse: a method- ology to develop software product lines. In Proceedings of the 1999 Symposium on Software Reusability, SSR’99, 1999.

[BHST04] Yves Bontemps, Patrick Heymans, Pierre-Yves Schobbens, and Jean-

Christophe Trigaux. Semantics of FODA feature diagrams. In Workshop on Software Variability Management for Product Derivation, 2004.

Bibliography

[BHST05] Y. Bontemps, P. Heymans, P.Y. Schobbens, and J.C. Trigaux. Generic

semantics of feature diagrams variants. In Feature Interactions in

Telecommunications and Software Systems, ICFI’05, 2005.

[Bos00] Jan Bosch. Design and Use of Software Architecture: Adopting and

evolving a product-line approach. Addison-Wesley, Harlow, England, 2000.

[Bos05] Jan Bosch. Software Variability Management, Introduction. Presentation

slides, available at http://janbosch.com/01SVM-Introduction.pdf, 2005.

[Bos09] Jan Bosch. From software product lines to software ecosystems. In

Software Product Line Conference, SPLC’09, 2009.

[Bos10] Jan Bosch. Architecture challenges for software ecosystems.

In Proceedings of the Fourth European Conference on Software Architecture: Companion Volume, ECSA’10, 2010.

[BPT+] Thorsten Berger, Rolf-Helge Pfeiffer, Reinhard Tartler, Steffen Dienst,

Krzysztof Czarnecki, Andrzej Wasowski, and Steven She. Variability mechanisms in software ecosystems: Open versus closed platforms. Under review.

[BRCTS06] David Benavides, Antonio Ruiz-Cortés, Pablo Trinidad, and Sergio Segura.

A survey on the automated analyses of feature models. In XV Jornadas de Ingeniería del Software y Bases de Datos, JISBD’06, 2006.

[Bro96] Frederick P. Brooks, Jr. The computer scientist as toolsmith ii.

Communications of the ACM, 39(3):61–68, March 1996.

[Bry86] R.E. Bryant. Graph-based algorithms for boolean function manipulation.

IEEE Transactions on Computers, C-35(8):677–691, aug. 1986.

[BS10] Thorsten Berger and Steven She. Formal semantics of the CDL language.

Technical Note. Available at http://www.informatik.uni-leipzig.de/ ~berger/cdl_semantics.pdf, 2010.

[BSCW10a] Thorsten Berger, Steven She, Krzysztof Czarnecki, and Andrzej Wą-

sowski. Feature-to-Code mapping in two large product lines. Technical report, University of Leipzig, 2010. Available at http://informatik.uni- leipzig.de/~berger/tr/2010-berger.pdf.

[BSCW10b] Thorsten Berger, Steven She, Krzysztof Czarnecki, and Andrzej Wąsowski.

Feature-to-Code mapping in two large product lines. In Proceedings of the 14th International Conference on Software Product Lines: Going Beyond, SPLC’10, 2010.

Bibliography

[BSL+10] Thorsten Berger, Steven She, Rafael Lotufo, Andrzej Wąsowski, and

Krzysztof Czarnecki. Variability modeling in the real: A perspective from the operating systems domain. In Proceedings of the 25th IEEE/ACM International Conference on Automated Software Engineering, ASE’10, 2010.

[BSL+12] Thorsten Berger, Steven She, Rafael Lotufo, Andrezj Wasowski, and

Krzysztof Czarnecki. Variability modeling in the systems software do- main. Technical Report GSDLAB-TR 2012-07-06, Generative Software Development Laboratory, University of Waterloo, 2012. Available at http://gsd.uwaterloo.ca/tr/vm-2012-berger.

[BSR04] D. Batory, J.N. Sarvela, and A. Rauschmayer. Scaling step-wise re-

finement. IEEE Transactions on Software Engineering, 30(6):355–371, 2004.

[BSRC10] David Benavides, Sergio Segura, and Antonio Ruiz-Cortés. Automated

analysis of feature models 20 years later: A literature review. Information Systems, 35(6):615 – 636, 2010.

[BSST09] C. Barrett, R. Sebastiani, S.A. Seshia, and C. Tinelli. Satisfiability

modulo theories. Handbook of Satisfiability, 185:825–885, 2009.

[BTB09] R. Bonifácio, L. Teixeira, and P. Borba. Hephaestus: A tool for managing

spl variabilities. In SBCARS Tools Session, 2009.

[BTRC05] David Benavides, Pablo Trinidad, and Antonio Ruiz-Cortés. Automated

reasoning on feature models. In Proceedings of the 17th international conference on Advanced Information Systems Engineering, CAiSE’05, 2005.

[BWB12] Christoph Burkard, Thomas Widjaja, and Peter Buxmann. Software

ecosystems. Wirtschaftsinformatik, 54, 2012.

[CA05] Krzysztof Czarnecki and MichałAntkiewicz. Mapping features to models:

A template approach based on superimposed variants. In Proceedings of the ACM SIGSOFT/SIGPLAN International Conference on Generative Programming and Component Engineering, GPCE’05, pages 422–437, 2005.

[CAB09] L. Chen and M. Ali Babar. A survey of scalability aspects of variability

modeling approaches. In Workshop on Scalable Modeling Techniques for Software Product Lines at SPLC, 2009.

[CABA09] Lianping Chen, Muhammad Ali Babar, and Nour Ali. Variability man-

agement in software product lines: a systematic review. In Proceedings of the 13th International Software Product Line Conference, SPLC’09, 2009.

Bibliography

[CB11] Lianping Chen and Muhammad Ali Babar. A systematic review of

evaluation of variability management approaches in software product lines. Information and Software Technology, 53(4):344 – 362, 2011.

[CBH11] Andreas Classen, Quentin Boucher, and Patrick Heymans. A text-based

approach to feature modelling: Syntax and semantics of tvl. Science of Computer Programming, 76(12):1130 – 1143, 2011.

[CBUE02] Krzysztof Czarnecki, Thomas Bednasch, Peter Unger, and Ulrich W. Eise-

necker. Generative programming for embedded software: An industrial experience report. In Proceedings of the 1st ACM SIGPLAN/SIGSOFT conference on Generative Programming and Component Engineering, GPCE’02, 2002.

[Cc] Michael E. Chastain and contributors. Linux kernel makefiles documen-

tation, makefiles.txt. Available in the kernel tree at www.kernel.org.

[CC77] Patrick Cousot and Radhia Cousot. Abstract interpretation: a unified

lattice model for static analysis of programs by construction or approxi- mation of fixpoints. In Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages, POPL ’77, 1977.

[CE00] Krzysztof Czarnecki and Ulrich W. Eisenecker. Generative Programming:

Methods, Tools, and Applications. Addison-Wesley, Boston, MA, 2000.

[CGR+12] K. Czarnecki, P. Grünbacher, R. Rabiser, K. Schmid, and A. Wasowski.

Cool features and tough decisions: A comparison of variability model- ing approaches. In Proceedings of the Sixth International Workshop on Variability Modeling of Software-Intensive Systems, VAMOS’12, 2012.

[Che03] H.W. Chesbrough. Open innovation: The new imperative for creating

and profiting from technology. Harvard Business Press, 2003.

[CHE05a] Krzysztof Czarnecki, Simon Helsen, and Ulrich Eisenecker. Formaliz-

ing cardinality-based feature models and their specialization. Software Process Improvement and Practice, 10(1), 2005.

[CHE05b] Krzysztof Czarnecki, Simon Helsen, and Ulrich Eisenecker. Staged con-

figuration through specialization and multi-level configuration of fea- ture models. Software Process Improvement and Practice, 10(2):143–169, 2005.

[CHS08] Andreas Classen, Patrick Heymans, and Pierre-Yves Schobbens. What’s

in a feature: a requirements engineering perspective. In Proceedings of the Theory and Practice of Software, 11th International Conference on Fundamental Approaches to Software Engineering, FASE’08/ETAPS’08, 2008.