2 research outputs found

    Hadooptest : um controlador de testes para sistemas baseados em mapreduce

    Get PDF
    Orientador : Prof. Dr. Eduardo Cunha de AlmeidaDissertação (mestrado) - Universidade Federal do Paraná, Setor de Ciências Exatas, Programa de Pós-Graduação em Informática. Defesa: Curitiba, 08/12/2011Bibliografia: fls. 51-45Resumo: O MapReduce (MR) e uma das soluções mais populares na área de processamento de dados em grande escala. Os sistemas baseados em MapReduce frequentemente são implantados sobre agrupamentos de computadores, onde falhas acontecem constantemente, devido a defeitos de software, problemas de hardware e interrupções. Testar sistemas baseados em MapReduce é difícil, uma vez que é necessário um grande esforço do controlador de testes para executar casos de teste distribuídos em ambientes com a presença de falhas. Neste trabalho, apresentamos uma nova solução de testes para resolver isso, que foi chamada de HadoopTest. Esta solução baseia-se em uma abordagem de controle escalável, onde um coordenador gerência diversos testadores distribuídos, que controlam os componentes do MR. Os testadores podem simular falhas sobre os componentes do MR e monitorar suas execuções. O HadoopTest foi utilizado para testar duas aplicações distribuídas juntamente com o Hadoop (i.e., a implementação MapReduce de código aberto mantida pela fundação Apache). Nossos experimentos apresentaram resultados promissores, sendo que o HadoopTest conseguiu coordenar casos de teste distribuídos, injetar falhas nos componentes do MR e encontrar alguns defeitos de software que foram propositalmente inseridos.Abstract: MapReduce (MR) is one of the most popular solution on large-scale data processing area. The MR-based systems are often deployed over clusters of computers, where failures happen constantly due to bugs, hardware problems, and outages. Testing MR-based systems is hard, since it is needed a great eort of test controller to execute distributed test cases upon failures. In this work, we present a novel testing solution to tackle this issue called HadoopTest. This solution is based on a scalable control approach, where a coordinator manages many distributed testers which control the MR components. Testers are allowed to simulate failures on MR components and monitor their behavior. HadoopTest was used to test two applications bundled into Hadoop (i.e., a open source MapReduce implementation mantained by Apache Foundation). On our experiments HadoopTest was able to coordinate distributed test cases, inject faults on MR components and nd some bugs which were purposely inserted

    A Model-driven Approach for the Automatic Generation of System-Level Test Cases

    Get PDF
    Systems at the basis of the modern society, as the as the homeland security, the environment protection, the public and private transportations, the healthcare or the energy supply depend on the correct functioning of one or more embedded systems. In several cases, such systems shall be considered critical, since the consequences of their failures may result in economic losses, damages to the environment or even injuries to human life. Possible disastrous consequences of embedded critical systems, suggest that discover flaws during systems development and avoid their propagation to the system execution, is a crucial task. In fact, most of the failures found during the usage of embedded critical systems, is due to errors introduced during early stages of the system development. Thus, it is desiderable to start Verification and Validation (V&V) activities during early stages of a system life cycle. However such V&V activities can account over the 50% of times and costs of a system life cycle and there is therefore the need to introduce techniques able to reduce the accounted resources without losses in term efficiency. Among the methodologies found in scientific and industrial literature there is a large interest in the V&V automation. In particular, automatic verification can be performed during different stages of a system development life cycle and can assume different meanings. In this thesis, the focus is on the automation of the test cases generation phase performed at the System level starting from SUT and test specifications. A recent research trend, related to this, is to support such process providing a flexible tool chain allowing for effective Model Driven Engineering (MDE) approaches. The adoption of a model-driven techniques requires the modelling of the SUT to drive the generation process, by using suitable domain-specific modelling languages and model transformations. Thus, a successful application of the MDE principles is related to the choice of the high-level language for SUT specification and the tools and techniques provided to support the V\&V processes. According to this, the model-driven approach define in this thesis relies on three key factors: (1) the definition of new domain-specific modelling languages (DSMLs) for the SUT and the test specifications, (2) the adoption of model checking techniques to realize the generation of the test cases and (3) the implementation of a concrete framework providing a complete tool chain supporting the automation process. This work is partially involved in an ARTEMIS European project CRYSTAL (CRitical sYSTem engineering AcceLeration). CRYSTAL is strongly industry-oriented and aims at achieving technical innovation by a user-driven approach based on the idea to apply engineering methods to industrially relevant Use Cases from the automotive, aerospace, rail and health-care sectors. The DSML that will be presented in this thesis, emerged as an attempt to address the modelling requirements and the design practices of the industrial partners of the project, within a rigorous and well-founded formal specification and verification approach. In fact, the main requirement that a modelling language suitable for the industry should have is to be small and as simple as possible. Thus, the modelling language should provide an adequate set of primitive constructs to allow for a natural modelling of the system of interest. Furthermore, the larger the gap between the design specification and the actual implementation is, the less useful the results of the design analysis would be. The test case generation is supported by model checking techniques; the SUT and test models are in fact translated in specifications expressed by the language adopted by a model checker. The thesis discusses all the issues addressed in the mapping process and provides their implementations by means of model transformations. A class of test specifications is addressed to exemplify the generation process over a common class of reachability requirements. The model-driven approach discussed in the thesis is applied in the contest of the railway control systems, and in particular on some of the key functionalities of the Radio Block Center, the main component of the ERTMS/ETCS standards for the interoperability of the railway control systems in the European Community. The thesis is organized as follows. The first chapter introduces embedded critical systems and outlines the main research trends related to their V&V process. The Chapter 2 outlines the state of the art in testing automation with a particular focus on model-driven approaches for automatic test generation. The same Chapter 2 provides also the necessary technical background supporting to understand the development process of the supporting framework. The Chapter 3 describes the context of the CRYSTAL project and the proposed model-driven approach partially involved in its activities. The Chapter 4 describes the domains pecific modelling languages defined for the modelling of the SUT specifications and of the test generation outcomes. Moreover the guidelines defined for modelling test specifications are discussed. The Chapter 5 focuses on the mapping process that enable the translation of the high-level language for the modelling of the SUT specification to the language adopted by the chosen model checker. The implementation of the overall framework is addressed in Chapter 6. Here model transformations realizing the defined mappings and the architecture of the Test Case Generator (TCG) framework are described and discussed. The Chapter 7 shows the results of the application of the approach in the context of the railway control systems and in particular to the Radio Block Centre system, a key component in the ERTMS/ETCS standard. Chapter 8 end the thesis, giving some conclusive remarks
    corecore