SlideShare a Scribd company logo
1 of 34
Empirically Based Evolution of a
Variability Management Approach
at UML Class Level
Anderson Marcolino, M.Sc.
State University of Maringá (DIN-UEM) – Brazil
Edson OliveiraJr, Ph.D.
edson@din.uem.br
State University of Maringá (DIN-UEM) - Brazil
Itana Gimenes, Ph.D.
State University of Maringá (DIN-UEM) – Brazil
Ellen Barbosa, Ph.D.
University of São Paulo (ICMC-USP) – Brazil
2
Agenda
 Introduction
 Background
 SPL and Variability Management
 The Gomaa Method
 The SMarty Approach
 SMarty Evolution based on Empirical Study
 Conclusion and Future Works
3
Introduction
 Software Product Line (SPL) is a consolidated reuse technique,
in which several products share similar features and
variabilities
 allowing mass customization for specific market needs
 Variability represents how such products differ one another,
thus
 Variability Management (VM) is a key issue for the success of SPLs
 Literature presents several well-known approaches for VM,
especially object-oriented and UML-based.
 However, their effectiveness was not experimentally analyzed, which can
make technology transfer feasible
4
Introduction
 The SPL approach encompasses three main
activities:
 Domain Engineering
 Application Engineering
 Management (Organizational and Technical)
 Variability management is one of the most important
SPL management activities
5
Introduction
 Four main concepts are taken into consideration
for VM:
 Variability, Variation Point and Variants
 PLUS and SMarty are two well-known
approaches for VM in UML-based SPLs
 However, PLUS has been taken as a basis for several UML-
based SPL projects
6
Objectives of this work
1. Comparing the effectiveness of SMarty and
PLUS with regard to the identification and
representation of variability in UML classes
2. Allowing the SMarty evolution in order to
increase its effectiveness against PLUS
7
Background - PLUS
 The PLUS method
 It encompasses a variability management activity with regard to
use cases and classes, using stereotypes with no guidelines to
apply them / Domain experts must use their knowledge for VM /
Variant constraints are not available.
Use Case?
<<kernel>> Used to represent mandatory elements. Yes.
<<optional>>
Used to represent optional elements. It represents an
element that can be selected or not in a specific product. Yes.
<<alternative>>
Used to represent alternative elements, mutually exclusive
elements. Yes.
Stereotype Description
Does
Use
cases
only!!!
Use
cases
only!!!
8
Background - PLUS
 An example of the PLUS variability representation for
classes:
types
<<kernel>>
SortingElement
<<optional>>
NumericElement
<<optional>>
StringElement
-sortingElements
1..*
9
Background - SMarty
 Stereotype-based Management of Variability
(SMarty) approach
 It is composed of:
 an UML 2 profile, the SMartyProfile with stereotypes
for VM in use case, class, component, sequence, and
activity diagrams; and
 a process, the SMartyProcess, with guidelines to
support variability identification and representation
10
Background - SMarty
 SMartyProfile comprises the following stereotypes, which
can be applied to UML models:
 <<variability>> represents the concept of PL variability;
 <<variant>> this abstract stereotype is specialized in four other non-
abstract stereotypes which are: <<mandatory>>, <<optional>>,
<<alternative_OR>>, and <<alternative_XOR>>;
 <<mutex>> is a mutually exclusive relationship between two variants;
and
 <<requires>> is a relationship between two variants in which the
selected variant requires the presence of another specific variant.
11
Background - SMarty
 An example of the
SMarty variability
representation for
classes:
types
<<madatory>>
<<variationpoint>>
SortingElement
<<alternative_OR>>
NumericElement
<<alternative_OR>>
StringElement
-sortingElements
<<comment>>
{allow sAddingVar = false,
bindingTime = DESIGN_TIME,
maxSelection = 2,
minSelection = 1,
name = "sorting element",
variants = "NumericElement, StringElement"}
1..*
12
The Experimental Study
 Aim (Basili’s GQM template)
 Compare PLUS and SMarty, for the purpose of characterize
the most effectiveness, with respect to the capability of
identification and representation of variabilities in Software
Product Line class models, from the point of view of software
product line architects, in the context of master and Ph.D.
students of the Software Engineering area from the University of
São Paulo (ICMC/USP) and Federal University of São Carlos
(UFSCar).
13
The Experimental Study
 Planning
 Pilot Project
 Selection of Subjects
 Training
