Abstract
Model driven development (MDD) of software product lines (SPLs) merges two increasing important paradigms that synthesize programs by transformation. MDD creates programs by transforming models, and SPLs elaborate programs by applying transformations called features. In this paper, we present the design and implementation of a transformational model of a product line of scalar vector graphics and JavaScript applications. We explain how we simplified our implementation by lifting selected features and their compositions from our original product line (whose implementations were complex) to features and their compositions of another product line (whose specifications were simple). We used operators to map higher-level features and their compositions to their lower-level counterparts. Doing so exposed commuting relationships among feature compositions in both product lines that helped validate our model and implementation.
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
AHEAD Tool Suite, www.cs.utexas.edu/users/schwartz/index.html
Anastaspoulos, M., et al.: Optimizing Model Driven Development by Deriving Code Generation Patterns from Product Line Architectures. NetObject Days (2005)
Anfurrutia, F.I., Diaz, O., Trujillo, S.: On the Refinement of XML. In: Baresi, L., Fraternali, P., Houben, G.-J. (eds.) ICWE 2007. LNCS, vol. 4607, pp. 473–478. Springer, Heidelberg (2007)
Avila-GarcÃa, O., GarcÃa, A.E., Redbull, E.V.S.: Using Software Product Lines to Manage Model Families in Model-Driven Engineering. In: SAC (2007)
Batory, D.: Feature Models, Grammars, and Propositional Formulas. In: Obbink, H., Pohl, K. (eds.) SPLC 2005. LNCS, vol. 3714, pp. 7–20. Springer, Heidelberg (2005)
Batory, D., Robertson, E., Chen, G., Wang, T.: Design Wizards and Visual Programming Environments for Genvoca Generators. In: IEEE TSE (2000)
Batory, D., O’Malley, S.: The Design and Implementation of Hierarchical Software Systems with Reusable Components. In: ACM TOSEM (1992)
Batory, D., Sarvela, J.N., Rauschmayer, A.: Scaling Step Wise Refinement. In: IEEE TSE (2004)
Bezivin, J.: Model Driven Engineering: Principles, Scope, Deployment, and Applicability. In: GTTSE (2005)
Booch, G., Brown, A., Iyengar, S., Rumbaugh, J., Selic, B.: The IBM MDA Manifesto. The MDA Journal (2004)
Colyer, A., Rashid, A., Blair, G.: On the Separation of Concerns in Program Families. Technical Report COMP-001-2004, Computing Department, Lancaster University (2004)
Czarnecki, K., Eisenecker, U.: Generative Programming Methods, Tools, and Applications. Addison-Wesley, Boston (2000)
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)
Czarnecki, K., Helsen, S.: Feature-based Survey of Model Transformation Approaches. IBM Systems Journal, Â 45(3) (2006)
Deelstra, S., Sinnema, M., van Gurp, J., Bosch, J.: Model Driven Architecture as Approach to Manage Variability in Software Product Families. In: Aßmann, U., Aksit, M., Rensink, A. (eds.) MDAFA 2003. LNCS, vol. 3599. Springer, Heidelberg (2005)
Ehrig, H., Ehrig, K., Ermel, C., Hermann, F., Taentzer, G.: Information Preserving Bidirectional Model Transformations. In: Dwyer, M.B., Lopes, A. (eds.) FASE 2007. LNCS, vol. 4422, Springer, Heidelberg (2007)
Gonzlez-Baixauli, B., Laguna, M.A., Crespo, Y.: Product Lines, Features, and MDD. In: EWMT Workshop (2005)
Wu, H., Neema, S., Bapty, T., Gray, J., Gokhale, A., Zhang, J., Shi, F., Lin, Y., Roychoudhury, S., Sudarsan, R.: Model-Driven Program Transformation of a Large Avionics Framework. In: Karsai, G., Visser, E. (eds.) GPCE 2004. LNCS, vol. 3286, pp. 361–378. Springer, Heidelberg (2004)
Kang, K., Cohen, S., Hess, J., Nowak, W., Peterson, S.: Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report, CMU/SEI-90TR-21 (1990)
Kleppe, A., Warmer, J., Bast, W.: MDA Explained: The Model Driven Architecture: Practice and Promise. Addison-Wesley (2003)
Kurtev, I., van den Berg, K.: Building Adaptable and Reusable XML Applications with Model Transformations. WWW (2005)
Khurshid, S., Uzuncaova, E., Garcia, D., Batory, D.: Testing Software Product Lines Using Incremental Test Generation (submitted)
Lopez-Herrejon, R., Batory, D., Lengauer, C.: A Disciplined Approach to Aspect Composition. In: PEPM (2006)
Memon, A.M., Pollack, M.E., Soffa, M.L.: Using a Goal-driven Approach to Generate Test Cases for GUIs. In: ICSE (1999)
Mens, T., Czarnecki, K., van Gorp, P.: A Taxonomy of Model Transformations. In: GraMoT (2005)
Neuman, A.: US Population: Ethnic Structure and Age Distribution (2000), http://www.carto.net/papers/svg/samples
Sabetzadeh, M., Easterbrook, S.M.: Analysis of Inconsistency in Graph-Based Viewpoints: A Category-Theoretic Approach. In: ASE (2003)
Schmidt, D., Nechypurenko, A., Wuchner, E.: MDD for Software Product Lines: Fact or Fiction. In: Models, Workshop 8 at MODELS (2005)
Selinger, P., et al.: Access Path Selection in a Relational Database System. In: ACM SIGMOD (1979)
Thaker, S., Batory, D., Kitchin, D., Cook, W.: Safe Composition of Product Lines. In: GPCE (2007)
Trujillo, S., Azanza, W., Diaz, O.: Generative Metaprogramming. In: GPCE (2007)
Trujillo, S., Batory, D., Diaz, O.: Feature Oriented Model Driven Development: A Case Study for Portlets. In: ICSE (2007)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Freeman, G., Batory, D., Lavender, G. (2008). Lifting Transformational Models of Product Lines: A Case Study. In: Vallecillo, A., Gray, J., Pierantonio, A. (eds) Theory and Practice of Model Transformations. ICMT 2008. Lecture Notes in Computer Science, vol 5063. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-69927-9_2
Download citation
DOI: https://doi.org/10.1007/978-3-540-69927-9_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-69926-2
Online ISBN: 978-3-540-69927-9
eBook Packages: Computer ScienceComputer Science (R0)