Software & Systems Modeling

, Volume 8, Issue 2, pp 251–274 | Cite as

Questionnaire-based variability modeling for system configuration

  • Marcello La Rosa
  • Wil M. P. van der Aalst
  • Marlon Dumas
  • Arthur H. M. ter Hofstede
Regular Paper

Abstract

Variability management is a recurrent issue in systems engineering. It arises for example in enterprise systems, where modules are configured and composed to meet the requirements of individual customers based on modifications to a reference model. It also manifests itself in the context of software product families, where variants of a system are built from a common code base. This paper proposes an approach to capture system variability based on questionnaire models that include order dependencies and domain constraints. The paper presents analysis techniques to detect circular dependencies and contradictory constraints in questionnaire models, as well as techniques to incrementally prevent invalid configurations by restricting the space of allowed answers to a question based on previous answers. The approach has been implemented as a toolset and has been used in practice to capture configurable process models for film post-production.

Keywords

Variability modeling System configuration Questionnaire Software product family 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    van der Aalst W.M.P., ter Hofstede A.H.M.: YAWL: yet another workflow language. Inf. Sys. 30(4), 245–275 (2005)CrossRefGoogle Scholar
  2. 2.
    Alter S.L.: Decision Support Systems: Current Practice and Continuing Challenges. Addison-Wesley, Reading (1980)Google Scholar
  3. 3.
    Antkiewicz M., Czarnecki K.: FeaturePlugin: feature modeling plug-in for eclipse. In: Proceeings of the 5th Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA’04), Eclipse technology eXchange (ETX) Workshop (2004)Google Scholar
  4. 4.
    Atkinson C., Bayer J., Muthig D.: Component-based product line development: The KobrA approach. In: Proceedings of the 1st Software Product Line Conference, pp. 289–309. Kluwer, Denver (2000)Google Scholar
  5. 5.
    Batory D.: Feature models, grammars, and propositional formulas. In: Obbink J.H., Pohl K. (eds) Software Product Line Conference. Lecture Notes in Computer Science, vol. 3714, pp. 7–20. Springer, Heidelberg (2005)Google Scholar
  6. 6.
    Batory D.: AHEAD Tool Suite, http://www.cs.utexas.edu/users/schwartz/ATS.html. Accessed January (2008)
  7. 7.
    Batory D., Geraci B.J.: Composition validation and subjectivity in GenVoca generators. IEEE Trans. Softw. Eng. 23(2), 67–84 (1997)CrossRefGoogle Scholar
  8. 8.
    Bayer J., Gerard S., Haugen O., Mansell J., Moller-Pedersen B., Oldevig J., Tessier P., Thibault J.-P., Widen T.: Consolidated product line variability modeling. In: Käkölä, T., Dueñas, J.C. (eds) Software Product Lines—Research Issues in Engineering and Management, pp. 195–241. Springer, Heidelberg (2006)Google Scholar
  9. 9.
    Bednasch T., Endler C., Lang M.: CaptainFeature. http://sourceforge.net/project/captainfeature. Accessed January (2008)
  10. 10.
    Big Lever Software Inc. Gears. http://www.biglever.com. Accessed January (2008)
  11. 11.
    Bryant R.E.: Graph-based algorithms for Boolean function manipulation. IEEE Trans. Comput. 35(8), 677–691 (1986)CrossRefMATHGoogle Scholar
  12. 12.
    Clements P.C.: Managing variability for software product lines: working with variability mechanisms. In: Proceedings of the 10th International Conference on Software Product Lines (SPLC’06), Baltimore, August 21–24, pp. 207–208. IEEE Computer Society, Washington (2006)Google Scholar
  13. 13.
    Czarnecki K., Antkiewicz M. Mapping features to models: a template approach based on superimposed variants. In: Glück R., Lowry M.R. (eds) GPCE. Lecture Notes in Computer Science, vol. 3676, pp. 422–437. Springer, Heidelberg (2005)Google Scholar
  14. 14.
    Czarnecki K., Eisenecker U.: Generative programming: methods, tools, and applications. Addison-Wesley, Reading (2000)Google Scholar
  15. 15.
    Czarnecki K., Helsen S., Eisenecker U.W.: Formalizing cardinality-based feature models and their specialization. Softw. Process Improv. Pract. 10(1), 7–29 (2005)CrossRefGoogle Scholar
  16. 16.
    Estublier J., Casallas R.: The Adele software configuration manager. In: Configuration Management, pp. 99–139. Wiley, London (1994)Google Scholar
  17. 17.
    Hammouda I., Hautamäki J., Pussinen M., Koskimies K.: Managing variability using heterogeneous feature variation patterns. In: Fundamental Approaches to Software Engineering (FASE’05), pp. 145–159 (2005)Google Scholar
  18. 18.
    Kang K.C., Cohen S., Hess J., Novak W., Peterson A.: Feature-Oriented Domain Analysis (FODA) feasibility study. Technical Report CMU/SEI-90-TR-21, Software Engineering Institute, Carnegie Mellon University, Pittsburgh. http://www.sei.cmu.edu/publications/documents/90.reports/90.tr.021.html (1990)
  19. 19.
    La Rosa M., Lux J., Seidel S., Dumas M., ter Hofstede A.H.M.: Questionnaire-driven configuration of reference process models. In: Proceedings of the 19th International Conference on Advanced Information Systems Engineering (CAiSE’07), Trondheim, pp. 11–15 (2007)Google Scholar
  20. 20.
    Mannion M.: Using first-order logic for product line model validation. In: Software Product Lines, 2nd International Conference. Lecture Notes in Computer Science, vol. 2379, pp. 176–187. Springer, Heidelberg (2002)Google Scholar
  21. 21.
    Minato S., Ishiura N., Yajima S.: Shared binary decision diagram with attributed edges for efficient Boolean function manipulation. In: Proceedings of the 27th ACM/IEEE Conference on Design Automation (DAC’90), pp. 52–57 (1990)Google Scholar
  22. 22.
    Pohl K., Böckle G., van der Linden F.: Software Product-line Engineering—Foundations, Principles and Techniques. Springer, Berlin (2005)MATHGoogle Scholar
  23. 23.
    Pohl K., Metzger A.: Variability management in software product-line engineering. In: Proceedings of the 28th International Conference on Software Engineering (ICSE’06), Shanghai, May 20–28, 2006, pp. 1049–1050 (2006)Google Scholar
  24. 24.
    Pressman R.S.: Software Engineering: A Practitioner’s Approach Higher Education, 6th edn. Mc Graw Hill, New York (2005)Google Scholar
  25. 25.
    Pure-Systems: pure: variants, http://www.pure-systems.com. Accessed January (2008)
  26. 26.
    Raymond E.S.: The CML2 language. http://catb.org/esr/cml2/cml2-paper.html. 2000. Accessed January (2008)
  27. 27.
    Raymond P.: BDDC v2—a basic bdd-based logical calculator, user manual. http://www-verimag.imag.fr/~raymond/tools/bddc-manual, 2000. Accessed: April (2008)
  28. 28.
    Recker J., Mendling J., van der Aalst W.M.P., Rosemann M.: Model-Driven Enterprise Systems Configuration. In: Proceedings of the 18th International Conference on Advanced Information Systems Engineering (CAiSE’06), pp. 369–383. Springer, Luxembourg (2006)Google Scholar
  29. 29.
    Rosemann M., van der Aalst W.M.P.: A configurable reference modelling language. Inf. Syst. 32(1), 1–23 (2007)CrossRefGoogle Scholar
  30. 30.
    Schnieders A., Puhlmann F.: Variability mechanisms in E-business process families. In: Proceedings of the 9th International Conference on Business Information Systems (BIS’06), Klagenfurt, pp. 583–601 (2006)Google Scholar
  31. 31.
    Schobbens P.-Y., Heymans P., Trigaux J.-C.: Feature diagrams: a survey and a formal semantics. In: Proceedings of the 14th IEEE International Conference on Requirements Engineering, Minneapolis, September 11–15, pp. 136–145. IEEE Computer Society, Washington (2006)Google Scholar
  32. 32.
    Svahnberg M., van Gurp J., Bosch J.: A taxonomy of variability realization techniques. Softw. Pract. Exp. 35, 705–754 (2005)CrossRefGoogle Scholar
  33. 33.
    Tryggeseth E., Gulla B., Conradi R.: Modelling systems with variability using the PROTEUS configuration language. In: Software Configuration Management, ICSE SCM-4 and SCM-5 Workshops, pp. 216–240. Springer, Heidelberg (1995)Google Scholar
  34. 34.
    Turkay E., Gokhale A.S., Natarajan B.: Addressing the Middleware Configuration challenges using model-based techniques. In: Proceedings of the 42nd ACM Southeast Regional Conference, Huntsville, pp. 166–170. ACM, New York (2004)Google Scholar
  35. 35.
    Vanguard Software Co.: Vista, http://www.vista-survey.com. Accessed January (2008)
  36. 36.
    Voluntary Inter-industry Commerce Standard (VICS): EDI Framework. http://www.vics.org. Accessed January 2008.

Copyright information

© Springer-Verlag 2008

Authors and Affiliations

  • Marcello La Rosa
    • 1
  • Wil M. P. van der Aalst
    • 1
    • 2
  • Marlon Dumas
    • 1
    • 3
  • Arthur H. M. ter Hofstede
    • 1
  1. 1.BPM GroupQueensland University of TechnologyBrisbaneAustralia
  2. 2.Eindhoven University of TechnologyEindhovenThe Netherlands
  3. 3.University of TartuTartuEstonia

Personalised recommendations