14
The Experimental Study
 Planning
 Hypotheses Formulation
 H0 : µ (effectiveness(X)) = µ (effectiveness(Y));
 H1 : µ (effectiveness(X)) < µ (effectiveness(Y)); and
 H2 : µ (effectiveness(X)) > µ (effectiveness(Y)).
 Where X = PLUS and Y = SMarty.
15
The Experimental Study
 Planning
 Dependent Variables: the effectiveness calculated for each
variability management approach (X and Y) as follows:
16
The Experimental Study
 Planning
 Independent Variables:
 the variability management approach, a factor with
two treatments (X and Y); and
 the SPL, a factor with two treatments (E-commerce
and AGM SPLs).
17
The Experimental Study
Execution
 Instrumentation
 Participation Procedure
18
The Experimental Study
 Effectiveness of the Approaches
 Collected Data Normality Test: the Shapiro-Wilk normality test
was applied to the E-commerce and AGM samples providing the
following results:
 sample X was considered non-normal and
sample Y was considered normal.
19
The Experimental Study
Box Plot of Effectiveness (Class)
Spreadsheet1 10v*12c
Median; Box: 25%-75%; Whisker: Non-Outlier Range
Median
25%-75%
Non-Outlier Range
Outliers
Extremes
Effectiveness Y Approach.
Effectiveness X Approach.
-5
0
5
10
15
20
25
30
20
The Experimental Study
 Effectiveness of the Approaches
 Mann-Whitney-Wilcoxon for SampleX and SampleY:
 Detailed explanation on samples is in the paper
 There is evidence that the X approach (PLUS) is more effective in
identifying and representing variability in class models than the Y
approach (SMarty)
 This result corroborates to reject the null hypothesis (H0)
of this study: PLUS is more effective than SMarty for
SPLs class models and subjects taken into account.
21
The Experimental Study
 Threats to Validity
 Conclusion Validity
 Sample size is a major concern, which must be increased in
prospective studies
 Random capacity was not applied to subjects selection, thus
generalization of results could not be inferred
 Construct Validity
 Independent variable variability modeling approach was
guaranteed by the pilot project undertaken
22
The Experimental Study
 Threats to Validity
 Internal Validity
 Differences among subjects – variations on skills were reduced by
performing training session and tasks in the same order
 Fatigue effects – on average the experiment took 80 minutes, thus
fatigue was not considered a problem for the study
 Influence among subjects – could not be really controlled. They took
the experiment under the supervision of a human observer.
23
The Experimental Study
 Threats to Validity
 External Validity
 Instrumentation – failing to use real class models, as the e-commerce
and AGM are not commercial SPLs. More experiments must be
carried out with real SPLs.
 Subjects – we could take advantages of the benefits of taking into
account students for performing experiments as pointed out by
Carver et al. (2003)
24
Empirical Evolution of SMarty
 Improvements for the SMarty approach based on the
feedback of the subjects:
 E-commerce SPL
 Subjects reported difficulties on the application of SMarty to the e-
commerce SPL class model as it has no elements of class modeling,
such as, inheritance, aggregation, and generalization  E-
commerce was analyzed to improve SMarty
 Training session
 Subjects indicated that they need more time for training and
application of SMarty
25
Empirical Evolution of SMarty
 Improvements for the SMarty approach based on the
feedback of the subjects:
 Amount of stereotypes
 Subjects questioned the difference between PLUS and SMarty as
the later has several more stereotypes
 Arrangement of the SPL models:
 E-commerce class models are mode complex than AGM
 E-commerce models were the first models given to the subjects
26
Empirical Evolution of SMarty
 Based on such subjects feedback, the following
improvements were made:
 New guidelines were added to SMarty, encompassing the level of
abstraction and elements of the e-commerce class models
 CL2. Class models elements, related with associations in which their
attributes have aggregationKind as none, or, do not represent
aggregation or composition, suggest mandatory or optional variants.
 CL2.1. For the identification of possible optional variants classes
related through associations where the multiplicity in one of the ends
of an association, to each object class found at the opposite end
match * (zero or more) or 0..n where n is any integer different from
zero; suggest an optional class
27
Empirical Evolution of SMarty
 Based on such subjects feedback, the following
improvements were made:
 We realized that with a few less stereotypes, PLUS is easier to
apply. However, such an “easibility” might jeopardize the
generation of specific products as we can observe ambiguity in
PLUS class models
28
Revisiting objectives of this work…
1. Comparing the effectiveness of SMarty and PLUS with
regard to the identification and representation of
variability in UML classes
 PLUS is more effective
1. Allowing the SMarty evolution in order to increase its
effectiveness against PLUS
 New guidelines for class models  need a new experiment
 Reduce stereotypes or avoid ambiguity during specific products
