ABSTRACT
Software Product Line has acquired a significant momentum at the end of the 1990ies since it allows the production of variable software systems corresponding to the same domain portfolio. The effectiveness of the derivation process depends on how well variability is defined and implemented which is a crucial topic area that was addressed among two essential trends: On the one hand, starting from Domain Specific Modelling Language to express domain requirements and automate the code generation with Model-Driven Engineering techniques and on the second hand, exploiting the soar of variability mechanisms.
In this context, the current research presents a method that unifies the two aforementioned approaches to cover the overall strategies by defining a framework that allows a better code generation in terms of documentation, maintainability, rapidity,etc. The starting point is the usage of the Domain Specific Modelling Language to represent the stakeholders requirements. Then, the resulting meta-model will be converted into one our several Feature Diagrams on which variability mechanisms can be applied to generate all the family products.
A preliminary experiment has been undertaken to design the methodology of the proposed software factory in a meta-model. The validation task was evaluated with an academic use case called HandiWeb developed to facilitate handicap persons access to the internet. The first results allow us to put the hand on the key challenges that must be resolved by the proposed methodology.
- A. Demaille A. Duret-Lutz, T. Geraud. 2001. Design Patterns for Generic Programming in C++. In 6th Conference on Object-Oriented Technologies and Systems, 2001. Google ScholarDigital Library
- A.Kamil A.Fazal and A.Oxley. 2010. A review on aspect oriented implementation of software product lines components. Information Technology Journal (2010).Google Scholar
- Felix Bachmann and Paul Clements. 2005. Variability in Software Product Lines. Technical Report CMU/SEI-2005-TR-012. Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA. http://resources.sei.cmu.edu/library/asset-view.cfm?AssetID=7675Google Scholar
- Len Bass. 2013. Software architecture in practice. Addison-Wesley, Upper Saddle River, NJ. Google ScholarDigital Library
- Bassett and G.Paul. 1996. Framing software reuse: lessons from the real world. Prentice-Hall, Inc. Google ScholarDigital Library
- S.Duszynski B.Zhang and M.Becker. 2016. Variability mechanisms and lessons learned in practice. In Variability and Complexity in Software Design (VACE), IEEE/ACM International Workshop on, 2016. Google ScholarDigital Library
- C.Gacek and M.Anastasopoules. 2001. Implementing product line variabilities. In ACM SIGSOFT Software Engineering Notes, 2001. Google ScholarDigital Library
- CKastner and S.Apel. 2008. Integrating Compositional and Annotative Approaches for Product Line Engineering. In Proceedings of the Workshop on Modularization, Composition, and Generative Techniques for Product Line Engineering (McGPLE), October 19--23, 2008.Google Scholar
- S.Apel C.Kastner and D.Batory. 2007. A case study implementing features using AspectJ. In Software Product Line Conference SPLC, 2007. Google ScholarDigital Library
- X.Cregut F.Zalila and M.Pantel. 2013. A transformation-driven approach to automate feedback verification results. In Proceedings of the Third International Conference on Model and Data Engineering, 2013. Google ScholarDigital Library
- Thomas Thum Thomas Leich Fabian Benduhn Gunter Saake, Jens Meinicke and Reimar Schroter. 2017. Mastering Software Variability with FeatureIDE. Springer. Google ScholarDigital Library
- H.Papajewski I.Groher and M.Voelter. 2007. Integrating Model-Driven Development and Software Product Line Engineering. In Eclipse Summit 07: Proceedings of the Eclipse Modeling Symposium, 2007.Google Scholar
- R. Capilla J. Bosch and R. Hilliard. 2015. Trends in systems and software variability. In IEEE Software, 2015.Google Scholar
- D. Hoffman J. Coplien and D. Weiss. 1998. Commonality and variability in software engineering. In IEEE Software, Nov/Dec 1998. Google ScholarDigital Library
- J.Tolvanen and S.Kell. 2016. Model-driven development challenges and solutions - experiences with domain-specific modelling in industry. In Proceedings of the 4th International Conference on Model-Driven Engineering and Software Development, 2016.Google ScholarCross Ref
- C.Kim P.Hwan S.Lau K.Czarnecki, M.Antkiewicz and K.Pietroszek. {n. d.}. Model-driven software product lines. In Companion to the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, 2005.Google Scholar
- N.Cardozo K.Mens, R.Capilla and B.Dumas. {n. d.}. A taxonomy of context-aware software variability approaches. In Companion Proceedings of the 15th International Conference on Modularity, 2016. Google ScholarDigital Library
- M. T. Valente M. V. Couto and E. Figueired. 2011. Extracting software product lines: A case study using conditional compilation. In IEEE Computer Society, 2011.Google Scholar
- F.Fleurey P.Lahire S.Moisan M.Acher, P.Collet and J.Rigault. {n. d.}. Modeling context and dynamic adaptations with feature models. In 4th International Workshop Models@ run. time at Models, 2009.Google Scholar
- M.Voelter and I.Groher. 2007. Product Line Implementation using Aspect-Oriented and Model-Driven Software Development. In Software Product Line Conference, September 10--14, 2007. Google ScholarDigital Library
- I.Galvão J.Noppen S.Khanand H.Arboleda A.Rashid N.Anquetil, B.Grammel and A.Garcia. {n. d.}. Traceability for model driven, software product line engineering. In ECMDA Traceability Workshop Proceedings,2008.Google Scholar
- F.Benduhn J.Meinicke G.Saake T.Thüm, C.Kästner and T.Leich. {n. d.}. FeatureIDE: An extensible framework for feature-oriented software development. Science of Computer Programming, Elsevier, 2014 ({n. d.}). Google ScholarDigital Library
- J.Bosch Van Gurp and M.Svahnberg. 2001. On the Notion of Variability in Software Product Lines. In Working IEEE/IFIP Conference on Software Architecture, August 28 -- 31, 2001. pages 45--54. Google ScholarDigital Library
- T. Berger S. Duszynski M. Becker and K. Czarnecki Y. Dubinsky, J. Rubin. 2013. An Exploratory Study of Cloning in Industrial Software Product Lines. In Proceedings of the Conference on Software Maintenance and Reengineering, 2013. Google ScholarDigital Library
Index Terms
- A methodological framework to enable the generation of code from DSML in SPL
Recommendations
A DSML for mobile phone applications testing
DSM '10: Proceedings of the 10th Workshop on Domain-Specific ModelingModel-Driven Testing (MDT) is a relevant approach for the automation of software testing. This approach uses models to express and execute tests. These models are instances of metamodels describing a dedicated Domain-Specific Modeling Language (DSML). ...
TALISMAN MDE Framework: An Architecture for Intelligent Model-Driven Engineering
IWANN '09: Proceedings of the 10th International Work-Conference on Artificial Neural Networks: Part II: Distributed Computing, Artificial Intelligence, Bioinformatics, Soft Computing, and Ambient Assisted LivingModels are becoming first-class artifacts in Software Engineering because they provide better productivity and quality. In this paper we present a framework for developing all kinds of applications, mainly by following the best practices of the two main ...
Using fUML Combined with a DSML: An Implementation using Papyrus UML/SysML Modeler
MODELSWARD 2019: Proceedings of the 7th International Conference on Model-Driven Engineering and Software DevelopmentThe definition of standards is an efficient way to ensure a consensus on concepts and usages for a given domain. Unified modeling language (UML) and System modeling language (SysML) are standards: UML provides a large set of concepts enabling the ...
Comments