Towards a TDD maturity model through an anti-patterns framework
- URL: http://arxiv.org/abs/2307.11534v1
- Date: Fri, 21 Jul 2023 12:30:20 GMT
- Title: Towards a TDD maturity model through an anti-patterns framework
- Authors: Matheus Marabesi, Francisco Jose Garcia-Penalvo, Alicia Garcia-Holgado
- Abstract summary: This paper proposes a research project that explores the TDD anti-patterns context and what leads practitioners to face them in the software development context.
As a result, we expect to offer a TDD maturity framework to help practitioners in the process of writing code guided by tests.
- Score: 0.0
- License: http://creativecommons.org/licenses/by-sa/4.0/
- Abstract: Agile software development has been adopted in the industry to quickly react
to business change. Since its inception both academia and industry debate the
different shades that agile processes and technical practices play in the
day-to-day of students and professional developers. Efforts have been made to
understand the pros and cons of the Test Driven Development (TDD) practice to
develop software as part of a professional environment. Despite the effort of
practitioners to list the TDD anti-patterns that unveil undesired effects in
the code when practicing TDD, work is needed to understand the causes that lead
to that. In that sense, this paper proposes a research project that explores
the TDD anti-patterns context and what leads practitioners to face them in the
software development context. As a result, we expect to offer a TDD maturity
framework to help practitioners in the process of writing code guided by tests
and prevent the addition of anti-patterns
Related papers
- Codev-Bench: How Do LLMs Understand Developer-Centric Code Completion? [60.84912551069379]
We present the Code-Development Benchmark (Codev-Bench), a fine-grained, real-world, repository-level, and developer-centric evaluation framework.
Codev-Agent is an agent-based system that automates repository crawling, constructs execution environments, extracts dynamic calling chains from existing unit tests, and generates new test samples to avoid data leakage.
arXiv Detail & Related papers (2024-10-02T09:11:10Z) - The role of slicing in test-driven development [39.01665062857323]
Test-driven development (TDD) is a widely used agile practice.
We propose a theoretical framework for TDD, with the following characteristics.
We have checked the connections among TDD, contracts, and slices using a controlled experiment conducted in the industry.
arXiv Detail & Related papers (2024-07-18T08:10:38Z) - A Formal Analysis of Iterated TDD [0.0]
We formally analyze the software methodology called (iterated) Test Driven Development (TDD)
We find a context in which iterated TDD provably produce'' provably correct code'' while being stable in terms of iterated code churns.
We argue that the research finding of ineffective'' iterated TDD found by earlier researches are due to missing this context, while the findings of effective'' iterated TDD is due to accidentally falling into the context or simply placebo.
arXiv Detail & Related papers (2024-07-04T08:07:35Z) - Generative AI for Test Driven Development: Preliminary Results [2.5385600700122737]
Test Driven Development (TDD) is one of the major practices of Extreme Programming.
Generative AI (GenAI) may reduce the extra effort imposed by TDD.
arXiv Detail & Related papers (2024-05-17T15:26:10Z) - Automating TODO-missed Methods Detection and Patching [8.368184231403447]
We propose TDPatcher (TO-comment Patcher), to automatically patch comments to the-missed methods in software projects.
Our model has two main stages: offline learning and online inference.
We built our dataset by collecting and evaluating methods from the top-10,000 Python GitHub repositories.
arXiv Detail & Related papers (2024-05-10T03:38:28Z) - Test-Driven Development for Code Generation [0.850206009406913]
Large Language Models (LLMs) have demonstrated significant capabilities in generating code snippets directly from problem statements.
This paper investigates if and how Test-Driven Development (TDD) can be incorporated into AI-assisted code-generation processes.
arXiv Detail & Related papers (2024-02-21T04:10:12Z) - Leveraging Large Language Models to Boost Dafny's Developers
Productivity [49.64902130083662]
This paper proposes leveraging Large Language Models (LLMs) to enhance the productivity of Dafny developers.
A new Dafny plugin generates suggestions for relevant lemmas that Dafny is unable to discover and use.
For the lemmas that cannot be proved automatically, the plugin also attempts to provide accompanying calculational proofs.
arXiv Detail & Related papers (2024-01-01T21:58:13Z) - CONCORD: Clone-aware Contrastive Learning for Source Code [64.51161487524436]
Self-supervised pre-training has gained traction for learning generic code representations valuable for many downstream SE tasks.
We argue that it is also essential to factor in how developers code day-to-day for general-purpose representation learning.
In particular, we propose CONCORD, a self-supervised, contrastive learning strategy to place benign clones closer in the representation space while moving deviants further apart.
arXiv Detail & Related papers (2023-06-05T20:39:08Z) - ReACC: A Retrieval-Augmented Code Completion Framework [53.49707123661763]
We propose a retrieval-augmented code completion framework, leveraging both lexical copying and referring to code with similar semantics by retrieval.
We evaluate our approach in the code completion task in Python and Java programming languages, achieving a state-of-the-art performance on CodeXGLUE benchmark.
arXiv Detail & Related papers (2022-03-15T08:25:08Z) - Empowered and Embedded: Ethics and Agile Processes [60.63670249088117]
We argue that ethical considerations need to be embedded into the (agile) software development process.
We put emphasis on the possibility to implement ethical deliberations in already existing and well established agile software development processes.
arXiv Detail & Related papers (2021-07-15T11:14:03Z)
This list is automatically generated from the titles and abstracts of the papers in this site.
This site does not guarantee the quality of this site (including all information) and is not responsible for any consequences.