generation?  New experiment is being carried out
29
Conclusion
 Industry needs that the scientific community tests existing and new
technologies, such as SMarty, identifying their effectiveness to make
technology transfer easier and reliable.
 The experimental study presented in this paper demonstrates the
ability to use variability management approaches. Their
effectiveness were analyzed by modeling variability in class models
of two SPLs.
 Empirical based improvements could be made to SMarty in order to
incorporate support for different class model elements by means of
new guidelines
30
Conclusion
 Shapiro-Wilk normality test was applied to both samples
 Mann-Whitney-Wilcoxon test analyzed the effectiveness of PLUS
and SMarty
 Obtained results provide evidence that the PLUS is more effective
than SMarty for modeling variability in UML class models, taking into
account the E-commerce and the AGM SPLs for this study.
31
Future Works
 New experimental studies and replications must be planned and
conducted to make it possible to reduce the threats, increasing the
effectiveness of SMarty towards generalizing the results.
 As new experiments, we are:
 planning a new experiment for characterize the improved version of
SMarty effective against PLUS; and
 planning an experiment to analyze the effectiveness of PLUS and
SMarty and their impact on the generation of specific products.
32
Acknowledgements
The authors would like to thank
CAPES (a Brazilian Funding Agency)
for supporting this work!!!
33
Questions? Contributions?
 If you prefer, contact me via e-mail:
 edson@din.uem.br
34
Tack! ! !
Thank you ! ! !

More Related Content

Viewers also liked

Um Estudo sobre Gerenciamento de Variabilidade em Linhas de Processo de Software
Um Estudo sobre Gerenciamento de Variabilidade em Linhas de Processo de SoftwareUm Estudo sobre Gerenciamento de Variabilidade em Linhas de Processo de Software
Um Estudo sobre Gerenciamento de Variabilidade em Linhas de Processo de SoftwareEdson Oliveira Junior
 
Uma Experiencia na Adocao do Java EE 6 Web Profole
Uma Experiencia na Adocao do Java EE 6 Web ProfoleUma Experiencia na Adocao do Java EE 6 Web Profole
Uma Experiencia na Adocao do Java EE 6 Web ProfoleEdson Oliveira Junior
 
UM ESTUDO SOBRE GERENCIAMENTO DE VARIABLIDADES EM LINHAS DE PROCESSO DE SOFTWARE
UM ESTUDO SOBRE GERENCIAMENTO DE VARIABLIDADES EM LINHAS DE PROCESSO DE SOFTWAREUM ESTUDO SOBRE GERENCIAMENTO DE VARIABLIDADES EM LINHAS DE PROCESSO DE SOFTWARE
UM ESTUDO SOBRE GERENCIAMENTO DE VARIABLIDADES EM LINHAS DE PROCESSO DE SOFTWAREEdson Oliveira Junior
 
Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Mo...
Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Mo...Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Mo...
Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Mo...Edson Oliveira Junior
 
Extensão da Abordagem SMarty de Gerenciamento de Variabilidade para Sistemas ...
Extensão da Abordagem SMarty de Gerenciamento de Variabilidade para Sistemas ...Extensão da Abordagem SMarty de Gerenciamento de Variabilidade para Sistemas ...
Extensão da Abordagem SMarty de Gerenciamento de Variabilidade para Sistemas ...Edson Oliveira Junior
 
Desenvolvimento do Módulo de Planejamento do Ambiente Experimental SystEM-Env...
Desenvolvimento do Módulo de Planejamento do Ambiente Experimental SystEM-Env...Desenvolvimento do Módulo de Planejamento do Ambiente Experimental SystEM-Env...
Desenvolvimento do Módulo de Planejamento do Ambiente Experimental SystEM-Env...Edson Oliveira Junior
 
Revisão Sistemática e Bases de Pesquisa
Revisão Sistemática e Bases de PesquisaRevisão Sistemática e Bases de Pesquisa
Revisão Sistemática e Bases de PesquisaEdson Oliveira Junior
 
Um Protótipo Web do Módulo de Planejamento de Avaliações de Linha de Produto ...
Um Protótipo Web do Módulo de Planejamento de Avaliações de Linha de Produto ...Um Protótipo Web do Módulo de Planejamento de Avaliações de Linha de Produto ...
Um Protótipo Web do Módulo de Planejamento de Avaliações de Linha de Produto ...Edson Oliveira Junior
 

Viewers also liked (9)

