A novel approach for Software Architecture Product Line Engineering

被引:0
作者
Kerdoudi, Mohamed Lamine [1 ]
Ziadi, Tewfik [2 ]
Tibermacine, Chouki [3 ,4 ]
Sadou, Salah [5 ]
机构
[1] Univ Biskra, Comp Sci Dept, Biskra, Algeria
[2] Sorbonne Univ, CNRS, LIP6, F-75005 Paris, France
[3] CNRS, LIRMM, Paris, France
[4] Montpellier Univ, Montpellier, France
[5] Univ South Brittany, IRISA, Lorient, France
关键词
Software architecture; SPLE; Software Architecture Product Line; BUT4Reuse; Software architecture recovery; Component/service-based software; FEATURE LOCATION; FAMILIES; CODE;
D O I
10.1016/j.jss.2021.111191
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
A large software system exists in different forms, as different variants targeting different business needs and users. This kind of systems is provided as a set of "independent"products and not as a "single whole". Developers use ad-hoc mechanisms to manage variability. We defend a vision of software development where we consider an SPL architecture starting from which the architecture of each variant can be derived before its implementation. Indeed, each derived variant can have its own life. In this paper, we propose a novel approach for Software Architecture Product Line (SAPL) Engineering. It consists of, i) a generic process for recovering an SAPL model which is a product line of "software architectures"from large-sized variants. ii) a forward-engineering process that uses the recovered SAPL to derive new customized software architecture variants. The approach is firstly experimented on thirteen Eclipse variants to create a new SAPL. Then, an intensive evaluation is conducted using an existing benchmark which is also based on Eclipse IDE. Our results showed that we can accurately reconstruct such an SAPL and derive effectively pertinent variants. Our study provides insights that recovering SAPL and then deriving software architectures offers good documentation to understand the software before changing it. (C) 2021 Elsevier Inc. All rights reserved.
引用
收藏
页数:20
相关论文
共 59 条
[1]   From Object-Oriented Applications to Component-Oriented Applications via Component-Oriented Architecture [J].
Allier, Simon ;
Sadou, Salah ;
Sahraoui, Houari ;
Fleurquin, Regis .
2011 9TH WORKING IEEE/IFIP CONFERENCE ON SOFTWARE ARCHITECTURE (WICSA), 2011, :214-223
[2]  
Allier S, 2010, LECT NOTES COMPUT SC, V6092, P216, DOI 10.1007/978-3-642-13238-4_13
[3]  
Apel S., 2013, Feature- Oriented Software Product Lines, DOI DOI 10.1007/978-3-642-37521-7
[4]   Automatic extraction of product line architecture and feature models from UML class diagram variants [J].
Assuncao, Wesley K. G. ;
Vergilio, Silvia R. ;
Lopez-Herrejon, Roberto E. .
INFORMATION AND SOFTWARE TECHNOLOGY, 2020, 117
[5]   Reengineering legacy applications into software product lines: a systematic mapping [J].
Assuncao, Wesley K. G. ;
Lopez-Herrejon, Roberto E. ;
Linsbauer, Lukas ;
Vergilio, Silvia R. ;
Egyed, Alexander .
EMPIRICAL SOFTWARE ENGINEERING, 2017, 22 (06) :2972-3016
[6]  
Assuno KG, 2014, 18 INT SOFTW PROD LI, V2, P5259, DOI [10.1145/2647908.2655967, DOI 10.1145/2647908.2655967]
[7]   On the influence of model fragment properties on a machine learning-based approach for feature location [J].
Ballarin, Manuel ;
Marcen, Ana C. ;
Pelechano, Vicente ;
Cetina, Carlos .
INFORMATION AND SOFTWARE TECHNOLOGY, 2021, 129
[8]  
Bass L., 1997, SOFTWARE ARCHITECTUR
[9]   Automated analysis of feature models 20 years later: A literature review [J].
Benavides, David ;
Segura, Sergio ;
Ruiz-Cortes, Antonio .
INFORMATION SYSTEMS, 2010, 35 (06) :615-636
[10]   Co-evolution of product families and assembly systems [J].
Bryan, A. ;
Ko, J. ;
Hu, S. J. ;
Koren, Y. .
CIRP ANNALS-MANUFACTURING TECHNOLOGY, 2007, 56 (01) :41-44