For her PhD research project, Angela Martin investigated the way that agile development methodologies impacted the working relationships between developers and their customers–“Not how people think it should have worked, as is so often reported, but how it really worked.”
She identified two different strategies that helped companies overcome problems that had emerged in the development process and create better applications. First, when developers weren’t getting enough information from customers, some companies took a “customer apprentice” approach where developers did some of the customers’ work in generating user-stories. This gave the developers new appreciation for the customers, helped move the development process forward and made the team more cohesive.
Another approach, which she calls, “programmer on-site,” involves the programmer actually going to the customer’s location and watching an individual use the application. This practice can help developers uncover new ways that applications can be improved.