Um Estudo sobre Gerenciamento de Variabilidade em Linhas de Processo de Software
Um Estudo sobre Gerenciamento de Variabilidade em Linhas de Processo de SoftwareUm Estudo sobre Gerenciamento de Variabilidade em Linhas de Processo de Software
Um Estudo sobre Gerenciamento de Variabilidade em Linhas de Processo de Software
 
Uma Experiencia na Adocao do Java EE 6 Web Profole
Uma Experiencia na Adocao do Java EE 6 Web ProfoleUma Experiencia na Adocao do Java EE 6 Web Profole
Uma Experiencia na Adocao do Java EE 6 Web Profole
 
UM ESTUDO SOBRE GERENCIAMENTO DE VARIABLIDADES EM LINHAS DE PROCESSO DE SOFTWARE
UM ESTUDO SOBRE GERENCIAMENTO DE VARIABLIDADES EM LINHAS DE PROCESSO DE SOFTWAREUM ESTUDO SOBRE GERENCIAMENTO DE VARIABLIDADES EM LINHAS DE PROCESSO DE SOFTWARE
UM ESTUDO SOBRE GERENCIAMENTO DE VARIABLIDADES EM LINHAS DE PROCESSO DE SOFTWARE
 
Apresentação FITEM 2012
Apresentação FITEM 2012Apresentação FITEM 2012
Apresentação FITEM 2012
 
Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Mo...
Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Mo...Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Mo...
Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Mo...
 
Extensão da Abordagem SMarty de Gerenciamento de Variabilidade para Sistemas ...
Extensão da Abordagem SMarty de Gerenciamento de Variabilidade para Sistemas ...Extensão da Abordagem SMarty de Gerenciamento de Variabilidade para Sistemas ...
Extensão da Abordagem SMarty de Gerenciamento de Variabilidade para Sistemas ...
 
Desenvolvimento do Módulo de Planejamento do Ambiente Experimental SystEM-Env...
Desenvolvimento do Módulo de Planejamento do Ambiente Experimental SystEM-Env...Desenvolvimento do Módulo de Planejamento do Ambiente Experimental SystEM-Env...
Desenvolvimento do Módulo de Planejamento do Ambiente Experimental SystEM-Env...
 
Revisão Sistemática e Bases de Pesquisa
Revisão Sistemática e Bases de PesquisaRevisão Sistemática e Bases de Pesquisa
Revisão Sistemática e Bases de Pesquisa
 
Um Protótipo Web do Módulo de Planejamento de Avaliações de Linha de Produto ...
Um Protótipo Web do Módulo de Planejamento de Avaliações de Linha de Produto ...Um Protótipo Web do Módulo de Planejamento de Avaliações de Linha de Produto ...
Um Protótipo Web do Módulo de Planejamento de Avaliações de Linha de Produto ...
 

Similar to Empirically Based Evolution of Variability Management Approach for UML Class Models

internship project1 report
internship project1 reportinternship project1 report
internship project1 reportsheyk98
 
Understanding the Applicability of Linear & Non-Linear Models Using a Case-Ba...
Understanding the Applicability of Linear & Non-Linear Models Using a Case-Ba...Understanding the Applicability of Linear & Non-Linear Models Using a Case-Ba...
Understanding the Applicability of Linear & Non-Linear Models Using a Case-Ba...ijaia
 
Modeling & simulation in projects
Modeling & simulation in projectsModeling & simulation in projects
Modeling & simulation in projectsanki009
 
LNCS 5050 - Bilevel Optimization and Machine Learning
LNCS 5050 - Bilevel Optimization and Machine LearningLNCS 5050 - Bilevel Optimization and Machine Learning
LNCS 5050 - Bilevel Optimization and Machine Learningbutest
 
Structural equation-models-introduction-kimmo-vehkalahti-2013
Structural equation-models-introduction-kimmo-vehkalahti-2013Structural equation-models-introduction-kimmo-vehkalahti-2013
Structural equation-models-introduction-kimmo-vehkalahti-2013Kimmo Vehkalahti
 
IRJET- Boosting Response Aware Model-Based Collaborative Filtering
IRJET- Boosting Response Aware Model-Based Collaborative FilteringIRJET- Boosting Response Aware Model-Based Collaborative Filtering
IRJET- Boosting Response Aware Model-Based Collaborative FilteringIRJET Journal
 
Operation research and its application
Operation research and its applicationOperation research and its application
Operation research and its applicationpriya sinha
 
