scispace - formally typeset
Search or ask a question
Author

Beatriz Pérez Lamancha

Bio: Beatriz Pérez Lamancha is an academic researcher from University of the Republic. The author has contributed to research in topics: Test case & Software product line. The author has an hindex of 9, co-authored 21 publications receiving 281 citations.

Papers
More filters
Proceedings Article
01 Jan 2009
TL;DR: The objective is to analyse the existing approaches to testing in software product lines, discussing the significant issues related to this area of knowledge and providing an up-to-date state of the art which can serve as a basis for innovative research activities.
Abstract: Software product lines constitute a new paradigm where industrial production techniques are adapted and applied to software development. Reuse and the maintenance of traceability between the different artefacts in the line are fundamental requirements in this paradigm, articulating the best practices for software development in an environment that is perfectly controlled by software engineering methods. This article presents a systematic review of the literature which deals with testing in software product lines. The objective is to analyse the existing approaches to testing in software product lines, discussing the significant issues related to this area of knowledge and providing an up-to-date state of the art which can serve as a basis for innovative research activities. The paper also analyses how SPL research can contribute and dynamise the research in software

56 citations

Book ChapterDOI
08 Nov 2010
TL;DR: This paper resolves the problem by the implementation of combinatorial testing techniques adapted to the SPL context by solving the problem of practical impossibility of testing all the possible combinations in feature models.
Abstract: A Software Product Lines (SPL) is "a set of software-intensive systems sharing a common, managed set of features that satisfy the specific needs of a particular market segment or mission and that are developed from a common set of core assets in a prescribed way" Variability is a central concept that permits the generation of different products of the family by reusing core assets It is captured through features which, for a SPL, define its scope Features are represented in a feature model, which is later used to generate the products from the line From the testing point of view, testing all the possible combinations in feature models is not practical because: (1) the number of possible combinations (ie, combinations of features for composing products) may be untreatable, and (2) some combinations may contain incompatible features Thus, this paper resolves the problem by the implementation of combinatorial testing techniques adapted to the SPL context

39 citations

Journal ArticleDOI
TL;DR: This article automates two important steps in the test oracle: obtention of expected output and its comparison with the actual output, using a model-driven approach, and a complete executable test case at functional test level is obtained.
Abstract: Context: Software development time has been reduced with new development tools and paradigms, testing must accompany these changes. In order to release software products in a timely manner as well as to minimise the impact of possible errors introduced during maintenance interventions, testing automation has become a central goal. Whilst research has produced significant results in test case generation and tools for test case (re)-execution, one of the most important open problems in testing is the automation of oracle generation. The oracle decides whether the program under test has or has not behaved correctly and then issues a pass/fail verdict. In most cases, writing the oracle is a time-consuming activity that, moreover, is manual in most cases. Objective: This article automates two important steps in the test oracle: obtention of expected output and its comparison with the actual output, using a model-driven approach. Method: The oracle automation problem is resolved using a model-driven framework, based on OMG standards: UML is used as metamodel and QVT and MOF2Text as transformation languages. The automated testing framework takes the models that describe the system as input, using UML notation and derives from them the test model and then the test code, following a model-driven approach. Test oracle procedures are obtained from a UML state machine. Results: A complete executable test case at functional test level is obtained, composed of a test procedure with parametrized input test data and expected result automation. Conclusion: The oracle automation is obtained using a model-driven approach, test cases are obtained automatically from UML models. The model-driven testing framework was applied to an industrial application and has been useful to testing automation for the main functionalities in the system.

32 citations

Proceedings ArticleDOI
05 Oct 2009
TL;DR: An approach for model-based testing which is completely based on standards, what constitutes an essential factor for its implantation in industrial software tools and the transformation process is based on QVT scripts, a transformation language also adopted by the OMG.
Abstract: This paper describes an approach for model-based testing which is completely based on standards, what constitutes an essential factor for its implantation in industrial software tools. The inputs of the process are models described in UML 2.0, whereas the outputs consist of artefacts of the UML Testing Profile. The transformation process is based on QVT (Query-View-Transformation) scripts, a transformation language also adopted by the OMG.

31 citations

Book ChapterDOI
22 Jul 2010
TL;DR: The objective is to analyze the existing approaches to testing in software product lines, discussing the significant issues related to this area of knowledge and providing an up-to-date state of the art, which can serve as a basis for innovative research activities.
Abstract: This article presents a systematic review of the literature about Testing in Software Product Lines. The objective is to analyze the existing approaches to testing in software product lines, discussing the significant issues related to this area of knowledge and providing an up-to-date state of the art, which can serve as a basis for innovative research activities. The paper includes an analysis on how SPL research can contribute to dynamize the research in software testing.

27 citations


