27.03.2014 Views

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

A Mapping Study on<br />

Software Product Lines Testing Tools<br />

Crescencio Rodrigues Lima Neto 1,3 , Paulo Anselmo Mota Silveira Neto 3<br />

Eduardo Santana de Almeida 2,3 , Silvio Romero de Lemos Meira 1,3<br />

1 Center for Informatics - Federal University of Pernambuco (CIn/UFPE)<br />

2 Computer Science Department - Federal University of Bahia (DCC/UFBA)<br />

3 Reuse in Software Engineering Labs (RiSE)<br />

{crln, srlm}@cin.ufpe.br, pamsn@rise.com.br, esa@dcc.ufba.br<br />

Abstract—The benefits of using a software testing tool in order<br />

to achieve significant reductions in cost and time to market,<br />

and, at the same time, increasing the quality has encouraged<br />

the adoption of testing tools both in single systems and product<br />

lines. In this context, this study focuses on the following goals:<br />

analyze how the available tools are supporting the Software<br />

Product Lines (SPL) Testing Process, investigate the state-of-theart<br />

on single system and SPL testing tools, synthesize available<br />

evidence, and identify gaps among the tools, available in the<br />

literature. A mapping study was undertaken to analyze important<br />

aspects that should be considered when adopting testing tools. A<br />

set of four research questions were defined in which 33 studies,<br />

dated from 1999 to 2011, were evaluated. From the total of 33<br />

studies considered, 24 of them described single system testing<br />

tools and the other 9 described SPL testing tools. However, there<br />

is insufficient information about publications describing tools<br />

used in the industry. There is no tool suitable to all testing levels<br />

of a SPL, researchers need to consider the feasibility of adapting<br />

existing tools or constructing new tools.<br />

Keywords—Software Testing; Software Product Lines; Software<br />

Reuse; Testing Tools; Systematic Literature Reviews<br />

I. INTRODUCTION<br />

In order to achieve the ability to build individualized products,<br />

to meet individual customer needs, companies need high<br />

investments, which consequently leads to higher prices for<br />

final products. In this context, the increasing adoption of Software<br />

Product Lines (SPL) practices in industry has decreased<br />

implementation costs, reduced time-to-market and improved<br />

quality of products. Although the benefits are promising, SPL<br />

advantages demand mature software engineering practices,<br />

planned and managed reuse [1].<br />

Testing is an essential part of software development to<br />

address product quality, since it examines the core assets, the<br />

product-specific software, the interaction between them, and<br />

finally the completed products [2].<br />

Testing tools are important to increase the quality of testing<br />

and at the same time reduce the effort to perform them.<br />

However, existing testing tools (see Section IV) are mostly<br />

unable to support SPL Testing [3].<br />

This study has been structured combining ideas from [4]<br />

with good practices defined in the guidelines proposed by<br />

[5], such as the protocol definition. Therefore, we applied a<br />

process for a mapping study (MS), including best practices for<br />

conducting systematic reviews (SR), making the best use of<br />

both methods.<br />

The objective of this study is to investigate how do the<br />

available tools support the Software Product Lines Testing<br />

process? This study aims to map out existing testing tools,<br />

to synthesize evidence to suggest important implications for<br />

practice, as well as to identify research trends, open issues, and<br />

areas for improvement. We derived four research questions:<br />

• RQ1 - In which context the proposed tools were proposed<br />

and evaluated? It aims at identifying where the tools were<br />

developed (industry or academia) and how they have been<br />

validated. Through these descriptions, it is possible to<br />

map the current adoption of the tools.<br />

• RQ2 - Is it possible to use the single system testing<br />

tools to test software product lines? It aims to analyze<br />

the possibility of using the single system testing tools to<br />

test SPL instead of creating tools from scratch.<br />

• RQ3 - Which testing levels are supported by existing<br />

tools? It aims to classify the tools according to the testing<br />

levels in order to identify what the tools can offer. It<br />

can provide information regarding to further research in<br />

a specific area or testing level.<br />

• RQ4 - How are testing tools evolving? It aims to analyze<br />

how the existing testing tools are evolving, regarding to<br />

the different testing levels.<br />

Furthermore, we believe that this paper can provide insights<br />

for new research in the software testing tools area, serving as<br />

a baseline, by analyzing the available tools and presenting the<br />

existing gaps.<br />

The remainder of this paper is structured as follows: Section<br />

II presents the related work. Section III describes the research<br />

method used. Section IV presents the analysis of the results.<br />

Section V presents a discussion on the results and the main<br />

findings of the study. Section VI presents the threats to validity,<br />

and finally, Section VII discusses the main conclusions.<br />

II. RELATED WORK<br />

Several studies [6], [3], [7], [8], emphasize the need for<br />

testing tools to support the Testing Process, however, few ones<br />

628

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!