Скачать презентацию An Empirical Study of Three Software Product Line Скачать презентацию An Empirical Study of Three Software Product Line

699f2e4dd176202a9c41c0119210a97f.ppt

  • Количество слайдов: 26

An Empirical Study of Three Software Product Line Tools Kattiana Constantino, Juliana Alves, Juliana An Empirical Study of Three Software Product Line Tools Kattiana Constantino, Juliana Alves, Juliana Padilha, Priscilla Vasconcelos Eduardo Figueiredo Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/

Outline o o Motivation Study Settings n n o o o Research questions Software Outline o o Motivation Study Settings n n o o o Research questions Software Product Line Tools Background of Subjects Training Session and Tasks Results and Discussion Threats to Validity Future Work Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/ 2

Software Product Line o Software product line (SPL) is a set of software systems Software Product Line o Software product line (SPL) is a set of software systems that share a common set of features… System A System B Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/

Motivation for Adopting SPL o Reduction of Development Costs o Reduction of Time to Motivation for Adopting SPL o Reduction of Development Costs o Reduction of Time to Market o Enhancement of Quality o Reduction of Maintenance Effort Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/

Motivation of this Work o High number of tools to support variability management by Motivation of this Work o High number of tools to support variability management by modeling features in SPL n n n What tool an SPL engineer or company should adopt? What functionalities a developer of a new tool should focus on? What functionalities to improve existing tools? Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/ 5

Target Audience o Our results may support n n n Practitioners to choose appropriate Target Audience o Our results may support n n n Practitioners to choose appropriate tools that best fit their needs Developers of new tools to focus on relevant attributes and requirements Maintainers of existing tools to help identifying weaknesses for improvement and extension Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/ 6

Study Settings Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/ Study Settings Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/

Study Settings o o Research questions Software Product Line Tools Background of Subjects Training Study Settings o o Research questions Software Product Line Tools Background of Subjects Training Session and Tasks Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/

Research Questions o RQ 1. Does the background of developers significantly impact on the Research Questions o RQ 1. Does the background of developers significantly impact on the use of tools? o RQ 2. What functionalities do developers have more problems with? o RQ 3. What are the weaknesses and strengths of SPL tools? Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/ 9

Research Questions o RQ 1. Does the background of developers significantly impact on the Research Questions o RQ 1. Does the background of developers significantly impact on the use of tools? o RQ 2. What functionalities do developers have more problems with? o RQ 3. What are the weaknesses and strengths of SPL tools? Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/ 10

Software Product Line Tools Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/ Software Product Line Tools Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/ 11

Choose of the Tools o o Systematic Literature Review: 41 SPL tools selected Excluded Choose of the Tools o o Systematic Literature Review: 41 SPL tools selected Excluded criteria Lack of examples available, tutorials, or limited user’s guides Prototype Unavailable for download Commercial without evaluation version Command line Discontinued tool o Potential relevant tools n SPLOT, Feature. IDE, Pure: : Variants, Varmod, Odyssey, Metadoc-FM; Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/

Software Product Line Tools Selected o o Included criteria Functionalities analyzed Using in large Software Product Line Tools Selected o o Included criteria Functionalities analyzed Using in large software projects Mature Actively developed Accessible/Available Tools selected n n n S. P. L. O. T. Feature. IDE Pure: : Variants Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/ 13

Functionalities of these SPL Tools Functionality Availability SPLOT Feature. IDE Pure: : Variants online/standalone Functionalities of these SPL Tools Functionality Availability SPLOT Feature. IDE Pure: : Variants online/standalone tree/diagram - - Feature model editor Feature model notation Automated Analysis Product configuration Integration with code - Repository Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/

Background of Subjects o 119 participants n n n o 41 - SPLOT 42 Background of Subjects o 119 participants n n n o 41 - SPLOT 42 - Feature. IDE 36 - Pure: : Variants 4 different Brazilian institutions n n 74 - UFMG 12 - UFJF 23 - UFLA 10 - PUC-RJ Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/

Background Questionnarie o English Level o o Object-Oriented Programming (OOP) Unified Modeling Language (UML) Background Questionnarie o English Level o o Object-Oriented Programming (OOP) Unified Modeling Language (UML) Software Product Line (SPL) o o “high”, “medium”, “low”, “none” or “no answer” Work Experience (WE) o o “advanced”, “intermediate”, “basic” or “no answer” “>3 years”, “ 1 to 3 years”, “until 1 year”, “none”, “no answer” Other courses about Software Development Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/

Data Visualization Tool – Background of Participants Software Engineering Lab (Lab. Soft) http: //labsoft. Data Visualization Tool – Background of Participants Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/

Sorting by SPL tool Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/ Sorting by SPL tool Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/

Sorting by Work Experience (WE) Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. Sorting by Work Experience (WE) Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/

Training Session and Tasks o o 1. 5 -hours of training session about SPL Training Session and Tasks o o 1. 5 -hours of training session about SPL Functionalities analyzed Functionality Description Feature Model Edition Creating and updating the feature model Automated Feature Model Analysis Extracting information from feature model Configuration Product Selecting or deselecting features according to user's preferences Feature Model Import/Export XML, CSV file or other types Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/

Results and Discussion Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/ Results and Discussion Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/

RQ 1: Does the background of developers significantly impact on the use of tools? RQ 1: Does the background of developers significantly impact on the use of tools? o o o Highly skilled High OOP x High WE High OOP x None WE High SPL The majority of participants in each skills Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/

Data Visualization Tool – Background Influence Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. Data Visualization Tool – Background Influence Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/ 23

Threats to Validity o External validity n o It is associated selected tools. We Threats to Validity o External validity n o It is associated selected tools. We choose three tools, among many available ones, and we cannot guarantee that our observations can be generalized to other tools Internal validity n A limitation of this study concerns the absence of balancing the participants in groups according to their knowledge. To minimize this threat, we provide a 1. 5 hour training session to introduce participants to the basic required knowledge Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/ 24

Future Work o Analyzing the others research questions o Improving a visual environment to Future Work o Analyzing the others research questions o Improving a visual environment to make it easier to compare SPL tools o Improving the analysis about background influence using data visualization and statistical methods Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/

An Empirical Study of Three Software Product Line Tools Kattiana Constantino, Juliana Alves, Juliana An Empirical Study of Three Software Product Line Tools Kattiana Constantino, Juliana Alves, Juliana Padilha, Priscilla Vasconcelos Eduardo Figueiredo Software Engineering Lab (Lab. Soft) http: //labsoft. dcc. ufmg. br/