11 research outputs found

    Learning Difficulties in Computing Courses: Cognitive Processes Assessment Methods Research and Application

    Get PDF
    Learning difficulties in computing courses is a situation perceived in diverse universities from different countries, cultures and backgrounds. These difficulties directly affect achievement rates and increase course evasion. We believe in the existence of a foundation of cognitive processes, that without it, even the most motivated student would have trouble to transform the received information into knowledge. This work has focused mainly on the research of candidate methods for cognitive processes assessment with a strong background theory. With this kind of information would be possible to devise cognitive interventions, in order to evolve students cognitive level, and consequently, raise their success rates. A systematic review was conducted and among the many researched methods we selected Lawson Classroom Test of Scientific Reasoning – LCTSR. Authorized by its author, we conducted the first translation of LCTSR to Brazilian Portuguese and administered to students of three undergraduate computing courses: Information Systems, Computer Science and Software Engineering. We also present results of its administration that we consider important to reinforce the above suggested strategy

    Test case quality: an empirical study on belief and evidence

    Full text link
    Software testing is a mandatory activity in any serious software development process, as bugs are a reality in software development. This raises the question of quality: good tests are effective in finding bugs, but until a test case actually finds a bug, its effectiveness remains unknown. Therefore, determining what constitutes a good or bad test is necessary. This is not a simple task, and there are a number of studies that identify different characteristics of a good test case. A previous study evaluated 29 hypotheses regarding what constitutes a good test case, but the findings are based on developers' beliefs, which are subjective and biased. In this paper we investigate eight of these hypotheses, through an extensive empirical study based on open software repositories. Despite our best efforts, we were unable to find evidence that supports these beliefs. This indicates that, although these hypotheses represent good software engineering advice, they do not necessarily mean that they are enough to provide the desired outcome of good testing code.Comment: 12 pages, 1 figure, 3 table

    O Teste de Mutação apoiado pelo Algoritmo Genético Coevolucionário com Classificação Genética Controlada

    Get PDF
    Este artigo situa-se no campo dos algoritmos genéticos coevolucionários que objetivam a seleção de bons subconjuntos de casos de teste e mutantes, no contexto do Teste de Mutação. Desse campo de estudo, selecionou-se e avaliou-se duas abordagens existentes. Tal avaliação, subsidiou o desenvolvimento de um novo Algoritmo Coevolucionário com Classificação Genética Controlada (AGC − CGC). Para analisar a abordagem, 164 experimentos foram realizados comparando os resultados do algoritmo proposto com outros três métodos aplicados em quatro benchmarks reais. Os resultados revelam uma melhora significativa do AGC − CGC sobre as outras abordagens quando se considera o aumento do escore de mutação sem aumentar acentuadamente o tempo de execução

    Maturity Level Assessment in Software Testing in Small and Medium-Sized Enterprises of the State of Goiás

    Get PDF
    Software testing is an important component that leads to quality software production. This paper presents the results of a framework for assessing the level of maturity in Software Testing application in the context of Small and Medium-Sized Enterprises (SMEs) based on TMMi model. Our framework includes an evaluation questionnaire based on TMMi sub-practices, support tools with examples of artifacts required to ensure that the questionnaire is thoroughly completed, as well as an automated tool support for its application, enabling SMEs to carry out self-assessment. The framework was applied in ten companies and before the results presented, it can be concluded that the companies maturity in software testing is low and that the companies positively assessed the adequacy of the framework developed for the context of SMEs

    Processo de testes exploratórios em serviços públicos digitizados : relatório técnico

    Get PDF
    Muitos países estão realizando a transformação digital de seus serviços públicos para melhorar a eficiência das atividades do governo e reduzir custos. Neste cenário, surge a necessidade de garantir a qualidade dos serviços digitizados fornecidos ao contribuinte. Este trabalho descreve o processo de validação de serviços digitizados no âmbito da jornada de Transformação Digital promovida pelo Ministério da Economia (em 2018, Ministério do Planejamento, Desenvolvimento e Gestão). O processo definido permitiu a padronização da atividade de validação, além da minimização dos impactos envolvidos neste contexto, como a ausência ou escassez de requisitos e a falta de acesso ao código-fonte dos serviços digitizados

    Object-oriented: definition, implementation and analysis of validation and testing resources

    No full text
    O desenvolvimento de software baseado no paradigma Orientado a Objetos (OO) e baseado em componentes é uma realidade. Este trabalho trata de teste e validação dentro desse contexto. Observa-se que diversos trabalhos relacionados ao teste de programas OO vêm sendo desenvolvidos. Apesar de ser um ponto controverso, alguns pesquisadores consideram que critérios de teste desenvolvidos para o teste de programas procedimentais podem ser facilmente estendidos para o teste de programas OO, pelo menos para o teste de métodos. Ainda são poucas as iniciativas de estender critérios de fluxo de dados e critérios baseados em mutação, tradicionalmente utilizados no teste de programas procedimentais, para o teste de programas OO. O presente trabalho visa a contribuir na identificação e definição de recursos de teste e validação que possam ser utilizados no teste de programas OO, com ênfase nos critérios de teste baseados em fluxo de dados e em mutação, cobrindo as fases do teste de unidade e de integração. Além disso, para apoiar a aplicação desses critérios, é de fundamental importância o desenvolvimento de ferramentas automatizadas que permitam a realização de estudos comparativos e a transferência tecnológica para a indústria. Em suma, o presente trabalho traz contribuições teóricas, com a definição de critérios de teste; empírica, com a realização de estudos empíricos; e de automatização, com a definição e implementação de um ambiente integrado de teste e validação para programas OO. Exemplos são utilizados para ilustrar as idéias e ferramentas apresentadas neste trabalho.The development of Object-Oriented (OO) and component-based software is a reality. This work investigates software testing and validation in this context. Several studies related with OO testing have been carried out. In spite of being a controversial point, some researchers state that the procedural testing criteria can be easily extended to OO program testing, for instance to the testing of methods. There are few initiatives aiming at applying data-flow and mutation-based criteria, traditionally used for procedural testing, to the test of OO programs. The present work aims at contributing to identify and define resources for OO program testing and validation, considering data-flow and mutation based testing criteria, involving the unit and integration testing phases. An integrated environment for testing and validation has been developed to support the application of these criteria. This environment provides means to comparative studies amongst the criteria and to technology transfer processes. This work provides contributions to the following testing perspectives: theoretical -- with the definition of testing criteria; empirical -- with the conduction of empirical studies; and to testing automation -- with the specification and implementation of an integrated environment for testing and validation of OO programs. Examples are provided to illustrate the ideas and tools presented in this work

    Subsidies for the establishment of testing strategy based on mutation technique.

    No full text
    Para sistematizar os testes e contornar as restrições de tempo e custo associadas à atividade de teste, diversas técnicas, critérios e ferramentas têm sido desenvolvidas. Além disso, visando ao estabelecimento de uma estratégia de teste incremental, que apresente baixo custo de aplicação e alta eficácia em revelar a presença de erros, estudos teóricos e empíricos vêm sendo conduzidos pela comunidade de teste. O presente trabalho está inserido nesse contexto e tem como objetivo a realização de estudos empíricos para comparar a adequação entre os critérios baseados em erros - Análise de Mutantes (teste de unidade) e Mutação de Interface (teste de integração) - visando ao estabelecimento de estratégias de teste de baixo custo e eficazes, que englobem todo o ciclo de desenvolvimento de software. Nessa perspectiva, algumas estratégias incrementais de aplicação dos operadores de mutação de unidade e de integração são definidas, explorando o aspecto complementar dos critérios baseados em mutação, reduzindo com isso os custos da atividade de teste durante as fases do teste de unidade e de integração, sem comprometer sua qualidade. Ainda, um conjunto essencial de operadores de mutação para o critério Mutação de Interface é apresentado.Techniques, criteria and tools have been developed and investigated making the testing activity more systematic and aiming at overcoming associated time and cost constraints. Pursuing the establishment of an incremental, low-cost and effective testing strategy, theoretical and empirical studies have been conducted by the testing community. The work proposed here is within this context and aims to conduct empirical studies for evaluating the adequacy between error based criteria - Mutation Analysis (unit testing) and Interface Mutation (integration testing). Therefore, this work intends to establish low-cost and effective testing strategies that would comprise all software development cycle. In this perspective, some incremental testing strategies for mutant operators application are defined exploring the complementary aspects of unit and integration error based criteria, reducing theirs costs without losses in testing quality. In this scope, an essential mutant operators set for Interface Mutation criterion is characterized

    Subsidies for the establishment of testing strategy based on mutation technique.

    No full text
    Para sistematizar os testes e contornar as restrições de tempo e custo associadas à atividade de teste, diversas técnicas, critérios e ferramentas têm sido desenvolvidas. Além disso, visando ao estabelecimento de uma estratégia de teste incremental, que apresente baixo custo de aplicação e alta eficácia em revelar a presença de erros, estudos teóricos e empíricos vêm sendo conduzidos pela comunidade de teste. O presente trabalho está inserido nesse contexto e tem como objetivo a realização de estudos empíricos para comparar a adequação entre os critérios baseados em erros - Análise de Mutantes (teste de unidade) e Mutação de Interface (teste de integração) - visando ao estabelecimento de estratégias de teste de baixo custo e eficazes, que englobem todo o ciclo de desenvolvimento de software. Nessa perspectiva, algumas estratégias incrementais de aplicação dos operadores de mutação de unidade e de integração são definidas, explorando o aspecto complementar dos critérios baseados em mutação, reduzindo com isso os custos da atividade de teste durante as fases do teste de unidade e de integração, sem comprometer sua qualidade. Ainda, um conjunto essencial de operadores de mutação para o critério Mutação de Interface é apresentado.Techniques, criteria and tools have been developed and investigated making the testing activity more systematic and aiming at overcoming associated time and cost constraints. Pursuing the establishment of an incremental, low-cost and effective testing strategy, theoretical and empirical studies have been conducted by the testing community. The work proposed here is within this context and aims to conduct empirical studies for evaluating the adequacy between error based criteria - Mutation Analysis (unit testing) and Interface Mutation (integration testing). Therefore, this work intends to establish low-cost and effective testing strategies that would comprise all software development cycle. In this perspective, some incremental testing strategies for mutant operators application are defined exploring the complementary aspects of unit and integration error based criteria, reducing theirs costs without losses in testing quality. In this scope, an essential mutant operators set for Interface Mutation criterion is characterized
    corecore