Advertisement

Carrying Ideas from Knowledge-Based Configuration to Software Product Lines

  • Juha TiihonenEmail author
  • Mikko Raatikainen
  • Varvana Myllärniemi
  • Tomi Männistö
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9679)

Abstract

Software variability modelling (SVM) has become a central concern in software product lines – especially configurable software product lines (CSPL) require rigorous SVM. Dynamic SPLs, service oriented SPLs, and autonomous or pervasive systems are examples where CSPLs are applied. Knowledge-based configuration (KBC) is an established way to address variability modelling aiming for the automatic product configuration of physical products. Our aim was to study what major ideas from KBC can be applied to SVM, particularly in the context of CSPLs. Our main contribution is the identification of major ideas from KBC that could be applied to SVM. First, we call for the separation of types and instances. Second, conceptual clarity of modelling concepts, e.g., having both taxonomical and compositional relations would be useful. Third, we argue for the importance of a conceptual basis that provides a foundation for multiple representations, e.g., graphical and textual. Applying the insights and experiences embedded in these ideas may help in the development of modelling support for software product lines, particularly in terms of conceptual clarity and as a basis for tool support with a high level of automation.

Keywords

Variability modelling Feature modelling Knowledge-based configuration Conceptualization Variability management 

References

  1. 1.
    Benavides, D., Felfernig, A., Galindo, J.A., Reinfrank, F.: Automated analysis in feature modelling and product configuration. In: Favaro, J., Morisio, M. (eds.) ICSR 2013. LNCS, vol. 7925, pp. 160–175. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  2. 2.
    Benavides, D., Segura, S., Ruiz-Cortés, A.: Automated analysis of feature models 20 years later: a literature review. Inf. Syst. 35(6), 615–636 (2010)CrossRefGoogle Scholar
  3. 3.
    Bosch, J.: Maturity and evolution in software product lines: approaches, artefacts and organization. In: Chastek, G.J. (ed.) SPLC 2002. LNCS, vol. 2379, pp. 257–271. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  4. 4.
    Chen, L., Ali Babar, M.: A systematic review of evaluation of variability management approaches in software product lines. IST 53(4), 344–362 (2011)Google Scholar
  5. 5.
    Clements, P., Northrop, L.: Software Product Lines Practices and Patterns. Addison-Wesley Longman Publishing Co., Inc., Boston (2001)Google Scholar
  6. 6.
    Czarnecki, K., Helsen, S., Eisenecker, U.: Formalizing cardinality-based feature models and their specialization. Softw. Process Improv. Pract. 10(1), 7–29 (2005)CrossRefGoogle Scholar
  7. 7.
    Deelstra, S., Sinnema, M., Bosch, J.: Product derivation in software product families: a case study. J. Syst. Softw. 74(2), 173–194 (2005)CrossRefGoogle Scholar
  8. 8.
    Eichelberger, H., Schmid, K.: Mapping the design-space of textual variability modeling languages: a refined analysis. Int. J. Softw. Tools Technol. Transf. (2014)Google Scholar
  9. 9.
    Felfernig, A., Friedrich, G.E., Jannach, D.: UML as domain specific language for the construction of knowledge-based configuration systems. Int. J. Softw. Eng. Knowl. Eng. 10(4), 449–469 (2000)CrossRefGoogle Scholar
  10. 10.
    Felfernig, A., Hotz, L., Bagley, C., Tiihonen, J. (eds.): Knowledge-Based Configuration: From Research to Business Cases. Morgan Kaufmann, San Francisco (2014)Google Scholar
  11. 11.
    Hotz, L., Felfernig, A., Stumptner, M., Ryabokon, A., Bagley, C., Wolter, K.: Configuration knowledge representation and reasoning. In: Felfernig, A., Hotz, L., Bagley, C., Tiihonen, J. (eds.) Knowledge-Based Configuration: From Research to Business Cases, pp. 41–72. Morgan Kaufmann, San Francisco (2014)CrossRefGoogle Scholar
  12. 12.
    Hubaux, A., Jannach, D., Drescher, C., Murta, L., Männistö, T., Czarnecki, K., Heymans, P., Nguyen, T., Zanker, M.: Unifying software and product configuration: a research roadmap. In: ECAI 2012 Workshop on Configuration, pp. 31–35 (2012)Google Scholar
  13. 13.
    Kang, K., Cohen, S., Hess, J., Novak, W., Peterson, S.: Feature-oriented domain analysis feasibility study (FODA). Technical report CMU/SEI-90-TR-021, Carnegie Mellon U., Software Engineering Institute, Pittsburgh, PA, USA (1990)Google Scholar
  14. 14.
    Männistö, T., Soininen, T., Sulonen, R.: Product configuration view to software product families. In: ICSE Software Configuration Management Workshop (2001)Google Scholar
  15. 15.
    Pohl, K., Böckle, G., van der Linden, F.: Software Product Line Engineering: Foundations, Principles, and Techniques. Springer, New York (2005)CrossRefzbMATHGoogle Scholar
  16. 16.
    Schmid, K., Rabiser, R., Grünbacher, P.: A comparison of decision modeling approaches in product lines. In: 5th Workshop on Variability Modeling of Software-Intensive Systems, pp. 119–126. ACM, New York (2011)Google Scholar
  17. 17.
    Schobbens, P.-Y., Heymans, P., Trigaux, J.-C., Bontemps, Y.: Generic semantics of feature diagrams. Comput. Netw. 51(2), 456–479 (2007)CrossRefzbMATHGoogle Scholar
  18. 18.
    Soininen, T., Tiihonen, J., Männistö, T., Sulonen, R.: Towards a general ontology of configuration. AI EDAM 12(04), 357–372 (1998)Google Scholar
  19. 19.
    Svahnberg, M., van Gurp, J., Bosch, J.: A taxononomy of variability realization techniques. Softw. Pract. Experience 35(8), 705–754 (2005)CrossRefGoogle Scholar
  20. 20.
    Tiihonen, J., Heiskala, M., Anderson, A., Soininen, T.: WeCoTin–A practical logic-based sales configurator. AI Commun. 26(1), 99–131 (2013)MathSciNetGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  • Juha Tiihonen
    • 1
    Email author
  • Mikko Raatikainen
    • 2
  • Varvana Myllärniemi
    • 2
  • Tomi Männistö
    • 1
  1. 1.University of HelsinkiHelsinkiFinland
  2. 2.Aalto UniversityEspooFinland

Personalised recommendations