Programmers sit together at the same computer to develop software.
- Pairs are created dynamically; all team members work with each other.
- Enables knowledge sharing and learning; reduces overall risks when a team member leaves the project.
- Not necessarily efficient.
It can be done in different ways:
- driver and co-pilot; different roles
- frequent switching