TY - JOUR
T1 - Mixing of Join Point Interfaces and Feature-Oriented Programming for Modular Software Product Line
AU - Vidal, Cristian
AU - Benavides, David
AU - Leger, Paul
AU - Galindo, José Angel
AU - Fukuda, Hiroaki
N1 - Publisher Copyright:
© 2016. ICST
PY - 2016
Y1 - 2016
N2 - Feature-oriented programming (FOP) and aspect-orientedprogramming (AOP) focus on to modularize incrementalclasses behavior and crosscutting concerns, respectively, forsoftware evolution. So, these software development approachesrepresent advanced paradigms for a modular software productlines production. Thereby, a FOP and AOP symbiosiswould permit reaching pros and cons of both approaches.FOP permits a modular refinement of classes collaborationfor software product lines (SPL), an adequate approach torepresent named heterogeneous crosscutting concerns. FOPworks on changes of different functionality pieces for whichto define join points is not a simple task. Similarly, AOPstructurally modularizes in a refined manner homogeneouscrosscutting concerns. Since traditional AOP like AspectJpresents implicit dependencies and strong coupling betweenclasses and aspects, and the Join Point Interface JPI approachsolves these classic AOP issues, this article presentsJPI Feature Modules for the FOP + JPI SPL componentsmodularization, i.e., collaboration of classes, aspects, andjoin point interfaces along with their evolution, for a SPLtransparent implementation in a FOP + JPI context. Inaddition, this article shows JPI Feature Modules of a casestudy to highlight mutual benefits of FOP and JPI approachesfor a modular SPL software conception
AB - Feature-oriented programming (FOP) and aspect-orientedprogramming (AOP) focus on to modularize incrementalclasses behavior and crosscutting concerns, respectively, forsoftware evolution. So, these software development approachesrepresent advanced paradigms for a modular software productlines production. Thereby, a FOP and AOP symbiosiswould permit reaching pros and cons of both approaches.FOP permits a modular refinement of classes collaborationfor software product lines (SPL), an adequate approach torepresent named heterogeneous crosscutting concerns. FOPworks on changes of different functionality pieces for whichto define join points is not a simple task. Similarly, AOPstructurally modularizes in a refined manner homogeneouscrosscutting concerns. Since traditional AOP like AspectJpresents implicit dependencies and strong coupling betweenclasses and aspects, and the Join Point Interface JPI approachsolves these classic AOP issues, this article presentsJPI Feature Modules for the FOP + JPI SPL componentsmodularization, i.e., collaboration of classes, aspects, andjoin point interfaces along with their evolution, for a SPLtransparent implementation in a FOP + JPI context. Inaddition, this article shows JPI Feature Modules of a casestudy to highlight mutual benefits of FOP and JPI approachesfor a modular SPL software conception
KW - Classic aop
KW - Fop
KW - Jpi
KW - Jpi-fm
KW - Modular software
KW - Spl
UR - http://www.scopus.com/inward/record.url?scp=85122847185&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85122847185&partnerID=8YFLogxK
U2 - 10.4108/eai.3-12-2015.2262534
DO - 10.4108/eai.3-12-2015.2262534
M3 - Article
AN - SCOPUS:85122847185
SN - 2032-9407
VL - 3
JO - EAI Endorsed Transactions on Scalable Information Systems
JF - EAI Endorsed Transactions on Scalable Information Systems
IS - 10
ER -