We have an Extreme Programming team at a small company dedicated to the Agile approach. Our team of 7 developers decided to use the pairing session as the fundamental unit of work for all organizing, planning, estimating, tracking, and of course, pair programming. It's been a great way to structure the day, provide rhythm and facilitate partner swaps. Estimating and tracking in pairing sessions provides us concrete feedback for improving estimates. This approach constitutes a hybrid between real time and abstractunit estimating, resulting in highly effective planning and an extremely stable velocity. We have been working this way for about a year and have been exceptionally pleased with the results.