Publicações por veículo
Periódicos
Transactions on Software Engineering (TSE)
How Developers Engineer Test Cases: An Observational Study
Um dos principais desafios que os desenvolvedores enfrentam ao testar seus sistemas reside em casos de testes de engenharia que sejam bons o suficiente para revelar bugs. E...
Ver publicação : How Developers Engineer Test Cases: An Observational StudyThe Effectiveness of Supervised Machine Learning Algorithms in Predicting Software Refactoring
Refatoração é o processo de alteração da estrutura interna do software para melhorar sua qualidade sem modificar seu comportamento externo. Antes de realizar atividades de ...
Ver publicação : The Effectiveness of Supervised Machine Learning Algorithms in Predicting Software RefactoringThe Adoption of JavaScript Linters in Practice: A Case Study on ESLint
Um linter é uma ferramenta de análise estática que alerta os desenvolvedores de software sobre possíveis erros de código ou violações dos padrões de codificação. Ao usar es...
Ver publicação : The Adoption of JavaScript Linters in Practice: A Case Study on ESLintEmpirical Software Engineering (EMSE)
An Empirical Catalog of Code Smells for the Presentation Layer of Android Apps
Os desenvolvedores de software, incluindo os da plataforma móvel Android, buscam constantemente melhorar a manutenibilidade e evolução de seus aplicativos. Os code smells s...
Ver publicação : An Empirical Catalog of Code Smells for the Presentation Layer of Android AppsMock objects for testing java systems: Why and how developers use them, and how they evolve
Ao testar artefatos de software que possuem diversas dependências, tem-se a possibilidade de instanciar essas dependências ou usar objetos simulados para simular o comporta...
Ver publicação : Mock objects for testing java systems: Why and how developers use them, and how they evolveCode smells for Model-View-Controller architectures
Estudos anteriores mostraram os efeitos negativos que o código de baixa qualidade pode ter nos proxies de manutenção, como a propensão a alterações de código e a defeitos. ...
Ver publicação : Code smells for Model-View-Controller architecturesJournal of Systems and Software (JSS)
Unusual Events in GitHub Repositories
Em projetos de software grandes e ativos, torna-se impraticável para um desenvolvedor ficar atento a todas as atividades do projeto. Embora possa não ser necessário saber s...
Ver publicação : Unusual Events in GitHub RepositoriesPeerJ
Log-based Software Monitoring: A Systematic Mapping Study
O desenvolvimento e as operações de software moderno dependem do monitoramento para entender como os sistemas se comportam na produção. Os dados fornecidos pelos logs de ap...
Ver publicação : Log-based Software Monitoring: A Systematic Mapping StudyJournal of the Brazilian Computer Society (JBCS)
Does test-driven development improve class design? A qualitative study on developers’ perceptions
Antecedentes: Os desenvolvedores comumente afirmam que escrever testes unitários melhora a qualidade interna de um software, além de ter um efeito mais óbvio na qualidade e...
Ver publicação : Does test-driven development improve class design? A qualitative study on developers’ perceptionsConferências
International Conference on Software Engineering (ICSE)
Search-Based Software Re-Modularization: A Case Study at Adyen
Decidir o que constitui um único módulo, quais classes pertencem a qual módulo ou o conjunto certo de módulos para um sistema de software específico sempre foi uma tarefa d...
Ver publicação : Search-Based Software Re-Modularization: A Case Study at AdyenAutomatically Identifying Parameter Constraints in Complex Web APIs: A Case Study at Adyen
As APIs da Web podem ter restrições de parâmetros, de modo que nem todos os parâmetros são sempre obrigatórios ou sempre opcionais. Além disso, a presença ou o valor de um ...
Ver publicação : Automatically Identifying Parameter Constraints in Complex Web APIs: A Case Study at AdyenGrading 600+ students: A Case Study on Peer and Self Grading
Classificar turmas grandes tornou-se uma tarefa desafiadora e cara para muitas universidades. A Universidade de Tecnologia de Delft (TU Delft), localizada na Holanda, obser...
Ver publicação : Grading 600+ students: A Case Study on Peer and Self GradingCurrent Challenges in Practical Object-Oriented Software Design
De acordo com o extenso corpo de conhecimento de 50 anos em programação e design orientado a objetos, bons designs de software são, entre outras características, pouco acop...
Ver publicação : Current Challenges in Practical Object-Oriented Software DesignUnderstanding Developers’ Needs on Deprecation as a Language Feature
A descontinuação é um recurso de linguagem que permite aos produtores de API marcar um recurso como obsoleto. Nosso objetivo é obter uma compreensão profunda das necessidad...
Ver publicação : Understanding Developers’ Needs on Deprecation as a Language FeatureWhen Testing Meets Code Review: Why and How Developers Review Tests
O teste automatizado é considerado um processo essencial para garantir a qualidade do software. No entanto, escrever e manter código de teste de alta qualidade é desafiador...
Ver publicação : When Testing Meets Code Review: Why and How Developers Review TestsHow Modern News Aggregators Help Development Communities Shape and Share Knowledge
Muitos desenvolvedores contam com sites agregadores de notícias modernos, como reddit e hackernews, para se manterem atualizados com os mais recentes desenvolvimentos e ten...
Ver publicação : How Modern News Aggregators Help Development Communities Shape and Share KnowledgeAn Exploratory Study on Faults in Web API Integration in a Large-Scale Payment Company
As arquiteturas orientadas a serviços são mais populares do que nunca e cada vez mais empresas e organizações dependem de serviços oferecidos por meio de APIs Web. Os recur...
Ver publicação : An Exploratory Study on Faults in Web API Integration in a Large-Scale Payment CompanySearch-Based Test Data Generation for SQL Queries
Os sistemas centrados em banco de dados dependem fortemente de consultas SQL para gerenciar e manipular seus dados. Esses comandos SQL podem variar desde seleções muito sim...
Ver publicação : Search-Based Test Data Generation for SQL QueriesFoundations on Software Engineering (FSE)
Selecting third-party libraries: The practitioners' perspective
A seleção de bibliotecas de terceiros é um elemento essencial de praticamente qualquer projeto de desenvolvimento de software. No entanto, decidir quais bibliotecas escolhe...
Ver publicação : Selecting third-party libraries: The practitioners' perspectiveMonitoring-Aware IDEs
A engenharia de software moderno em grande escala exige que os desenvolvedores de software não se concentrem apenas em escrever código, mas também examinem continuamente os...
Ver publicação : Monitoring-Aware IDEsPyDriller: Python Framework for Mining Software Repositories
Os repositórios de software contêm informações históricas e valiosas sobre o desenvolvimento geral de sistemas de software. Repositórios de software de mineração (MSR) são ...
Ver publicação : PyDriller: Python Framework for Mining Software RepositoriesInternational Conference on Software Maintenance and Evolution (ICSME)
Comprehending Test Code: An Empirical Study
Os desenvolvedores gastam grande parte de seu tempo e esforço na compreensão do código-fonte. Embora muitos estudos tenham investigado como os desenvolvedores abordam essas...
Ver publicação : Comprehending Test Code: An Empirical StudyAn Experience Report on Applying Passive Learning in a Large-Scale Payment Company
As técnicas de aprendizagem passiva inferem modelos gráficos sobre o comportamento de um sistema a partir de grandes registros de rastreamento. A comunidade de pesquisa tem...
Ver publicação : An Experience Report on Applying Passive Learning in a Large-Scale Payment CompanyA Validated Set of Smells in Model-View-Controller Architecture
Os code smells são sintomas de escolhas inadequadas de design e implementação que podem prejudicar a compreensão do código e possivelmente aumentar a propensão a mudanças e...
Ver publicação : A Validated Set of Smells in Model-View-Controller ArchitectureInternational Conference on Program Comprehension (ICPC)
Atoms of Confusion in Java
Embora escrever código às vezes pareça trivial, surgem problemas quando os humanos interpretam mal o que o código realmente faz. Uma das causas potenciais são os “átomos de...
Ver publicação : Atoms of Confusion in JavaInteractive Static Software Performance Analysis in the IDE
Detectar problemas de desempenho devido a código abaixo do ideal durante o processo de desenvolvimento pode ser uma tarefa difícil, especialmente quando se trata de localiz...
Ver publicação : Interactive Static Software Performance Analysis in the IDEMineração de repositórios de software (MSR)
An Exploratory Study of Log Placement Recommendation in an Enterprise System
O registro em log é uma prática de desenvolvimento que desempenha um papel importante nas operações e no monitoramento de sistemas complexos. Os desenvolvedores colocam ins...
Ver publicação : An Exploratory Study of Log Placement Recommendation in an Enterprise SystemLearning Off-By-One Mistakes: An Empirical Study
Erros em condições binárias são uma fonte de erros em muitos sistemas de software. Eles acontecem quando os desenvolvedores usam, por exemplo, < or > em vez de <= ...
Ver publicação : Learning Off-By-One Mistakes: An Empirical StudyTracing Back Log Data to its Log Statement: From Research to Practice
Os logs são amplamente utilizados como fonte de informação para compreender a atividade dos sistemas de computador e monitorar sua saúde e estabilidade. No entanto, a maior...
Ver publicação : Tracing Back Log Data to its Log Statement: From Research to PracticeTo Mock or Not To Mock? An Empirical Study on Mocking Practices
Ao escrever testes de unidade automatizados, os desenvolvedores geralmente lidam com artefatos de software que possuem diversas dependências. Nestes casos, tem-se a possibi...
Ver publicação : To Mock or Not To Mock? An Empirical Study on Mocking PracticesMetricMiner: Supporting Researchers in Mining Software Repositories
Pesquisadores utilizam técnicas de repositório de software de mineração (MSR) para estudar engenharia de software de forma empírica, por meio de análise de artefatos, como ...
Ver publicação : MetricMiner: Supporting Researchers in Mining Software RepositoriesAutomated Software Engineering (ASE)
Why and How JavaScript Developers Use Linters
Ferramentas automáticas de análise estática ajudam os desenvolvedores a identificar automaticamente problemas de código em seus softwares. Eles podem ser de extremo valor e...
Ver publicação : Why and How JavaScript Developers Use LintersSoftware Analysis, Evolution and Reenginering (SANER / CSMR)
What Do the Asserts in a Unit Test Tell Us about Code Quality? A Study on Open Source and Industrial Projects
Os testes de unidade e o código de produção estão intrinsecamente conectados. Uma classe fácil de testar geralmente apresenta características desejáveis, como baixo acoplam...
Ver publicação : What Do the Asserts in a Unit Test Tell Us about Code Quality? A Study on Open Source and Industrial ProjectsMobileSoft
Logging Practices with Mobile Analytics: An Empirical Study on Firebase
Os logs de software são de grande valor em projetos industriais e de código aberto. O registro de análise móvel permite que os desenvolvedores coletem registros dos usuário...
Ver publicação : Logging Practices with Mobile Analytics: An Empirical Study on FirebaseTechnical Symposium on Computer Science Education (SIGCSE)
Pragmatic Software Testing Education
O teste de software é um tópico importante no ensino de engenharia de software e, ainda assim, altamente desafiador do ponto de vista educacional: os alunos são obrigados a...
Ver publicação : Pragmatic Software Testing EducationA Collaborative Approach to Teaching Software Architecture
Ensinar arquitetura de software é difícil. O tema é abstrato e é melhor compreendido vivenciando-o, o que requer escala adequada para compreender plenamente sua complexidad...
Ver publicação : A Collaborative Approach to Teaching Software ArchitectureWorking Conference on Source Code Analysis and Manipulation (SCAM)
SATT: Tailoring Code Metric Thresholds for Different Software Architectures
A análise métrica de código é uma abordagem bem conhecida para avaliar a qualidade de um sistema de software. No entanto, as ferramentas e técnicas atuais não levam em cons...
Ver publicação : SATT: Tailoring Code Metric Thresholds for Different Software ArchitecturesMetricMiner: Supporting Researchers in Mining Software Repositories
Pesquisadores utilizam técnicas de repositório de software de mineração (MSR) para estudar engenharia de software de forma empírica, por meio de análise de artefatos, como ...
Ver publicação : MetricMiner: Supporting Researchers in Mining Software RepositoriesBrazilian Symposium on Software Engineering (SBES)
Developers' Perceptions on Object-Oriented Design and System Architecture
Os desenvolvedores de software geralmente contam com padrões de arquitetura de software bem conhecidos, como MVC, para construir seus aplicativos. Em muitos desses padrões,...
Ver publicação : Developers' Perceptions on Object-Oriented Design and System ArchitectureAgile Conference (AGILE)
Increasing Learning in an Agile Environment: Lessons Learned in an Agile Team
O aprendizado é uma parte importante do processo de desenvolvimento de software. Há muitas vantagens para os desenvolvedores dispostos a aprender: maior qualidade interna e...
Ver publicação : Increasing Learning in an Agile Environment: Lessons Learned in an Agile TeamWorkshops
OffSide: Learning to Identify Mistakes in Boundary Conditions
Erros nas condições de contorno são a causa de muitos bugs no software. Esses erros acontecem quando, por exemplo, os desenvolvedores fazem uso de ‘<’ or ‘>’ nos caso...
Ver publicação : OffSide: Learning to Identify Mistakes in Boundary ConditionsDomain-Based Fuzzing for Supervised Learning of Anomaly Detection in Cyber-Physical Systems
Uma nova abordagem é proposta para a construção de modelos de detectores de anomalias utilizando aprendizagem supervisionada a partir dos traços de operações normais e anor...
Ver publicação : Domain-Based Fuzzing for Supervised Learning of Anomaly Detection in Cyber-Physical SystemsWhere does Google find API documentation?
A documentação de APIs populares está espalhada por vários formatos, desde documentação de referência com curadoria de fornecedores até threads Stack Overflow. Para os dese...
Ver publicação : Where does Google find API documentation?Preparing for a Test Driven Development Session
O desenvolvimento orientado a testes (TDD) é uma técnica de desenvolvimento usada para projetar classes em um sistema de software, primeiro criando testes antes de implemen...
Ver publicação : Preparing for a Test Driven Development SessionAre the Methods in Your Data Access Objects (DAOs) in the Right Place? A Preliminary Study
Isolar o código que trata da infraestrutura do sistema do código que trata das regras de domínio é uma boa prática ao desenvolver aplicativos. O código que lida com o banco...
Ver publicação : Are the Methods in Your Data Access Objects (DAOs) in the Right Place? A Preliminary StudyMost common mistakes in test-driven development practice: Results from an online survey with developers
O desenvolvimento orientado a testes (TDD) é uma prática de desenvolvimento de software que supostamente leva a melhor qualidade e menos defeitos no código. TDD é uma práti...
Ver publicação : Most common mistakes in test-driven development practice: Results from an online survey with developersThe Prevalence of Code Smells in Machine Learning projects
A Inteligência Artificial (IA) e o Aprendizado de Máquina (ML) estão difundidos no cenário atual da ciência da computação. No entanto, ainda existe uma falta de experiência...
Ver publicação : The Prevalence of Code Smells in Machine Learning projects