ABSTRACT
The increase in productivity implied by model-driven software product line engineering is weakened by the complexity exposed to the user having to manage a multi-variant model. Recently, a new paradigm has emerged: filtered software product line engineering transfers the established check-out/modify/commit workflow from version control to variability management, allowing to iteratively develop the multi-variant model in a single-variant view. This paper demonstrates SuperMod, a tool that supports collaborative filtered model-driven product line engineering, implemented for and with the Eclipse Modeling Framework. Concerning variability management, the tool offers capabilities for editing feature models and specifying feature configurations, both being well-known formalisms in product line engineering. Furthermore, collaborative editing of product lines is provided through distributed version control. The accompanying video shows that SuperMod seamlessly integrates into existing tool landscapes, reduces the complexity of multi-variant editing, automates a large part of variability management, and ensures consistency. A tool demonstration video is available here: http://youtu.be/5XOk3x5kjFc
- T. Buchmann. Valkyrie: A uml-based model-driven environment for model-driven software engineering. In S. Hammoudi, M. van Sinderen, and J. Cordeiro, editors, Proceedings of the 7th International Conference on Software Paradigm Trends (ICSOFT 2012), pages 147–157. SCITEPRESS, July 2012.Google Scholar
- S. Chacon. Pro Git. Apress, Berkely, CA, USA, 1st edition, 2009. Google ScholarDigital Library
- B. Collins-Sussman, B. W. Fitzpatrick, and C. M. Pilato. Version Control with Subversion. O’Reilly, Sebastopol, CA, 2004. Google ScholarDigital Library
- J. Estublier and R. Casallas. The Adele configuration manager. In W. F. Tichy, editor, Configuration Management, volume 2 of Trends in Software, pages 99–134. John Wiley & Sons, Chichester, UK, 1994. Google ScholarDigital Library
- H. Gomaa. Designing Software Product Lines with UML: From Use Cases to Pattern-Based Software Architectures. Addison-Wesley, Boston, MA, 2004. Google ScholarDigital Library
- F. Heidenreich, J. Kopcsek, and C. Wende. FeatureMapper: Mapping Features to Models. In Companion Proc. 30th International Conference on Software Engineering (ICSE’08), pages 943–944, New York, NY, USA, May 2008. ACM. Google ScholarDigital Library
- K. C. Kang, S. G. Cohen, J. A. Hess, W. E. Novak, and A. S. Peterson. Feature-oriented domain analysis (FODA) feasibility study. Technical Report CMU/SEI-90-TR-21, Carnegie-Mellon University, Software Engineering Institute, Nov. 1990.Google Scholar
- C. Kästner, S. Trujillo, and S. Apel. Visualizing software product line variabilities in source code. In Proc. 2nd International SPLC Workshop on Visualisation in Software Product Line Engineering (ViSPLE), pages 303–313, 9 2008.Google Scholar
- C. W. Krueger. Variation management for software production lines. In Proceedings of the Second International Conference on Software Product Lines, SPLC 2, pages 37–48, London, UK, UK, 2002. Springer-Verlag. Google ScholarDigital Library
- R. E. Lopez-Herrejon and D. S. Batory. A standard problem for evaluating product-line methodologies. In Proc. 3rd International Conference on Generative and Component-Based Software Engineering, GCSE ’01, pages 10–24, London, UK, 2001. Springer. Google ScholarDigital Library
- K. Pohl, G. Böckle, and F. van der Linden. Software Product Line Engineering: Foundations, Principles and Techniques. Springer, Berlin, Germany, 2005. Google ScholarCross Ref
- N. Sarnak, R. L. Bernstein, and V. Kruskal. Creation and maintenance of multiple versions. In J. F. H. Winkler, editor, SCM, volume 30 of Berichte des German Chapter of the ACM, pages 264–275. Teubner, 1988.Google Scholar
- F. Schwägerl, T. Buchmann, S. Uhrig, and B. Westfechtel. Towards the integration of model-driven engineering, software product line engineering, and software configuration management. In S. Hammoudi, L. F. Pires, P. Desfray, and J. Filipe, editors, Proc. of the 3rd International Conference on Model-Driven Engineering and Software Development, pages 5–18, Angers, France, 2015. SCITEPRESS. Google ScholarDigital Library
- F. Schwägerl, T. Buchmann, and B. Westfechtel. SuperMod - A model-driven tool that combines version control and software product line engineering. In Proc. 10th International Conference on Software Paradigm Trends, pages 5–18, Colmar, Alsace, France, 2015.Google ScholarCross Ref
- SCITEPRESS.Google Scholar
- F. Schwägerl, T. Buchmann, and B. Westfechtel. Filtered model-driven product line engineering with SuperMod: The home automation case. In P. Lorenz, J. Cardoso, L. A. Maciaszek, and M. van Sinderen, editors, Software Technologies, volume 586 of Communications in Computer and Information Science (CCIS), chapter 2, pages 19 – 41. Springer, April 2016.Google ScholarCross Ref
- F. Schwägerl and B. Westfechtel. Collaborative and distributed management of versioned model-driven software product lines. In Proc. 11th International Conference on Software Paradigm Trends, Lisbon, Portugal, 2016. SCITEPRESS. Accepted for publication.Google ScholarCross Ref
- C. Seidl, I. Schaefer, and U. Aßmann. Integrated management of variability in space and time in software families. In Proc. 18th International Software Product Line Conference - Volume 1, SPLC ’14, pages 22–31, New York, NY, USA, 2014. ACM. Google ScholarDigital Library
- D. Steinberg, F. Budinsky, M. Paternostro, and E. Merks. EMF Eclipse Modeling Framework. The Eclipse Series. Addison-Wesley, Upper Saddle River, NJ, 2 edition, 2009. Google ScholarDigital Library
- C. Thao. Managing evolution of software product line. In M. Glinz, G. C. Murphy, and M. Pezzè, editors, 34th International Conference on Software Engineering, ICSE 2012, pages 1619–1621. IEEE, 2012. Google ScholarDigital Library
- E. Walkingshaw and K. Ostermann. Projectional editing of variational software. In Generative Programming: Concepts and Experiences, GPCE’14, Vasteras, Sweden, September 15-16, 2014, pages 29–38, 2014. Google ScholarDigital Library
- B. Westfechtel, B. P. Munch, and R. Conradi. A layered architecture for uniform version management. IEEE Transactions on Software Engineering, 27(12):1111–1133, 2001. Google ScholarDigital Library
- S. Zschaler, P. Sánchez, J. Santos, M. Alférez, A. Rashid, L. Fuentes, A. Moreira, J. Ara´ ujo, and U. Kulesza. VML* — a family of languages for variability management in software product lines. In M. van den Brand, D. Gaˇ sevic, and J. Gray, editors, Software Language Engineering, volume 5969 of Lecture Notes in Computer Science, pages 82–102. Springer Berlin / Heidelberg, Denver, CO, USA, 2010. Google ScholarDigital Library
Index Terms
- SuperMod: tool support for collaborative filtered model-driven software product line engineering
Recommendations
Maintaining Workspace Consistency in Filtered Editing of Dynamically Evolving Model-driven Software Product Lines
MODELSWARD 2017: Proceedings of the 5th International Conference on Model-Driven Engineering and Software DevelopmentModel-driven software product line engineering is complicated: In addition to defining a variability model,
developers must deal with a multi-variant domain model. To reduce complexity, filtered editing, inspired by
version control, was recently ...
Towards the Integration of Model-Driven Engineering, Software Product Line Engineering, and Software Configuration Management
MODELSWARD 2015: Proceedings of the 3rd International Conference on Model-Driven Engineering and Software DevelopmentModel-Driven Software Engineering (MDSE), Software Product Line Engineering (SPLE) and Software Configuration Management (SCM) have been established as independent disciplines to ease different aspects of software development. The usage of models as ...
A Product Domain Model Based Software Product Line Engineering for Web Application
CANDAR '14: Proceedings of the 2014 Second International Symposium on Computing and NetworkingSoftware product line engineering (SPLE) is a methodology for developing a diversity of software products and software intensive systems at lower costs, in shorter time, and with higher quality. SPLE is widely known to develop industrial products such ...
Comments