Abstract
Systematically postponing variability binding is an important design concept in Software Product Line Engineering in order to increase flexibility. One major challenge is the technical implementation of respective binding mechanisms in different tool environments and artifacts.
This work proposes variability and binding mechanisms for model-based development with Matlab/Simulink. The aim is the explicit representation of variability in order to support the development of generic architectures, and the binding of variability in development models before code generation. This means that it should not only be possible to describe variability, but also to derive concrete system models from the generic platform.
We extend the pure::variants Connector for Simulink proposed by pure-systems GmbH and Daimler AG, which provides basic variability mechanisms. Based on common variability scenarios identified in industry, 3-layered templates are used to abstract the variability implementation. This abstraction simplifies the platform development process and hides variability mechanisms from the developers. Additionally, we introduce an approach to derive concrete system models by removing variability information and disabled functionality from the model.
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
Ehsani, M., Gao, Y., Emadi, A.: Modern Electric, Hybrid Electric, and Fuel Cell Vehicles: Fundamentals, Theory, and Design, 2nd edn. CRC Press (2010)
van der Linden, F.J., Schmid, K., Rommes, E.: Software Product Lines in Action: The Best Industrial Practice in Product Line Engineering. Springer, Berlin (2007)
Voelter, M.: Language and IDE Modularization, Extension and Composition with MPS. Technical report (2011)
Beuche, D., Weiland, J.: Managing Flexibility: Modeling Binding-Times in Simulink. In: Paige, R.F., Hartman, A., Rensink, A. (eds.) ECMDA-FA 2009. LNCS, vol. 5562, pp. 289–300. Springer, Heidelberg (2009)
Pohl, K., Böckle, G., van der Linden, F.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer (2005)
Krueger, C.W.: Towards a Taxonomy for Software Product Lines. In: van der Linden, F.J. (ed.) PFE 2003. LNCS, vol. 3014, pp. 323–331. Springer, Heidelberg (2004)
Fritsch, C., Lehn, A., Strohm, D.T.: Evaluating Variability Implementation Mechanisms. In: Proceedings of International Workshop on Product Line Engineering, pp. 59–64 (2002)
Czarnecki, K., Antkiewicz, M.: Mapping Features to Models: A Template Approach Based on Superimposed Variants. In: Glück, R., Lowry, M. (eds.) GPCE 2005. LNCS, vol. 3676, pp. 422–437. Springer, Heidelberg (2005)
Haugen, O., Moller-Pedersen, B., Oldevik, J., Olsen, G., Svendsen, A.: Adding Standardized Variability to Domain Specific Languages. In: Proc. of the 12th International Software Product Line Conference, pp. 139–148 (2008)
Schulze, M., Weiland, J., Beuche, D.: Automotive model-driven development and the challenge of variability. In: Proceedings of the 16th International Software Product Line Conference, SPLC 2012, vol. 1, pp. 207–214. ACM, New York (2012)
Trujillo, S., Garate, J.M., Lopez-Herrejon, R.E., Mendialdua, X., Rosado, A., Egyed, A., Krueger, C.W., de Sosa, J.: Coping with variability in model-based systems engineering: an experience in green energy. In: Kühne, T., Selic, B., Gervais, M.-P., Terrier, F. (eds.) ECMFA 2010. LNCS, vol. 6138, pp. 293–304. Springer, Heidelberg (2010)
Czarnecki, K.: Generative Programming: Principles and Techniques of Software Engineering Based on Automated Configuration and Fragment-Based Component Models. PhD thesis, Technical University of Ilmenau (October 1998)
Lee, K., Kang, K.C., Lee, J.J.: Concepts and Guidelines of Feature Modeling for Product Line Software Engineering. In: Gacek, C. (ed.) ICSR 2002. LNCS, vol. 2319, pp. 62–77. Springer, Heidelberg (2002)
Kang, K.C., Lee, J., Donohoe, P.: Feature-Oriented Project Line Engineering. IEEE Software 19(4), 58–65 (2002)
Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Peterson, A.S.: Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical report, Carnegie-Mellon University Software Engineering Institute (November 1990)
Svahnberg, M., van Gurp, J., Bosch, J.: A taxonomy of variability realization techniques: Research Articles. Softw. Pract. Exper. 35(8), 705–754 (2005)
Kelly, S., Tolvanen, J.P.: Domain-Specific Modeling: Enabling Full Code Generation. Wiley-IEEE Computer Society Press (March 2008)
van Deursen, A., Klint, P., Visser, J.: Domain-specific languages: an annotated bibliography. SIGPLAN Not. 35(6), 26–36 (2000)
Czarnecki, K.: Overview of Generative Software Development. In: Banâtre, J.-P., Fradet, P., Giavitto, J.-L., Michel, O. (eds.) UPP 2004. LNCS, vol. 3566, pp. 326–341. Springer, Heidelberg (2005)
Voelter, M., Groher, I.: Product line implementation using aspect-oriented and model-driven software development. In: Proceedings of the 11th International Software Product Line Conference, SPLC 2007, pp. 233–242. IEEE Computer Society, Washington, DC (2007)
Bosch, J., Florijn, G., Greefhorst, D., Kuusela, J., Obbink, H., Pohl, K.: Variability Issues in Software Product Lines. In: van der Linden, F.J. (ed.) PFE 2002. LNCS, vol. 2290, pp. 13–21. Springer, Heidelberg (2002)
Groher, I., Voelter, M.: Expressing Feature-Based Variability in Structural Models. In: Workshop on Managing Variability for Software Product Lines (2007)
Gomaa, H., Olimpiew, E.M.: Managing variability in reusable requirement models for software product lines. In: Mei, H. (ed.) ICSR 2008. LNCS, vol. 5030, pp. 182–185. Springer, Heidelberg (2008)
Zhang, H., Jarzabek, S.: XVCL: A mechanism for handling variants in software product lines. Science of Computer Programming, 381–407 (2004)
Dziobek, C., Loew, J., Przystas, W., Weiland, J.: Functional Variants Handling in Simulink Models. Technical report, Daimler AG (2008)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Leitner, A., Ebner, W., Kreiner, C. (2013). Mechanisms to Handle Structural Variability in MATLAB/Simulink Models. In: Favaro, J., Morisio, M. (eds) Safe and Secure Software Reuse. ICSR 2013. Lecture Notes in Computer Science, vol 7925. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-38977-1_2
Download citation
DOI: https://doi.org/10.1007/978-3-642-38977-1_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-38976-4
Online ISBN: 978-3-642-38977-1
eBook Packages: Computer ScienceComputer Science (R0)