EXTRACTING THE MINIMIZED TEST SUITE FOR REVISED SIMULINK/STATEFLOW MODEL
EXTRACTING THE MINIMIZED TEST SUITE FOR REVISED SIMULINK/STATEFLOW MODELEXTRACTING THE MINIMIZED TEST SUITE FOR REVISED SIMULINK/STATEFLOW MODEL
EXTRACTING THE MINIMIZED TEST SUITE FOR REVISED SIMULINK/STATEFLOW MODELijaia
 
Bio-Inspired Requirements Variability Modeling with use Case
Bio-Inspired Requirements Variability Modeling with use Case Bio-Inspired Requirements Variability Modeling with use Case
Bio-Inspired Requirements Variability Modeling with use Case ijseajournal
 
Introduction to modeling_and_simulation
Introduction to modeling_and_simulationIntroduction to modeling_and_simulation
Introduction to modeling_and_simulationAysun Duran
 
Introduction to modeling_and_simulation
Introduction to modeling_and_simulationIntroduction to modeling_and_simulation
Introduction to modeling_and_simulationmukmin91
 
Calibration and Validation of Micro-Simulation Models
Calibration and Validation of Micro-Simulation ModelsCalibration and Validation of Micro-Simulation Models
Calibration and Validation of Micro-Simulation ModelsWSP
 
Conceptualization of a Domain Specific Simulator for Requirements Prioritization
Conceptualization of a Domain Specific Simulator for Requirements PrioritizationConceptualization of a Domain Specific Simulator for Requirements Prioritization
Conceptualization of a Domain Specific Simulator for Requirements Prioritizationresearchinventy
 
BIO-INSPIRED REQUIREMENTS VARIABILITY MODELING WITH USE CASE
BIO-INSPIRED REQUIREMENTS VARIABILITY MODELING WITH USE CASE BIO-INSPIRED REQUIREMENTS VARIABILITY MODELING WITH USE CASE
BIO-INSPIRED REQUIREMENTS VARIABILITY MODELING WITH USE CASE mathsjournal
 
20121121101127simulation azmi
20121121101127simulation azmi20121121101127simulation azmi
20121121101127simulation azmiAhmad Nur Faiz
 
Tech meetup Data Driven - Codemotion
Tech meetup Data Driven - Codemotion Tech meetup Data Driven - Codemotion
Tech meetup Data Driven - Codemotion antimo musone
 
Operation research and its application
Operation research and its applicationOperation research and its application
Operation research and its applicationpriya sinha
 
Operations Research Digital Material.pdf
Operations Research Digital Material.pdfOperations Research Digital Material.pdf
Operations Research Digital Material.pdfTANVEERSINGHSOLANKI
 

Similar to Empirically Based Evolution of Variability Management Approach for UML Class Models (20)

internship project1 report
internship project1 reportinternship project1 report
internship project1 report
 
Understanding the Applicability of Linear & Non-Linear Models Using a Case-Ba...
Understanding the Applicability of Linear & Non-Linear Models Using a Case-Ba...Understanding the Applicability of Linear & Non-Linear Models Using a Case-Ba...
Understanding the Applicability of Linear & Non-Linear Models Using a Case-Ba...
 
Modeling & simulation in projects
Modeling & simulation in projectsModeling & simulation in projects
Modeling & simulation in projects
 
LNCS 5050 - Bilevel Optimization and Machine Learning
LNCS 5050 - Bilevel Optimization and Machine LearningLNCS 5050 - Bilevel Optimization and Machine Learning
LNCS 5050 - Bilevel Optimization and Machine Learning
 
Structural equation-models-introduction-kimmo-vehkalahti-2013
Structural equation-models-introduction-kimmo-vehkalahti-2013Structural equation-models-introduction-kimmo-vehkalahti-2013
Structural equation-models-introduction-kimmo-vehkalahti-2013
 
IRJET- Boosting Response Aware Model-Based Collaborative Filtering
IRJET- Boosting Response Aware Model-Based Collaborative FilteringIRJET- Boosting Response Aware Model-Based Collaborative Filtering
IRJET- Boosting Response Aware Model-Based Collaborative Filtering
 
Operation research and its application
Operation research and its applicationOperation research and its application
Operation research and its application
 
EXTRACTING THE MINIMIZED TEST SUITE FOR REVISED SIMULINK/STATEFLOW MODEL
EXTRACTING THE MINIMIZED TEST SUITE FOR REVISED SIMULINK/STATEFLOW MODELEXTRACTING THE MINIMIZED TEST SUITE FOR REVISED SIMULINK/STATEFLOW MODEL
EXTRACTING THE MINIMIZED TEST SUITE FOR REVISED SIMULINK/STATEFLOW MODEL
 
