Je pensais au développement de logiciels et à l'écriture de tests unitaires. J'ai eu l'idée suivante:
Supposons que nous ayons des paires de développeurs. Chaque paire est responsable d'une partie du code. L'un de la paire implémente une fonctionnalité (écriture de code) et le second écrit un test unitaire pour cela. Les tests sont écrits après le code. Dans mon idée, ils s'entraident, mais travaillent plutôt séparément. Idéalement, ils travailleraient sur deux fonctionnalités de taille similaire, puis échangeraient pour la préparation du test.
Je pense que cette idée a quelques avantages:
- les tests sont écrits par quelqu'un, qui peut en savoir plus sur la mise en œuvre,
- le travail doit être fait un peu plus vite que la programmation en binôme (deux fonctionnalités en même temps),
- les tests et le code en ont la personne responsable,
- le code est testé par au moins deux personnes, et
- peut-être que la recherche d'erreurs dans le code écrit par une personne qui teste votre code donnerait une motivation particulière pour écrire un meilleur code et éviter de couper les coins ronds.
Peut-être que c'est aussi une bonne idée d'ajouter un autre développeur pour la révision du code entre le code et le développement des tests.
Quels sont les inconvénients de cette idée? Est-il déjà décrit comme une méthodologie inconnue et utilisé dans le développement de logiciels?
PS. Je ne suis pas un chef de projet professionnel, mais je sais quelque chose sur les processus de développement de projet et je connais les quelques méthodologies les plus populaires - mais cette idée ne me semble pas familière.
assert true
comme des tests et l'appeler un jour parce que chaque test passait. Il manquait une étape importante: les tests devaient d'abord échouer, et devaient être réussis en changeant le code, pas les tests.