I am a teacher and passionate software engineer with 14 years of professional experience. I currently work with JSF, JPA and EJB. Supporting the SIGA EPTC system that is used throughout the Federal Institute of Tocantins.
The IFTO is an institution of higher, basic and professional education, pluricurricular and multicampi (rector, campus, advanced campus and distance education centers), specialized in offering professional and technological education in different teaching modalities, based on the combination of technical and technological knowledge with their pedagogical/andragogic practices.
Aug 2014 - Fev 2022, Dianópolis-TO / Paraíso do Tocantins-TO
The IFTO is an institution of higher, basic and professional education, pluricurricular and multicampi (rector, campus, advanced campus and distance education centers), specialized in offering professional and technological education in different teaching modalities, based on the combination of technical and technological knowledge with their pedagogical/andragogic practices.
March 2013 - Aug 2014, Palmas-TO
SETAS, a public administration body of the Executive Power created on December 22, 1995, directly and immediately assists the State Government of Tocantins in the performance of its duties to plan, coordinate, guide and execute the State Policy on Social Assistance, Solidarity Economy , Labor and Food Security, aiming at economic and social development.
M2M Solutions is a provider of Information Technology solutions for the management and optimization of transport operations, serving bus companies, government, unions and end users. Development of management systems for urban public transport, using geographic data.
Founded in 2004, Pitang was the result of a spinoff from the Commercial Projects area of the C.E.S.A.R., one of the main innovation institutes in the country. We develop high quality services and solutions in Information and Communication Technology, focusing on market demands in an innovative way, through the development of exclusive projects that support the digital transformation of our customers using skills in Cognitive Computing, Digital Experience Platforms, Analytics , Cloud Computing, Mobile Apps, UX, Agility, DevOps and Testing.
Jan 2008 - Dez 2008, Fortaleza, CE, Brasil
The UFPE Informatics Center is one of the most renowned centers for teaching and research in computing in Brazil and Latin America, training qualified professionals and excellence in Information and Communication Technology (ICT).
The Faculty of Petrolina (FACAPE) was created in the form of a Municipal Autarchy with the name Educational Autarchy of the São Francisco Valley - AEVSF, by municipal law nº 25/76 of July 19, 1976.
JNose Test is a tool developed to automatically detect test smells in test code, and to collect coverage metrics.
JNose plugin for Jenkins
Bus fleet management system.
Integrated Academic Management System for Professional and Technological Education. Developed with JSF, JPA and EJB.
A simple time attendance system made with Java, Wicket and Hibernate.
Agile project management system, made with Java and Wicket.
Print management system with login through LDAP.
Reservation system for laboratories and resources, which can be used in various types of institutions.
Effective test code refactoring is essential for maintaining the quality and efficiency of software development. Automated support for test code refactoring can significantly enhance its cost-effectiveness. However, there is limited evidence on the effectiveness of such automated support, especially for addressing Assertion Roulette and Duplicate Assert test smells. To address this gap, we present RAIDE, an Eclipse IDE plugin that provides an easy-to-use approach to identifying and refactoring test smells. In this study, we conduct a controlled experiment with twenty participants to evaluate RAIDE’s capability to detect and refactor Assertion Roulette and Duplicate Assert test smells. The results demonstrate that RAIDE outperforms comparable state-of-the-art approaches in detecting test smells, and can detect and refactor test smells in a fraction of the time. Our findings highlight the potential benefits of automated test code refactoring support for improving the efficiency and effectiveness of software development, and suggest avenues for future research to extend and evaluate RAIDE for handling other test smells and refactoring techniques.
Test smells can reduce the developers’ ability to interact with the test code. Refactoring test code offers a safe strategy to handle test smells. However, the manual refactoring activity is not a trivial process, and it is often tedious and error-prone. This study aims to evaluate RAIDE, a tool for automatic identification and refactoring of test smells. We present an empirical assessment of RAIDE, in which we analyzed its capability at refactoring Assertion Roulette and Duplicate Assert test smells and compared the results against both manual refactoring and a state-of-the-art approach. The results show that RAIDE provides a faster and more intuitive approach for handling test smells than using an automated tool for smells detection combined with manual refactoring
O teste de software é uma atividade-chave para o desenvolvimento de software de qualidade, sendo tão ou mais custoso do que o desenvolvimento do código de produção. De modo a reduzir os custos de projetos de software, o uso de ferramentas de geração automatizada de testes, tais como Randoop e Evosuite tem sido fortemente encorajado. No entanto, é necessário obter evidências sobre como o uso dessas ferramentas afeta a qualidade dos testes. Neste sentido, o presente estudo apresenta uma avaliação empírica da qualidade de testes gerados automaticamente, sob a perspectiva de test smells. O estudo contemplou o desenvolvimento de uma ferramenta open source de coleta e análise automatizada de test smells, a JNose Test, no desenvolvimento da ferramenta foi realizado estudo utilizando 11 projetos open source para verificar a relação entre test smells e a cobertura dos testes, e posteriormente no segundo estudo que avaliou a qualidade de testes gerados automaticamente para 21 projetos open source. No primeiro estudo encontramos relações fortes entre métricas de cobertura e test smells, e no segundo estudo os resultados indicam uma alta difusão dos test smells e co-ocorrências entre diferentes tipos de test smells nos projetos avaliados. Além disso, foi identificada uma alta difusão de test smells nos códigos de teste gerados pelas ferramentas Evosuite e Randoop que, frequentemente, estão correlacionados.
Several strategies have supported test quality measurement and analysis. For example, code coverage, a widely used one, enables verification of the test case to cover as many source code branches as possible. Another set of affordable strategies to evaluate the test code quality exists, such as test smells analysis. Test smells are poor design choices in test code implementation, and their occurrence might reduce the test suite quality. A practical and largescale test smells identification depends on automated tool support. Otherwise, test smells analysis could become a cost-ineffective strategy. In an earlier study, we proposed the JNose Test, automated tool support to detect test smells and analyze test suite quality from the test smells perspective. This study extends the previous one in two directions: i) we implemented the JNose-Core, an API encompassing the test smells detection rules. Through an extensible architecture, the tool is now capable of accomodating new detection rules or programming languages; and ii) we performed an empirical study to evaluate the JNose Test effectiveness and compare it against the state-of-the-art tool, the tsDetect. Results showed that the JNose-Core precision score ranges from 91% to 100%, and the recall score from 89% to 100%. It also presented a slight improvement in the test smells detection rules compared to the tsDetect for the test smells detection at the class level.
Several strategies have been proposed for test quality measurement and analysis. Code coverage is likely the most widely used one. It enables to verify the ability of a test case to cover as many source code branches as possible. Although code coverage has been widely used, novel strategies have been recently employed. It is the case of test smells analysis, which has been introduced as an affordable strategy to evaluate the quality of test code. Test smells are poor design choices in implementation, and their occurrence in test code might reduce the quality of test suites. Test smells identification is clearly dependent on tool support, otherwise it could become a cost-ineffective strategy. However, as far as we know, there is no tool that combines code coverage and test smells to address test quality measurement. In this work, we present the JNose Test, a tool aimed to analyze test suite quality in the perspective of test smells. JNose Test detects code coverage and software evolution metrics and a set of test smells throughout software versions.
Developing test code can be as or more expensive than developing production code. Commonly, developers use automated unit test generators to speed up software testing. The purpose of such tools is to shorten production time without decreasing code quality. Nonetheless, unit tests usually do not have a quality check layer above testing code, which might be hard to guarantee the quality of the generated tests. A strategy to verify the tests quality is to analyze the presence of test smells in test code. Test smells are characteristics in the test code that possibly indicate weaknesses in test design and implementation. Their presence could be used as a quality indicator. In this paper, we present an empirical study to analyze the quality of unit test code generated by automated test tools. We compare the tests generated by two tools (Randoop and Evo- Suite) with the existing unit test suite of twenty-one open-source Java projects. We analyze the unit test code to detect the presence of nineteen types of test smells. The results indicated significant differences in the unit test quality when comparing data from the automated unit test generators and existing unit test suites.
Test smells are fragments of code that can affect the comprehensibility and the maintainability of the test code. Preventing, detecting, and correcting test smells are tasks that may require a lot of effort, and might not scale to large-sized projects when carried out manually. Currently, there are many tools available to support test smells detection. However, they usually do not provide neither a user-friendly interface nor automated support for refactoring the test code to remove test smells. In this work, we propose RAIDE, an open-source and IDE-integrated tool. RAIDE assists testers with an environment for automated detection of lines of code affected by test smells, as well as a semi-automated refactoring for Java projects using the JUnit framework.
Software testing is a key practice in the software quality assurance process. Usually, the quality of a test is not analyzed before its execution, i.e., there are no tests to check the tests. When the quality of tests is not guaranteed, it may impair the quality of the software. Test Smells are an alternative to indicate problems in the test code that can affect test maintainability, more specifically readability and comprehension. This study investigates correlations between test coverage and test smells types. We also introduce the JNose Test, a tool to automate test smells detection. We analyzed 11 open source projects and detected 21 types of smells and 10 different test coverage metrics to each test class. We identified 63 out of 210 calculated correlations. Our results show that there is a relationship between test smells and test coverage, in which test smells may influence code coverage. Our findings might support software testers and help them understand the behavior and consequences of poorly written and designed tests.
According to the ILO (International Labour Organisation) about 218 million children between 5 and 17 years working in the world, of which 50% have jobs at risk. On the basis of this information, arising questions on how to understand and find the factors that comprise the ratings of child labour, and which properties are important to analyze these cases.With the use of data mining techniques to find valid patterns on Brazilian social databases were evaluated data of child labour in the State of Tocantins (located north of Brazil with a territory of 277 thousand and composed of 139 cities).This work aims to identify factors that are deterministic to the practice of child labour and their relationships with financial indicators, educational, social, and regional generating information that are not explicit in the Government database, thus enabling a better monitoring and updating policies to that end.
The ‘Scrum Fundamentals Certified’ course is designed to help anyone interested in learning more about Scrum; learn about the main concepts of Scrum as defined in the SBOK® Guide; and gain a basic understanding of how the Scrum framework works in delivering successful projects. The objective of the ‘Scrum Fundamentals Certified’ exam is to confirm that you have a basic understanding of the Scrum framework.
The TOEFL ITP test of English language proficiency is accepted by Universities around the world. In addition to being used by language schools and educational internationalization programs. Due to its academic nature, it can be used by students who want to monitor their evolution in the language and especially for those who will participate in academic exchange programs.
An Oracle Certified Professional, Java SE 6 Programmer has experience using the Java programming language, understands the basic syntax and structure of the Java programming language and can create Java technology applications that run on server and desktop systems using J2SE 6.0.
Install and configure LDAP and DNS services, and integrate with them other services such as Email, Web, SSL and additional services such as Proxy, DHCP, SSH and FTP. Also learn how to install and operate the integration with the Windows system through the Samba software. At an advanced level, the course presents forms of integrated authentication using the LDAP service, and through practical scenarios that facilitate the understanding of the concepts associated with each of the services studied.