Bio-Inspired Requirements Variability Modeling with use Case
Bio-Inspired Requirements Variability Modeling with use Case Bio-Inspired Requirements Variability Modeling with use Case
Bio-Inspired Requirements Variability Modeling with use Case
 
Introduction to modeling_and_simulation
Introduction to modeling_and_simulationIntroduction to modeling_and_simulation
Introduction to modeling_and_simulation
 
Introduction to modeling_and_simulation
Introduction to modeling_and_simulationIntroduction to modeling_and_simulation
Introduction to modeling_and_simulation
 
Calibration and Validation of Micro-Simulation Models
Calibration and Validation of Micro-Simulation ModelsCalibration and Validation of Micro-Simulation Models
Calibration and Validation of Micro-Simulation Models
 
Conceptualization of a Domain Specific Simulator for Requirements Prioritization
Conceptualization of a Domain Specific Simulator for Requirements PrioritizationConceptualization of a Domain Specific Simulator for Requirements Prioritization
Conceptualization of a Domain Specific Simulator for Requirements Prioritization
 
BIO-INSPIRED REQUIREMENTS VARIABILITY MODELING WITH USE CASE
BIO-INSPIRED REQUIREMENTS VARIABILITY MODELING WITH USE CASE BIO-INSPIRED REQUIREMENTS VARIABILITY MODELING WITH USE CASE
BIO-INSPIRED REQUIREMENTS VARIABILITY MODELING WITH USE CASE
 
Simulation Powerpoint- Lecture Notes
Simulation Powerpoint- Lecture NotesSimulation Powerpoint- Lecture Notes
Simulation Powerpoint- Lecture Notes
 
20121121101127simulation azmi
20121121101127simulation azmi20121121101127simulation azmi
20121121101127simulation azmi
 
Lecture 1.pptx
Lecture 1.pptxLecture 1.pptx
Lecture 1.pptx
 
Tech meetup Data Driven - Codemotion
Tech meetup Data Driven - Codemotion Tech meetup Data Driven - Codemotion
Tech meetup Data Driven - Codemotion
 
Operation research and its application
Operation research and its applicationOperation research and its application
Operation research and its application
 
Operations Research Digital Material.pdf
Operations Research Digital Material.pdfOperations Research Digital Material.pdf
Operations Research Digital Material.pdf
 

Recently uploaded

Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxCarlos105
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPCeline George
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...Nguyen Thanh Tu Collection
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...JhezDiaz1
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4JOYLYNSAMANIEGO
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parentsnavabharathschool99
 
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...JojoEDelaCruz
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxAshokKarra1
 
Food processing presentation for bsc agriculture hons
Food processing presentation for bsc agriculture honsFood processing presentation for bsc agriculture hons
Food processing presentation for bsc agriculture honsManeerUddin
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfJemuel Francisco
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPCeline George
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 
Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)cama23
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for BeginnersSabitha Banu
 

Recently uploaded (20)

Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERP
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
 
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptxYOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parents
 
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
ENG 5 Q4 WEEk 1 DAY 1 Restate sentences heard in one’s own words. Use appropr...
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptx
 
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptxLEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
 
Food processing presentation for bsc agriculture hons
Food processing presentation for bsc agriculture honsFood processing presentation for bsc agriculture hons
Food processing presentation for bsc agriculture hons
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERP
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 
Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for Beginners
 

