Abstract
This paper shows how to incrementally analyze how variability described in the Common Variability Language (CVL) affects the semantics of a model in a domain-specific language (DSL). CVL is a generic language for modeling variability. Using Alloy for definition of semantics we perform analysis to capture the elements in the model, which are semantically affected by applying the variabilities specified by the CVL model. An extension to the CVL editor is provided to automate the analysis. To illustrate the approach, we combine CVL with the Train Control Language (TCL) to capture how the semantics of TCL models are affected when applying CVL to them. We show how the analysis can be applied e.g., for testing.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Anastasakis, K., Bordbar, B., Küster, J.M.: Analysis of Model Transformations Via Alloy. In: Baudry, B., Faivre, A., Ghosh, S., Pretschner, A. (eds.) 4th International Workshop on Model Driven Engineering, Verification and Validation, in conjunction with MoDELS 2007, Nashville, TN, USA. Springer, Heidelberg (2008)
Andoni, A., Daniliuc, D., Khurshid, S., Marinov, D.: Evaluating the Small Scope Hypothesis. MIT CSAIL MIT-LCS-TR-921 (2003)
Baresi, L., Spoletini, P.: On the Use of Alloy to Analyze Graph Transformation Systems. In: Corradini, A., Ehrig, H., Montanari, U., Ribeiro, L., Rozenberg, G. (eds.) ICGT 2006. LNCS, vol. 4178, pp. 306–320. Springer, Heidelberg (2006)
EMF, Eclipse Modeling Framework (Emf), http://www.eclipse.org/modeling/emf/
Endresen, J., Carlson, E., Moen, T., Alme, K.-J., Haugen, Ø., Olsen, G.K., Svendsen, A.: Train Control Language - Teaching Computers Interlocking. In: Computers in Railways XI (COMPRAIL 2008), Toledo, Spain (2008)
Fleurey, F., Haugen, Ø., Møller-Pedersen, B., Olsen, G.K., Svendsen, A., Zhang, X.: A Generic Language and Tool for Variability Modeling, SINTEF, Oslo, Norway, Technical Report SINTEF A13505 (2009)
Fraser, G., Aichernig, B.K., Wotawa, F.: Handling Model Changes: Regression Testing and Test-Suite Update with Model-Checkers. Electronic Notes in Theoretical Computer Science 190, 33–46 (2007)
Gheyi, R., Massoni, T., Borba, P.: A Theory for Feature Models in Alloy. In: First Alloy Workshop, Portland, United States, pp. 71–80 (2006)
GMF, Eclipse Graphical Modeling Framework (Gmf), http://www.eclipse.org/modeling/gmf/
Haugen, O., Møller-Pedersen, B., Oldevik, J., Olsen, G.K., Svendsen, A.: Adding Standardized Variability to Domain Specific Languages. In: SPLC 2008, Limerick, Ireland (2008)
Haugen, Ø., Husa, K., Runde, R., Stølen, K.: Stairs Towards Formal Design with Sequence Diagrams. Software and Systems Modeling 4, 355–357 (2005)
Jackson, D.: Micromodels of Software. In: Broy, M., Pizka, M. (eds.) Models, Algebras and Logic of Engineering Software, pp. 351–384. IOS Press, Amsterdam (2003)
Jackson, D.: Software Abstractions: Logic, Language, and Analysis. The MIT Press, Cambridge (2006)
Kelsen, P., Ma, Q.: A Lightweight Approach for Defining the Formal Semantics of a Modeling Language. In: Busch, C., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 690–704. Springer, Heidelberg (2008)
Oldevik, J.: Mofscript Eclipse Plug-In: Metamodel-Based Code Generation. In: Eclipse Technology Workshop (EtX) at ECOOP 2006, Nantes (2006)
Svendsen, A.: Application Reconfiguration Based on Variability Transformations, School of Computing, Queen’s University, Kingston, Canada, Technical Report 2009-566 (2009)
Svendsen, A., Møller-Pedersen, B., Haugen, Ø., Endresen, J., Carlson, E.: Formalizing Train Control Language: Automating Analysis of Train Stations. In: Comprail 2010, Beijing, China (2010)
Svendsen, A., Olsen, G.K., Endresen, J., Moen, T., Carlson, E., Alme, K.-J., Haugen, O.: The Future of Train Signaling. In: Busch, C., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 128–142. Springer, Heidelberg (2008)
Svendsen, A., Zhang, X., Lind-Tviberg, R., Fleurey, F., Haugen, Ø., Møller-Pedersen, B., Olsen, G.K.: Developing a Software Product Line for Train Control: A Case Study of Cvl. In: Bosch, J., Lee, J. (eds.) SPLC 2010. LNCS, vol. 6287, pp. 106–120. Springer, Heidelberg (2010)
Uzuncaova, E., Garcia, D., Khurshid, S., Batory, D.: Testing Software Product Lines Using Incremental Test Generation. In: Proceedings of the 2008 19th International Symposium on Software Reliability Engineering, pp. 249–258. IEEE Computer Society, Los Alamitos (2008)
Uzuncaova, E., Khurshid, S., Batory, D.: Incremental Test Generation for Software Product Lines. IEEE Trans. Softw. Eng. 36, 309–322 (2010)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Svendsen, A., Haugen, Ø., Møller-Pedersen, B. (2011). Analyzing Variability: Capturing Semantic Ripple Effects. In: France, R.B., Kuester, J.M., Bordbar, B., Paige, R.F. (eds) Modelling Foundations and Applications. ECMFA 2011. Lecture Notes in Computer Science, vol 6698. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21470-7_18
Download citation
DOI: https://doi.org/10.1007/978-3-642-21470-7_18
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-21469-1
Online ISBN: 978-3-642-21470-7
eBook Packages: Computer ScienceComputer Science (R0)