全部 标题 作者
关键词 摘要

OALib Journal期刊
ISSN: 2333-9721
费用:99美元

查看量下载量

相关文章

更多...

Investigation of Tools, Techniques and Languages for Model Driven Software Product Lines (SPL): A Systematic Literature Review

DOI: 10.4236/jsea.2019.127018, PP. 293-306

Keywords: Model Driven SPL, Model Based Product Lines, Modeling for SPL, Model Development for SPL

Full-Text   Cite this paper   Add to My Lib

Abstract:

Software development is a complex and difficult task that requires the investment of sufficient resources and carries major risk of failure. Model Driven Engineering (MDE) focuses on creating software models and automating code generation from the models. Model Driven Software Development (MDSD) offers significantly more effective approaches. These approaches improve the way of building software. Model driven approaches partially increase developer productivity, decrease the cost of software construction, improve software reusability, and make software more maintainable. This paper investigates the methods where Model Driven Software Development is integrated with Software Product Line (SPL). This SLR has been conducted to identify 71 research works published since 2014. We have collected 18 tools, 14 techniques and 17 languages used for MDSD for SPL. We analyze which technique is suitable for SPL. We compare the techniques on the basis of features provided by these tools to understand the better-quality results.

References

[1]  Eason, G., Noble, B. and Sneddon, I.N. (1955) On Certain Integrals of Lipschitz-Hankel Type Involving Products of Bessel Functions. Philosophical Transactions of the Royal Society of London. Series A, 247, 529-551.
https://doi.org/10.1098/rsta.1955.0005
[2]  Cohan, A.Z., Coha, A.Z., Bibi, A. and Motla, Y.Z. (2017) Optimized Software Product Line Architecture and Feature Modeling in Improvement of SPL. International Conference on Frontiers of Information Technology, Islamabad, 18-20 December 2017, 167-172.
[3]  Abbas, A., Siddiqui, I.F., Lee, S.U.J., et al. (2018) Multi-Objective Optimum Solutions for IoT-Based Feature Models of Software Product Line. Journal of Latex Class Files, 6, 12228-12239.
https://doi.org/10.1109/ACCESS.2018.2806944
[4]  Burger, E., Henss, J., Küster, M. and Kruse, S. (2016) View-Based Model-Driven Software Development with Model Join. Journal of Software and Systems Modeling, 15, 473-496.
https://doi.org/10.1007/s10270-014-0413-5
[5]  Wang, S., Ali, S., Yue, T. and Liaaen, M. (2013) Using Feature Model to Support Model-Based Testing of Product Lines: An Industrial Case Study. 13th International Conference on Quality Software, Nanjing, 29-30 July 2013, 75-84.
https://doi.org/10.1109/QSIC.2013.51
[6]  Damiani, F., Faitelson, D. and Gladisch, C. (2017) A Novel Model-Based Testing Approach for Software Product Lines. Journal of Software and Systems Modeling, 16, 1223-1251.
https://doi.org/10.1007/s10270-016-0516-2
[7]  Abbas, A., Siddiqui, I.A., Lee, S.U.J. and Bashir, A.K. (2017) Binary Pattern for Nested Cardinality Constraints for Software Product Line of IoT-Based Feature Models. Journal of Latex Class Files, 5, 3971-3980.
https://doi.org/10.1109/ACCESS.2017.2680470
[8]  Akbar, M.A., Sang, J., Khan, A.A., et al. (2016) Improving the Quality of Software Development Process by Introducing a New Methodology-AZ-Model. IEEE Access, 6, 4811-4823.
https://doi.org/10.1109/ACCESS.2017.2787981
[9]  Schwagerl, F., Buchmann, T. and Westfechtel, B. (2015) SuperMod—A Model-Driven Tool That Combines Version Control and Software Product Line Engineering. 10th International Joint Conference on Software Technologies, Vol. 2, Colmar, 20-22 July 2015, 1-14.
https://doi.org/10.5220/0005506600050018
[10]  Diaz, J., Pérez, J. and Garbajosa, J. (2015) A Model for Tracing Variability from Features to Product-Line Architectures: A Case Study in Smart Grids. Journal of Requirements Engineering, 20, 323-323.
https://doi.org/10.1007/s00766-014-0203-1
[11]  Tanhaei, M. and Habibi, J. (2016) A Feature Model Based Framework for Refactoring Software Product Line Architecture. Journal of Computer Science and Technology, 2, 951-986.
https://doi.org/10.1007/s11390-016-1674-y
[12]  Taentzer, G., Salay, R., Strüber, D. and Chechick, M. (2017) Transformations of Software Product Lines: A Generalizing Framework Based on Category Theory. ACM/IEEE 20th International Conference on Model Driven Engineering Languages and Systems, Austin, 17-22 September 2017, 101-111.
https://doi.org/10.1109/MODELS.2017.22
[13]  Shofi, I.M. and Fajar, A.N. (2017) Conceptual Approach for Gathering SPL Requirement from Goal Model. 5th International Conference on Cyber and IT Service Management, Denpasar, 8-10 August 2017, 1-5.
https://doi.org/10.1109/CITSM.2017.8089308
[14]  Oliveira, A.L.D., Braga, R.T., Masiero, P.C., Papadopoulos, Y., Habli, I. and Kelly, T. (2014) A Model-Based Approach to Support the Automatic Safety Analysis of Multiple Product Line Products. Brazilian Symposium on Computing Systems Engineering, Manaus, 3-7 November 2014, 7-12.
https://doi.org/10.1109/SBESC.2014.20
[15]  Nie, L., Zhang, L. and Geng, Z. (2012) Product Line Variability Modeling Based on Model Difference and Merge. IEEE 36th Annual Computer Software and Applications Conference Workshops, Izmir, 16-20 July 2012, 509-513.
https://doi.org/10.1109/COMPSACW.2012.95
[16]  Schwagerl, F. and Numao, M. (2014) A Product Domain Model Based Software Product Line Engineering for Web Application. 2nd International Symposium on Computing Networking, Shizuoka, 10-12 December 2014, 572-576.
[17]  Khan, F.Q. and Musa, S. (2017) A Study: Selection of Model Metamodel and SPL Tools for the Verification of Software Product Lines. International Journal of Information Technology, 9, 353-362.
https://doi.org/10.1007/s41870-017-0055-2
[18]  Guo, J., Wang, Y., Zhang, Z., Nummenmaa, J. and Niu, N. (2012) Model-Driven Approach to Developing Domain Functional Requirements in Software Product Lines. Journal of IET Software, 6, 391-401.
https://doi.org/10.1049/iet-sen.2010.0072
[19]  Gebizi, C.S. and Sözer, H. (2016) Model-Based Software Product Line Testing by Coupling Feature Models with Hierarchical Markov Chain Usage Models. IEEE International Conference on Software Quality, Reliability and Security Companion, Vienna, 1-3 August 2016.
https://doi.org/10.1109/QRS-C.2016.42
[20]  Font, J., Arcega, L., Haugen, O. and Cetina, C. (2018) Achieving Feature Location in Families of Models through the Use of Search-Based Software Engineering. Journal of Transactions on Evolutionary Computation, 22, 363-377.
https://doi.org/10.1109/TEVC.2017.2751100
[21]  Filho, J.B.F., Barais, O., Baudry, B. and Noir, J.L. (2012) Leveraging Variability Modeling for Multi-Dimensional Model-Driven Software Product Lines. 3rd International Workshop on Product Line Approaches in Software Engineering, Zurich, 4 June 2012, 5-8.
https://doi.org/10.1109/PLEASE.2012.6229774
[22]  Famelis, M., Rubin, J., Czarnecki, K., Salay, R. and Chechik, M. (2017) Software Product Lines with Design Choices: Reasoning about Variability and Design Uncertainty. 20th International Conference on Model Driven Engineering Languages and Systems, Austin, 17-22 September 2017, 93-100.
https://doi.org/10.1109/MODELS.2017.3
[23]  Fajar, A.N. and Shofi, I.M. (2016) Development of SPL Government System with Ontology Web Language. 4th International Conference on Cyber and IT Service Management, Bandung, 26-27 April 2016, 1-4.
https://doi.org/10.1109/CITSM.2016.7577587
[24]  Schwagerl, F., Buchmann, T., Uhrig, S. and Westfechtel, B. (2015) Towards the Integration of Model-Driven Engineering, Software Product Line Engineering, and Software Configuration Management. 3rd International Conference on Model-Driven Engineering and Software Development, Angers, 9-11 February 2015, 1-14.
https://doi.org/10.1007/978-3-319-27869-8_2
[25]  Assunção, W.K.G. (2015) Search-Based Migration of Model Variants to Software Product Line Architectures. IIEEE/ACM 37th IEEE International Conference on Software Engineering, Florence, 16-24 May 2015, Vol. 2, 895-898.
https://doi.org/10.1109/ICSE.2015.286
[26]  Dageforde, J.C., Reischmann, T., Majchrzak, T.A. and Ernsting, J. (2016) Generating App Product Lines in a Model-Driven Cross-Platform Development Approach. 49th Hawaii International Conference on System Sciences, Koloa, 5-8 January 2016, 5803-5812.
https://doi.org/10.1109/HICSS.2016.718
[27]  Tawhid, R. and Petriu, D.C. (2011) Product Model Derivation by Model Transformation in Software Product Lines. 14th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing Workshops, Newport Beach, 28-31 March 2011, 72-79.
[28]  Duran-Limon, H.A., Garcia-Rios, C.A., Castillo-Barrera, F.E. and Capilla, R. (2015) An Ontology-Based Product Architecture Derivation Approach. Journal of Transactions on Software Engineering, 41, 1153-1168.
https://doi.org/10.1109/TSE.2015.2449854
[29]  Derakhshanmanesh, M., Fox, J. and Ebert, J. (2014) Requirements-Driven Incremental Adoption of Variability Management Techniques and Tools: An Industrial Experience Report. Journal of Requirements Engineering, 19, 333-354.
https://doi.org/10.1007/s00766-013-0185-4
[30]  Cu, C. and Zheng, Y. (2016) Architecture-Centric Derivation of Product in a Software Product Line. IEEE/ACM 8th International Workshop on Modeling in Software Engineering, Austin, 14-22 May 2016, 27-33.
https://doi.org/10.1145/2896982.2896988
[31]  Asteasuain, F. and Vultaggio, L.P. (2016) Declarative and Flexible Modeling of Software Product Line Architectures. IEEE Latin America Transactions, 14, 885-892.
https://doi.org/10.1109/TLA.2016.7437236
[32]  Alferez, M., Bonifácio, R. and Teixeira, L. (2014) Evaluating Scenario-Based SPL Requirements Approaches: The Case for Modularity, Stability and Expressiveness. Journal of Requirements Engineering, 19, 355-376.
https://doi.org/10.1007/s00766-013-0184-5
[33]  Zhao, F., Nian, G., Jin, H., Yang, L.T. and Zhu, Y. (2017) A Hybrid eBusiness Software Metrics Framework for Decision Making in Cloud Computing Environment. IEEE Systems Journal, 11, 1049-1059.
https://doi.org/10.1109/JSYST.2015.2443049
[34]  Ntanos, E. and Dimitriou, G. (2018) A Model-Driven Software Engineering Workflow and Tool Architecture for Servitised Manufacturing. Journal of Information Systems and e-Business Management, 16, 683-720.
https://doi.org/10.1007/s10257-018-0371-5
[35]  Schmid, K., Kröher, C. and El-Sharkawy, S. (2018) Model-Based Product Line Development with Easy-Producer Using VIL and VTL. Proceedings of the 22nd International Systems and Software Product Line, Gothenburg, 10-14 September 2018, Vol. 1, 303.
https://doi.org/10.1145/3233027.3233058
[36]  Beuche, D. (2017) Using Feature Models to Manage Variability and Requirements Reuse. Proceedings of the 21st International Systems and Software Product Line, Sevilla, 25-29 September 2017, 249.
https://doi.org/10.1145/3106195.3106229
[37]  Tezermes, V. and Gomaa, H. (2015) A Software Product Line Approach for End User Development of Smart Spaces. Proceedings of the 5th International Workshop on Product Line Approaches in Software Engineering, Florence, 19 May 2015.
https://doi.org/10.1109/PLEASE.2015.14
[38]  Sampaio, G., Borba, P. and Teixeira, L. (2016) Partially Safe Evolution of Software Product Lines. Proceedings of the 20th International Systems and Software Product Line Conference, Beijing, 16-23 September 2016, 124-133.
https://doi.org/10.1145/2934466.2934482
[39]  Tan, L. and Lin, Y. (2015) An Aspect-Oriented Feature Modelling Framework for Software Product Line Engineering. Proceedings of the 24th Australasian Software Engineering Conference, Adelaide, 28 September-1 October 2015, 111-115.
https://doi.org/10.1145/2811681.2811703
[40]  Azzolini, R.P., Rubira, C.M.F., Tizzei, L.P., Gaia, F.N. and Montecchi, L. (2015) Evolving a Software Products Line for E-Commerce Systems: A Case Study. Proceedings of the 2015 European Conference on Software Architecture Workshops, Dubrovnik, 7-11 September 2015, Article No. 26.
https://doi.org/10.1145/2797433.2797460
[41]  Gaeta, J.P. and Czarnecki, K. (2015) Modeling Aerospace Systems Product Lines in SysML. Proceedings of the 19th International Conference on Software Product Line, Nashville, 20-24 July 2015, 293-302.
https://doi.org/10.1145/2791060.2791104
[42]  Schwagerl, F. and Westfechtel, B. (2016) SuperMod: Tool Support for Collaborative Filtered Model-Driven Software Product Line Engineering. Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering, Singapore, 3-7 September 2016, 822-827.
https://doi.org/10.1145/2970276.2970288
[43]  Lity, S., Nahrendorf, S., Thum, T., Seidl, C. and Schaefer, I. (2018) 175 % Modeling for Product-Line Evolution of Domain Artifacts. Proceedings of the 12th International Workshop on Variability Modelling of Software-Intensive Systems, Madrid, 7-9 February 2018, 27-34.
https://doi.org/10.1145/3168365.3168369
[44]  Campos, J.C., Fayollas, C., Goncalves, M., Martinie, C., Navarre, D., Palanque, P. and Pinto, M. (2017) A More Intelligent Test Case Generation Approach through Task Models Manipulation. Proceedings of the ACM on Human-Computer Interaction Archive, 1, Article No. 9.
https://doi.org/10.1145/3095811
[45]  Luthmann, L., Stephan, A., Bürdek, J. and Hau, M.L. (2017) Modeling and Testing Product Lines with Unbounded Parametric Real-Time Constraints. Proceedings of the 21st International Systems and Software Product Line, Sevilla, 25-29 September 2017, 104-113.
https://doi.org/10.1145/3106195.3106204
[46]  Bilic, C., Sundmark, D., Afzal, W., Wallin, P., Causevic, A. and Amlinger, C. (2018) Model-Based Product Line Engineering in an Industrial Automotive Context: An Exploratory Case Study. Proceedings of the 22nd International Systems and Software Product Line, Gothenburg, 10-14 September 2018, Vol. 2, 56-63.
https://doi.org/10.1145/3236405.3237200
[47]  Gregg, S.P., Scharadin, R. and Clements, P. (2015) The More You Do, the More You Save: The Superlinear Cost Avoidance Effect of Systems Product Line Engineering. Proceedings of the 19th International Conference on Software Product Line, Nashville, 20-24 July 2015, 303-310.
https://doi.org/10.1145/2791060.2791065
[48]  Lity, S., Kowal, M. and Schaefer, I. (2016) Higher-Order Delta Modeling for Software Product Line Evolution. Proceedings of the 7th International Workshop on Feature-Oriented Software Development, Amsterdam, 30 October 2016, 39-48.
https://doi.org/10.1145/3001867.3001872
[49]  Pereira, J.A., Matuszyk, P., Krieter, S., Spiliopoulou, M. and Saake, G. (2016) A Feature-Based Personalized Recommender System for Product-Line Configuration. ACM SIGPLAN Notices, 52, 120-131.
https://doi.org/10.1145/3093335.2993249
[50]  Kuhn, T., Kassin, K.I., Cazzola, W. and Abmann, U. (2018) Modular Feature-Oriented Graphical Editor Product Lines. Proceedings of the 22nd International Systems and Software Product Line, Gothenburg, 10-14 September 2018, Vol. 1, 76-86.
https://doi.org/10.1145/3233027.3233034
[51]  Anthonysamy, P. and Somé, S.S. (2008) Aspect-Oriented Use Case Modeling for Software Product Lines. Proceedings of the AOSD Workshop on Early Aspects, Brussels, 31 March 2008, Article No. 5.
https://doi.org/10.1145/1404946.1404951
[52]  Kang, S., Kim, J., Baek, H., Ahn, H., Jung, P. and Lee, J. (2017) Comparison of Software Product Line Test Derivation Methods from the Reuse Viewpoint. Proceedings of the 6th International Conference on Software and Computer Applications, Bangkok, 26-28 February 2017, 1-8.
https://doi.org/10.1145/3056662.3056663
[53]  Schwagerl, F. and Westfechtel, B. (2017) Perspectives on Combining Model-Driven Engineering, Software Product Line Engineering, and Version Control. Proceedings of the 11th International Workshop on Variability Modelling of Software-Intensive Systems, Eindhoven, 1-3 February 2017, 76-83.
https://doi.org/10.1145/3023956.3023969
[54]  Pietsch, C., Reuling, D., Kelter, U. and Kehrer, T. (2017) A Tool Environment for Quality Assurance of Delta-Oriented Model-Based SPLs. Proceedings of the 11th International Workshop on Variability Modelling of Software-Intensive Systems, Eindhoven, 1-3 February 2017, 84-91.
https://doi.org/10.1145/3023956.3023960
[55]  Acher, M., Lopez-Herrejon, R.E. and Rabiser, R. (2017) Teaching Software Product Lines: A Snapshot of Current Practices and Challenges. 22nd International Systems and Software Product Line Conference, Gothenburg, 10-14 September 2018, 249.
https://doi.org/10.1145/3233027.3236393
[56]  Bashroush, R., Garba, M., Rabiser, R., Groher, I. and Botterweck, G. (2017) CASE Tool Support for Variability Management in Software Product Lines. Journal of Computing Surveys, 50, 1-45.
https://doi.org/10.1145/3034827
[57]  Thum, T., Apel, S., Kästner, C., Schaefer, I. and Saake, G. (2014) A Classification and Survey of Analysis Strategies for Software Product Lines. Journal of Computing Surveys, 47, Article No. 6.
https://doi.org/10.1145/2580950
[58]  Behiati, R., Nejati, S. and Briand, L.C. (2014) Architecture-Level Configuration of Large-Scale Embedded Software Systems. Journal of Software Engineering and Methodology, 23, Article No. 25.
https://doi.org/10.1145/2581376
[59]  Zheng, Y., Cu, C. and Taylor, R.N. (2018) Maintaining Architecture-Implementation Conformance to Support Architecture Centrality: From Single System to Product Line Development. Journal of Software Engineering and Methodology, 27, Article No. 8.
https://doi.org/10.1145/3229048
[60]  Rincon, L., Giraldo, G., Mazo, R., Salinesi, C. and Diaz, D. (2015) Method to Identify Corrections of Defects on Product Line Models. Journal of Computer Science, 314, 61-81.
https://doi.org/10.1016/j.entcs.2015.05.005
[61]  Hause, M. and Korff, A. (2016) Decision-Driven Product Development. INCOSE International Symposium, 26, 2446-2461.
https://doi.org/10.1002/j.2334-5837.2016.00305.x
[62]  Sepulveda, S., Cravero, A. and Cachero, C. (2016) Requirements Modeling Languages for Software Product Lines: A Systematic Literature Review. Journal of Information and Software Technology, 69, 16-36.
https://doi.org/10.1016/j.infsof.2015.08.007
[63]  Sabouri, H. and Khosravi, R. (2014) Reducing the Verification Cost of Evolving Product Families Using Static Analysis Techniques. Journal of Science of Computer Programming, 83, 35-55.
https://doi.org/10.1016/j.scico.2013.06.009
[64]  Galindo, J.A., Dhungana, D., Rabiser, R., Benavides, D. and Grünbacher, P. (2015) Supporting Distributed Product Configuration by Integrating Heterogeneous Variability Modeling Approaches. Journal of Information and Software Technology, 62, 78-100.
https://doi.org/10.1016/j.infsof.2015.02.002
[65]  Camacho, C., Llana, L. and Núñez, A. (2016) Cost-Related Interface for Software Product Lines. Journal of Logical and Algebraic Methods in Programming, 85, 227-244.
https://doi.org/10.1016/j.jlamp.2015.09.009
[66]  Beohar, H., Varshosaz, M. and Mousavi, M.R. (2016) Basic Behavioral Models for Software Product Lines: Expressiveness and Testing Pre-Orders. Journal of Science of Computer Programming, 123, 42-60.
https://doi.org/10.1016/j.scico.2015.06.005
[67]  Bhushan, M., Goel, S. and Kumar, A. (2017) Improving Quality of Software Product Line by Analyzing Inconsistencies Models Using an Ontological Rule-Based Approach. Journal of Expert Systems, 35, e12256.
https://doi.org/10.1111/exsy.12256
[68]  Hause, M. and Hummell, J. (2015) Model-Based Product Line Engineering Enabling Product Families with Variants. IEEE Aerospace Conference, Big Sky, 7-14 March 2015, 25.
https://doi.org/10.1002/j.2334-5837.2015.00132.x
[69]  Pereira, J.A., Maciel, L. and Figueiredo, T.F.N.E. (2017) Heuristic and Exact Algorithms for Product Configuration in Software Product Lines. Proceedings of the 22nd International Systems and Software Product Line, Gothenburg, 10-14 September 2018, Vol. 1, 247-247.
https://doi.org/10.1145/3233027.3236395
[70]  Sharon, A. and Dori, D. (2017) Model-Based Project-Product Lifecycle Management and Gantt Chart Models: A Comparative Study. Systems Engineering, 20, 447-466.
https://doi.org/10.1002/sys.21407
[71]  Mannion, M. and Kaindl, H. (2014) Engineering Requirements in Product Lines. INCOSE International Symposium, Denver, 23-23 June 2011, Vol. 21, 3139-3215.
https://doi.org/10.1002/j.2334-5837.2011.tb01308.x

Full-Text

Contact Us

service@oalib.com

QQ:3279437679

WhatsApp +8615387084133