33,705 research outputs found

    Antenna pattern shaping, sensing, and steering study Final report

    Get PDF
    Design of steerable satellite antenna with beam pattern sensing syste

    Predicting prime path coverage using regression analysis at method level

    Get PDF
    Test coverage criteria help the tester in analyzing the quality of the test suite, especially in an evolving system where it can be used to guide the prioritization of regression tests and the testing effort of new code. However, coverage analysis of more powerful cri teria such as path coverage is still challenging due to the lack of supporting tools. As a consequence, the tester evaluates a test suite quality employing more basic coverage criteria (e.g., node coverage and edge coverage), which are the ones that are supported by tools. In this work, we evaluate the opportunity of using machine learning algorithms to estimate the prime-path coverage of a test suite at the method level. We followed the Knowledge Discovery in Database process and a dataset built from 9 real-world projects to devise three regression models for prime-path prediction. We compare four different machine learning algorithms and conduct a fine-grained feature analysis to investigate the factors that most impact the prediction accuracy. Our experimental results show that a suitable predictive model uses as input data only five source code metrics and one basic test coverage metric. Our evaluation shows that the best model achieves an MAE of 0.016 (1,6%) on the cross-validation (internal validation) and an MAE of 0.06 (6%) on the ex ternal validation. Finally, we observed that good prediction models can be generated from common code metrics although the use of a simple test metric such as branch coverage can improve even more the prediction performance of the model.Os critérios de cobertura de teste auxiliam o testador na análise da qualidade do conjunto de testes, em especial em sistemas em evolução onde pode ser utilizado para orientar a priorização dos testes de regressão e o esforço de teste de um novo código. No entanto, a análise da cobertura de critérios mais poderosos, tais como a cobertura de caminhos, continua a ser desafiante devido à falta de ferramentas de apoio. Como consequência, o testador avalia a qualidade de um conjunto de testes utilizando critérios de cobertura mais básicos (por exemplo, cobertura de nós e cobertura de arcos), que são os que são suporta dos por ferramentas. Neste trabalho, avaliou-se a oportunidade de utilizar algoritmos de aprendizagem de máquina para estimar a cobertura de caminhos primos de um conjunto de testes em nível de método. Seguiu-se o processo de descoberta de conhecimento em base de dados e um conjunto de dados construído a partir de 9 projetos do mundo real para se criarem três modelos de regressão para a previsão do valor de cobertura do critério de caminhos primos a partir de métricas de código. Compararam-se quatro algoritmos dife rentes de aprendizagem de máquina e realizou-se uma análise detalhada de características para identificar aquelas que mais afetam o desempenho da predição. Os resultados experi mentais mostraram que modelos preditivos de boa acurácia podem ser gerados a partir de um conjunto de métricas de código pequeno e de fácil obtenção. O melhor modelo gerado utiliza como dados de entrada apenas cinco métricas de código fonte e uma métrica básica de cobertura de teste e atinge um MAE de 0,016 (1,6%) na validação cruzada (validação interna) e um MAE de 0,06 (6%) na validação externa. Por fim, observou-se que modelos preditivos adequados podem ser gerados a partir de métricas de código comuns, embora o uso da métrica de cobertura de arcos, quando disponível, possa melhorar ainda mais o desempenho de predição

    The 30/20 GHz flight experiment system, phase 2. Volume 2: Experiment system description

    Get PDF
    A detailed technical description of the 30/20 GHz flight experiment system is presented. The overall communication system is described with performance analyses, communication operations, and experiment plans. Hardware descriptions of the payload are given with the tradeoff studies that led to the final design. The spacecraft bus which carries the payload is discussed and its interface with the launch vehicle system is described. Finally, the hardwares and the operations of the terrestrial segment are presented

    PESTT: PESTT educational software testing tool

    Get PDF
    Tese de mestrado em Engenharia Informática, apresentada à Universidade de Lisboa, através da Faculdade de Ciências, 2012A sociedade em que vivemos é completamente dependente da tecnologia. Desde os simples equipamentos domésticos, como televisores, frigoríficos ou telefones, passando, por exemplo, pelos meios de transporte (e.g., automóveis, comboios, aviões), todos eles contêm software que é indispensável ao seu funcionamento, e que se falhar pode ter consequências devastadoras, tanto em termos da nossa comodidade como em impacte financeiro. A ubiquidade e consequente criticidade do software requer que este possua um nível de qualidade elevado. É neste contexto que entram os testes de software, que constituem um dos principais mecanismos para reduzir a ocorrência de problemas e garantir a qualidade do software produzido. Saber planear, desenhar e automatizar a execução de testes é portanto uma valência imprescindível ao engenheiro de software. A ferramenta que propomos—PESTT Educational Software Testing Tool (PESTT)—vem auxiliar a atividades de desenho e de análise de cobertura de testes unitários baseados em grafos de controlo de fluxo (CFG). A ferramenta inicialmente foi pensada para ser usada como suporte ao ensino dos conceitos e técnicas introdutórias de teste de software, mas pode também ser usada em outros cenários. O UI cuidadosamente pensado e a sua integração flexível no Eclipse IDE, torna o PESTT um auxiliar valioso para professores e alunos. Os conceitos de testes encontram-se bem organizados: uma vista para o CFG (automaticamente gerado a partir do código fonte Java), uma vista onde pode ser escolhido o critério de cobertura estruturada de uma maneira que torna simples visualizar que critério subsume outros, uma vista para gerir os requisitos de teste e a sua relação com o CFG e com o código fonte, uma vista para os caminhos de teste, uma outra para as estatísticas de cobertura e ainda uma vista para a informação relacionada com o fluxo de dados. Todas estas vistas encontram-se integradas umas com as outras de forma a poder disponibilizar a maior quantidade possível de informação ao engenheiro de teste. O PESTT encontra-se integrado com o JUnit e com o Byteman de forma a poder disponibilizar os caminhos executados (no CFG) pelos testes; disponibiliza também as estatísticas referentes a cada teste ou para o conjunto de testes, que permite que o engenheiro possa ter a perceção dos níveis de cobertura atuais (individual ou total) dos testes. O PESTT distingue-se das outras ferramentas de teste de análise de cobertura, porque não oferece apenas análise de cobertura baseada em nós ou arestas. Oferece entre outras funcionalidades análise de cobertura baseada em CFG (que para além de incluir os critérios de cobertura de nós e arestas) inclui outros mais poderosos e auxilia o engenheiro de testes no planeamento das várias atividades do processo de testes. Este documento dá a conhecer os aspetos relacionados com o PESTT, necessários para a sua concretização, nomeadamente, os conceitos teóricos essenciais para a sua correta utilização, as ferramentas de cobertura existentes e as respetivas contribuições para o PESTT, passando pela arquitetura, não esquecendo a implementação dos algoritmos dos critérios de cobertura baseados no CFG, fundamentais para obter os requisitos de teste, na obtenção dos caminhos de testes executados, entre outras funcionalidades.The society we live in is completely dependent of technology. From simple home appliances such as televisions, Refrigerators or telephones, passing, for example, by transports (e.g., cars, trains, plains), they all contain software that is essential to its operation, and if it fails the consequences can be devastating, both in terms of our comfort as financial impact. The ubiquity and consequent criticism of Software requires that this have a high level of quality. It is in this context that enter the Software tests, which are a major mechanism for reducing the occurrence of problems and ensure the quality of the Software produced. Learn to plan, design and automate test execution is therefore a valence essential to the Software engineer. The tool we propose—PESTT Educational Software Testing Tool (PESTT)—comes to auxiliary the activities of design and coverage analysis of unit testing based on flow control graph (CFG). PESTT started as a tool specially tailored for teaching how to test software, but can be very well used in other scenarios. Its suits well the teaching of software testing classes, because of its careful designed UI and its smoothly integration with the Eclipse IDE. The testing concepts are well organized: a view for the control flow graph (automatically generated from the method’s source code), a view with the supported coverage criteria arranged in such a way that it is easy to visualize which criteria subsumes others, a view for manipulating test requirements and its explanation both in terms of the control flow graph and of the source code, a view for the test paths, another for coverage statistics, yet another for data flow information, and all these views integrated together to give as much information as possible to the test engineer. It provides integration with JUnit and Byteman and reconstructs run paths of each test method, computing statistics either for each test method or for the complete test set, this allows the engineer to get the current levels of tests coverage (individual or total). PESTT distinguishes from other coverage analysis testing tools because it is not just a node and branch coverage analyzer. Among other things, it supports many other more powerful coverage criteria and assists the test engineer in the various tasks of the testing activity. This report aims at describing the aspects of PESTT, citing the necessary mechanisms for its implementation, in particular, theoretical concepts used essential for its correct use, the existing coverage tools and their contributions to PESTT, through the architecture, not forgetting the implementation of the algorithms of coverage criteria based CFG fundamental to obtain the test requirements or obtaining the executed paths of tests performed, among other features

    Automated Test Generation Based on an Applicational Model

    Get PDF
    Context: As testing is an extremely costly and time-consuming process, tools to automatically generate test cases have been proposed throughout the literature. OutSystems provides a software development environment where with the aid of the visual OutSystems language, developers can create their applications in an agile form, thus improving their productivity. Problem: As OutSystems aims at accelerating software development, automating the test case generation activity would bring great value to their clients. Objectives: The main objectives of this work are to: develop an algorithm that generates, automatically, test cases for OutSystems applications and evaluates the coverage they provide to the code, according to a set of criteria. Methods: The OutSystems language is represented as a graph to which developers can then add pieces of code by dragging nodes to the screen and connecting them to the graph. The methodology applied in this work consists in traversing these graphs with depth and breadth-first search algorithms, employing a boundary-value analysis to identify the test inputs and a cause-effect graphing to reduce the number of redundant inputs generated. To evaluate these test inputs, coverage criteria regarding the control flow of data are analysed according to node, branch, condition, modified condition-decision and multiple condition coverage. Results: This tool is able to generate test inputs that cover 100% of reachable code and the methodologies employed help greatly in reducing the inputs generated, as well as displaying a minimum set of test inputs with which the developer is already able to cover all traversable code. Usability tests also yield very optimistic feedback from users. Conclusions: This work’s objectives were fully met, seen as we have a running tool able to act upon a subset of the OutSystems applicational model. This work provides crucial information for assessing the quality of OutSystems applications, with value for OutSystems developers, in the form of efficiency and visibility

    Experimental L-band SST satellite communications/surveillance terminal study. Volume 1 - Study summary

    Get PDF
    Study of design for experimental L band supersonic transport communications/surveillance termina

    WP 75 - Welfare reform in the UK, the Netherlands, and Finland Change within the limits of path dependence

    Get PDF
    In this article, we ask whether the principles of welfare redistribution have been altered in the era of ‘permanent austerity’; when pressures to dismantle (or at least cut down the costs) of social welfare institutions due to unfavourable economic and demographic developments have been strong. The primary finding from a systematic analysis of disability benefit reform in the UK, the Netherlands and Finland between 1980 and 2006 is that, regardless of the ‘irresistible forces’ (Pierson 1998) urging for reforms, the core principles of European social security provision have been preserved. Our findings speak for path dependence of institutions, but also call into question the deterministic views on path dependence. It is argued in the article that path dependence does not predict that policy-makers are unable to alter the systems, rather we claim that it delimits the number of options available for the policy makers. Key words: comparative research, institutions, path dependence, policy change, welfare state
    • …
    corecore