Empirically Based Evolution of Variability Management Approach for UML Class Models

  • 1. Empirically Based Evolution of a Variability Management Approach at UML Class Level Anderson Marcolino, M.Sc. State University of Maringá (DIN-UEM) – Brazil Edson OliveiraJr, Ph.D. edson@din.uem.br State University of Maringá (DIN-UEM) - Brazil Itana Gimenes, Ph.D. State University of Maringá (DIN-UEM) – Brazil Ellen Barbosa, Ph.D. University of São Paulo (ICMC-USP) – Brazil
  • 2. 2 Agenda  Introduction  Background  SPL and Variability Management  The Gomaa Method  The SMarty Approach  SMarty Evolution based on Empirical Study  Conclusion and Future Works
  • 3. 3 Introduction  Software Product Line (SPL) is a consolidated reuse technique, in which several products share similar features and variabilities  allowing mass customization for specific market needs  Variability represents how such products differ one another, thus  Variability Management (VM) is a key issue for the success of SPLs  Literature presents several well-known approaches for VM, especially object-oriented and UML-based.  However, their effectiveness was not experimentally analyzed, which can make technology transfer feasible
  • 4. 4 Introduction  The SPL approach encompasses three main activities:  Domain Engineering  Application Engineering  Management (Organizational and Technical)  Variability management is one of the most important SPL management activities
  • 5. 5 Introduction  Four main concepts are taken into consideration for VM:  Variability, Variation Point and Variants  PLUS and SMarty are two well-known approaches for VM in UML-based SPLs  However, PLUS has been taken as a basis for several UML- based SPL projects
  • 6. 6 Objectives of this work 1. Comparing the effectiveness of SMarty and PLUS with regard to the identification and representation of variability in UML classes 2. Allowing the SMarty evolution in order to increase its effectiveness against PLUS
  • 7. 7 Background - PLUS  The PLUS method  It encompasses a variability management activity with regard to use cases and classes, using stereotypes with no guidelines to apply them / Domain experts must use their knowledge for VM / Variant constraints are not available. Use Case? <<kernel>> Used to represent mandatory elements. Yes. <<optional>> Used to represent optional elements. It represents an element that can be selected or not in a specific product. Yes. <<alternative>> Used to represent alternative elements, mutually exclusive elements. Yes. Stereotype Description Does Use cases only!!! Use cases only!!!
  • 8. 8 Background - PLUS  An example of the PLUS variability representation for classes: types <<kernel>> SortingElement <<optional>> NumericElement <<optional>> StringElement -sortingElements 1..*
  • 9. 9 Background - SMarty  Stereotype-based Management of Variability (SMarty) approach  It is composed of:  an UML 2 profile, the SMartyProfile with stereotypes for VM in use case, class, component, sequence, and activity diagrams; and  a process, the SMartyProcess, with guidelines to support variability identification and representation
  • 10. 10 Background - SMarty  SMartyProfile comprises the following stereotypes, which can be applied to UML models:  <<variability>> represents the concept of PL variability;  <<variant>> this abstract stereotype is specialized in four other non- abstract stereotypes which are: <<mandatory>>, <<optional>>, <<alternative_OR>>, and <<alternative_XOR>>;  <<mutex>> is a mutually exclusive relationship between two variants; and  <<requires>> is a relationship between two variants in which the selected variant requires the presence of another specific variant.
  • 11. 11 Background - SMarty  An example of the SMarty variability representation for classes: types <<madatory>> <<variationpoint>> SortingElement <<alternative_OR>> NumericElement <<alternative_OR>> StringElement -sortingElements <<comment>> {allow sAddingVar = false, bindingTime = DESIGN_TIME, maxSelection = 2, minSelection = 1, name = "sorting element", variants = "NumericElement, StringElement"} 1..*
  • 12. 12 The Experimental Study  Aim (Basili’s GQM template)  Compare PLUS and SMarty, for the purpose of characterize the most effectiveness, with respect to the capability of identification and representation of variabilities in Software Product Line class models, from the point of view of software product line architects, in the context of master and Ph.D. students of the Software Engineering area from the University of São Paulo (ICMC/USP) and Federal University of São Carlos (UFSCar).
  • 13. 13 The Experimental Study  Planning  Pilot Project  Selection of Subjects  Training
  • 14. 14 The Experimental Study  Planning  Hypotheses Formulation  H0 : µ (effectiveness(X)) = µ (effectiveness(Y));  H1 : µ (effectiveness(X)) < µ (effectiveness(Y)); and  H2 : µ (effectiveness(X)) > µ (effectiveness(Y)).  Where X = PLUS and Y = SMarty.
  • 15. 15 The Experimental Study  Planning  Dependent Variables: the effectiveness calculated for each variability management approach (X and Y) as follows:
  • 16. 16 The Experimental Study  Planning  Independent Variables:  the variability management approach, a factor with two treatments (X and Y); and  the SPL, a factor with two treatments (E-commerce and AGM SPLs).
  • 17. 17 The Experimental Study Execution  Instrumentation  Participation Procedure
  • 18. 18 The Experimental Study  Effectiveness of the Approaches  Collected Data Normality Test: the Shapiro-Wilk normality test was applied to the E-commerce and AGM samples providing the following results:  sample X was considered non-normal and sample Y was considered normal.
  • 19. 19 The Experimental Study Box Plot of Effectiveness (Class) Spreadsheet1 10v*12c Median; Box: 25%-75%; Whisker: Non-Outlier Range Median 25%-75% Non-Outlier Range Outliers Extremes Effectiveness Y Approach. Effectiveness X Approach. -5 0 5 10 15 20 25 30
  • 20. 20 The Experimental Study  Effectiveness of the Approaches  Mann-Whitney-Wilcoxon for SampleX and SampleY:  Detailed explanation on samples is in the paper  There is evidence that the X approach (PLUS) is more effective in identifying and representing variability in class models than the Y approach (SMarty)  This result corroborates to reject the null hypothesis (H0) of this study: PLUS is more effective than SMarty for SPLs class models and subjects taken into account.
  • 21. 21 The Experimental Study  Threats to Validity  Conclusion Validity  Sample size is a major concern, which must be increased in prospective studies  Random capacity was not applied to subjects selection, thus generalization of results could not be inferred  Construct Validity  Independent variable variability modeling approach was guaranteed by the pilot project undertaken
  • 22. 22 The Experimental Study  Threats to Validity  Internal Validity  Differences among subjects – variations on skills were reduced by performing training session and tasks in the same order  Fatigue effects – on average the experiment took 80 minutes, thus fatigue was not considered a problem for the study  Influence among subjects – could not be really controlled. They took the experiment under the supervision of a human observer.
  • 23. 23 The Experimental Study  Threats to Validity  External Validity  Instrumentation – failing to use real class models, as the e-commerce and AGM are not commercial SPLs. More experiments must be carried out with real SPLs.  Subjects – we could take advantages of the benefits of taking into account students for performing experiments as pointed out by Carver et al. (2003)
  • 24. 24 Empirical Evolution of SMarty  Improvements for the SMarty approach based on the feedback of the subjects:  E-commerce SPL  Subjects reported difficulties on the application of SMarty to the e- commerce SPL class model as it has no elements of class modeling, such as, inheritance, aggregation, and generalization  E- commerce was analyzed to improve SMarty  Training session  Subjects indicated that they need more time for training and application of SMarty
  • 25. 25 Empirical Evolution of SMarty  Improvements for the SMarty approach based on the feedback of the subjects:  Amount of stereotypes  Subjects questioned the difference between PLUS and SMarty as the later has several more stereotypes  Arrangement of the SPL models:  E-commerce class models are mode complex than AGM  E-commerce models were the first models given to the subjects
  • 26. 26 Empirical Evolution of SMarty  Based on such subjects feedback, the following improvements were made:  New guidelines were added to SMarty, encompassing the level of abstraction and elements of the e-commerce class models  CL2. Class models elements, related with associations in which their attributes have aggregationKind as none, or, do not represent aggregation or composition, suggest mandatory or optional variants.  CL2.1. For the identification of possible optional variants classes related through associations where the multiplicity in one of the ends of an association, to each object class found at the opposite end match * (zero or more) or 0..n where n is any integer different from zero; suggest an optional class
  • 27. 27 Empirical Evolution of SMarty  Based on such subjects feedback, the following improvements were made:  We realized that with a few less stereotypes, PLUS is easier to apply. However, such an “easibility” might jeopardize the generation of specific products as we can observe ambiguity in PLUS class models
  • 28. 28 Revisiting objectives of this work… 1. Comparing the effectiveness of SMarty and PLUS with regard to the identification and representation of variability in UML classes  PLUS is more effective 1. Allowing the SMarty evolution in order to increase its effectiveness against PLUS  New guidelines for class models  need a new experiment  Reduce stereotypes or avoid ambiguity during specific products generation?  New experiment is being carried out
  • 29. 29 Conclusion  Industry needs that the scientific community tests existing and new technologies, such as SMarty, identifying their effectiveness to make technology transfer easier and reliable.  The experimental study presented in this paper demonstrates the ability to use variability management approaches. Their effectiveness were analyzed by modeling variability in class models of two SPLs.  Empirical based improvements could be made to SMarty in order to incorporate support for different class model elements by means of new guidelines
  • 30. 30 Conclusion  Shapiro-Wilk normality test was applied to both samples  Mann-Whitney-Wilcoxon test analyzed the effectiveness of PLUS and SMarty  Obtained results provide evidence that the PLUS is more effective than SMarty for modeling variability in UML class models, taking into account the E-commerce and the AGM SPLs for this study.
  • 31. 31 Future Works  New experimental studies and replications must be planned and conducted to make it possible to reduce the threats, increasing the effectiveness of SMarty towards generalizing the results.  As new experiments, we are:  planning a new experiment for characterize the improved version of SMarty effective against PLUS; and  planning an experiment to analyze the effectiveness of PLUS and SMarty and their impact on the generation of specific products.
  • 32. 32 Acknowledgements The authors would like to thank CAPES (a Brazilian Funding Agency) for supporting this work!!!
  • 33. 33 Questions? Contributions?  If you prefer, contact me via e-mail:  edson@din.uem.br