La programmation en binôme (ou pair programming en anglais) est une méthode de travail dans laquelle deux développeurs travaillent ensemble sur la même partie de code, en binôme sur un même poste de travail.
La programmation se fait par deux, en binôme :
Les rôles s'échangent régulièrement pendant la séance de programmation.
Les développeurs peuvent changer de partenaires d'une séance à l'autre pour améliorer la connaissance collective de l'application et la communication au sein de l'équipe.
Avec les applications distribuées, la notion d’interaction avec l’environnement a commencé à se faire ressentir et les modèles d’analyses furent progressivement confrontés aux contraintes externes qui introduisaient aléas et difficultés aux problèmes qui n’étaient plus conformes à un cas théorique idéal.
Le concept d’intelligence ambiante et le modèle hyper-distribué qu'il implique, accroit l’urgence entre le problème et la disponibilité de la solution.
L'eXtreme Programming également dénommée " programmation par paires " , suggère des cycles de développement très rapides (des itérations de quelques semaines) : la phase d'exploration détermine les scénarios clients qui seront implémentés pendant une itération. L'équipe traduit les scénarios en tâches à réaliser et en tests fonctionnels. Chaque développeur s'attribue des tâches et les réalise avec un binôme. Dès que l’ensemble de tous les tests fonctionnels sont satisfaits, le produit est livré.