Cited by
More filters
Journal Article
TL;DR: A framework for model driven engineering is set out, which proposes an organisation of the modelling 'space' and how to locate models in that space, and identifies the need for defining families of languages and transformations, and for developing techniques for generating/configuring tools from such definitions.
Abstract: The Object Management Group's (OMG) Model Driven Architecture (MDA) strategy envisages a world where models play a more direct role in software production, being amenable to manipulation and transformation by machine. Model Driven Engineering (MDE) is wider in scope than MDA. MDE combines process and analysis with architecture. This article sets out a framework for model driven engineering, which can be used as a point of reference for activity in this area. It proposes an organisation of the modelling 'space' and how to locate models in that space. It discusses different kinds of mappings between models. It explains why process and architecture are tightly connected. It discusses the importance and nature of tools. It identifies the need for defining families of languages and transformations, and for developing techniques for generating/configuring tools from such definitions. It concludes with a call to align metamodelling with formal language engineering techniques.

1,476 citations

Book ChapterDOI
01 Jan 2019
TL;DR: This chapter presents a survey of recent advances, over the past decade, related to the fundamental problems of mutation testing and sets out the challenges and open problems for the future development of the method.
Abstract: Mutation testing realizes the idea of using artificial defects to support testing activities. Mutation is typically used as a way to evaluate the adequacy of test suites, to guide the generation of test cases, and to support experimentation. Mutation has reached a maturity phase and gradually gains popularity both in academia and in industry. This chapter presents a survey of recent advances, over the past decade, related to the fundamental problems of mutation testing and sets out the challenges and open problems for the future development of the method. It also collects advices on best practices related to the use of mutation in empirical studies of software testing. Thus, giving the reader a “mini-handbook”-style roadmap for the application of mutation testing as experimental methodology.

317 citations

Journal ArticleDOI
TL;DR: This study aims at surveying existing research on SPL testing in order to identify useful approaches and needs for future research, and finds system testing is the largest group with respect to research focus, followed by management.
Abstract: Context: Software product lines (SPL) are used in industry to achieve more efficient software development. However, the testing side of SPL is underdeveloped. Objective: This study aims at surveying existing research on SPL testing in order to identify useful approaches and needs for future research. Method: A systematic mapping study is launched to find as much literature as possible, and the 64 papers found are classified with respect to focus, research type and contribution type. Results: A majority of the papers are of proposal research types (64%). System testing is the largest group with respect to research focus (40%), followed by management (23%). Method contributions are in majority. Conclusions: More validation and evaluation research is needed to provide a better foundation for SPL testing.

312 citations

Journal ArticleDOI
TL;DR: Investigating state-of-the-art testing practices, synthesize available evidence, and identify gaps between required techniques and existing approaches, available in the literature are focused on.
Abstract: ContextIn software development, Testing is an important mechanism both to identify defects and assure that completed products work as specified. This is a common practice in single-system development, and continues to hold in Software Product Lines (SPL). Even though extensive research has been done in the SPL Testing field, it is necessary to assess the current state of research and practice, in order to provide practitioners with evidence that enable fostering its further development. ObjectiveThis paper focuses on Testing in SPL and has the following goals: investigate state-of-the-art testing practices, synthesize available evidence, and identify gaps between required techniques and existing approaches, available in the literature. MethodA systematic mapping study was conducted with a set of nine research questions, in which 120 studies, dated from 1993 to 2009, were evaluated. ResultsAlthough several aspects regarding testing have been covered by single-system development approaches, many cannot be directly applied in the SPL context due to specific issues. In addition, particular aspects regarding SPL are not covered by the existing SPL approaches, and when the aspects are covered, the literature just gives brief overviews. This scenario indicates that additional investigation, empirical and practical, should be performed. ConclusionThe results can help to understand the needs in SPL Testing, by identifying points that still require additional investigation, since important aspects regarding particular points of software product lines have not been addressed yet.

231 citations

Proceedings ArticleDOI
16 May 2009
TL;DR: This paper presents how an AOM approach can be used to tame the combinatorial explosion of DAS modes by derive a wide range of modes by weaving aspects into an explicit model reflecting the runtime system.
Abstract: Since software systems need to be continuously available under varying conditions, their ability to evolve at runtime is increasingly seen as one key issue. Modern programming frameworks already provide support for dynamic adaptations. However the high-variability of features in Dynamic Adaptive Systems (DAS) introduces an explosion of possible runtime system configurations (often called modes) and mode transitions. Designing these configurations and their transitions is tedious and error-prone, making the system feature evolution difficult. While Aspect-Oriented Modeling (AOM) was introduced to improve the modularity of software, this paper presents how an AOM approach can be used to tame the combinatorial explosion of DAS modes. Using AOM techniques, we derive a wide range of modes by weaving aspects into an explicit model reflecting the runtime system. We use these generated modes to automatically adapt the system. We validate our approach on an adaptive middleware for home-automation currently deployed in Rennes metropolis.

219 citations