Abstract
When developing large-scale industrial software systems engineers need to instantiate, configure, and deploy diverse reusable components. The number of component instances required depends on customer requirements only known during configuration and is typically unknown when modeling the systems’ variability. Also, the hierarchy of dynamically created component instances leads to complex dependencies between configuration decisions. Dealing with component multiplicity and hierarchy thus requires an approach capable of expressing the dependencies among dynamically instantiated components and configuration decisions. Furthermore, users need tool support for navigating the complex decision space during configuration. In this experience paper we report on applying a decision-oriented modeling approach for defining component variability, multiplicity, and hierarchy. We further present a configuration tool that guides end users through the complex decision space. We report applications of the approach to industrial software systems and describe patterns and lessons learned.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
van der Linden, F., Schmid, K., Rommes, E.: Software Product Lines in Action – The Best Industrial Practice in Product Line Engineering. Springer, Heidelberg (2007)
Pohl, K., Böckle, G., van der Linden, F.: Software Product Line Engineering: Foundations, Principles, and Techniques. Springer (2005)
Czarnecki, K., Grünbacher, P., Rabiser, R., Schmid, K., Wasowski, A.: Cool features and tough decisions: A comparison of variability modeling approaches. In: 6th Int’l Workshop on Variability Modelling of Software-Intensive Systems, Leipzig, Germany, pp. 173–182. ACM (2012)
Dhungana, D., Falkner, A., Haselböck, A.: Configuration of cardinality-based feature models using generative constraint satisfaction. In: 37th EUROMICRO Conference on Software Engineering and Advanced Applications, Oulu, Finland, pp. 100–103. IEEE (2011)
Dhungana, D., Grünbacher, P., Rabiser, R.: The DOPLER meta-tool for decision-oriented variability modeling: A multiple case study. Automated Software Engineering 18(1), 77–114 (2011)
Dhungana, D., Schreiner, H., Lehofer, M., Vierhauser, M., Rabiser, R., Grünbacher, P.: Modeling multiplicity and hierarchy in product line architectures: Extending a decision-oriented approach. In: 3rd International Workshop on Variability in Software Architecture, Collocated with WICSA 2014. ACM, Sydney (2014)
Rabiser, R., Grünbacher, P., Lehofer, M.: A qualitative study on user guidance capabilities in product configuration tools. In: 27th IEEE/ACM Int’l Conference Automated Software Engineering, Essen, Germany, pp. 110–119. ACM (2012)
Shaw, M., Garlan, D.: Formulations and formalisms in software architecture. In: van Leeuwen, J. (ed.) Computer Science Today. LNCS, vol. 1000, pp. 307–323. Springer, Heidelberg (1995)
Medvidovic, N., Taylor, R.N.: A classificiation and comparison framework for software architecture description languages. IEEE Transactions on Software Engineering 26(1), 70–93 (2000)
Matinlassi, M.: Comparison of software product line architecture design methods: COPA, FAST, FORM, KobrA and QADA. In: 26th International Conference on Software Engineering (ICSE 2004), pp. 127–136. IEEE CS, Edinburgh (2004)
Dashofy, E., van der Hoek, A., Taylor, R.: A highly-extensible, XML-based architecture description language. In: Working IEEE/IFIP Conference on Software Architecture (WICSA 2001), pp. 103–112. IEEE Computer Society, Amsterdam (2001)
Czarnecki, K., Helsen, S., Eisenecker, U.: Formalizing cardinality-based feature models and their specialization. Software Process: Improvement and Practice 10(1), 7–29 (2005)
Maersk-Møller, H.M., Jørgensen, B.N.: Cardinality-dependent variability in orthogonal variability models. In: 6th Workshop on Variability Modeling of Software-Intensive Systems, Leipzig, Germany, pp. 165–172. ACM (2012)
Software Productivity Consortium, “Synthesis guidebook,” SPC-91122-MC. Herndon, Virginia, Tech. Rep. (1991)
Weiss, D., Lai, C.: Software Product-Line Engineering: A Family-Based Software Development Process. Addison Wesley Professional (1999)
Behjati, R., Yue, T., Briand, L., Selic, B.: SimPL: A product-line modeling methodology for families of integrated control systems. Information and Software Technology 55(3), 607–629 (2013)
Riebisch, M., Böllert, K., Streitferdt, D., Philippow, I.: Extending feature diagrams with UML multiplicities. In: 6th World Conference on Integrated Design and Process Technology, Pasadena, California (2002)
Bąk, K., Czarnecki, K., Wąsowski, A.: Feature and meta-models in Clafer: Mixed, specialized, and coupled. In: Malloy, B., Staab, S., van den Brand, M. (eds.) SLE 2010. LNCS, vol. 6563, pp. 102–122. Springer, Heidelberg (2011)
Asikainen, T., Männistö, T., Soininen, T.: A unified conceptual foundation for feature modelling. In: 10th Int’l Conference on Software Product Lines, Baltimore, ML, USA, pp. 31–40. IEEE (2006)
Gómez, A., Ramos, I.: Cardinality-based feature modeling and model-driven engineering: Fitting them together. In: 4th Int’l Workshop on Variability Modelling of Software-Intensive Systems, Linz, Austria, pp. 61–68. ICB Research Report No. 37 (2010)
Object Management Group, Common variability language, OMG initial submission (2010), http://www.omgwiki.org/variability/
Bruneton, E.: ASM 4.0 - a java bytecode engineering library. Whitepaper, OW2 Consortium (2011)
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley (1994)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer International Publishing Switzerland
About this paper
Cite this paper
Rabiser, R., Vierhauser, M., Grünbacher, P., Dhungana, D., Schreiner, H., Lehofer, M. (2014). Supporting Multiplicity and Hierarchy in Model-Based Configuration: Experiences and Lessons Learned. In: Dingel, J., Schulte, W., Ramos, I., Abrahão, S., Insfran, E. (eds) Model-Driven Engineering Languages and Systems. MODELS 2014. Lecture Notes in Computer Science, vol 8767. Springer, Cham. https://doi.org/10.1007/978-3-319-11653-2_20
Download citation
DOI: https://doi.org/10.1007/978-3-319-11653-2_20
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-11652-5
Online ISBN: 978-3-319-11653-2
eBook Packages: Computer ScienceComputer Science (R0)