On the
HamburgXpUsersGroup meeting on march, 17 there was the question how
ExtremeProgramming ensures that the customer goal is really reached/approached.
Or how and if the process fills the
SemanticGap between the customer's wishes
and the actual implementation.
XP was challenged by the critique that XP has
AcceptanceTests only on the
lower (semantic) level, and that there is no process control, that these
low-level tests match up and build up to the customer goal at large.
The example was driving by car from Hamburg/Germany to New York - which will fail if I look only at the local problem at hand: I can drive all around Eurasias coasts without ever getting nearer than the French coast.
The result of our discussion was the following hierarchy (high to low abstraction) :
The lower we go the faster the goal changes and the more relevant sub-goals exist. In a way the project vision is broken down into
UserStories, which are prioritized and broken down into parts and then assigned time and people.
AcceptanceTests are broken down into parts and drive the development of the
UnitTests which again drive a actual implementation.
This implicit hierarchy ensures, that the sub-goals add up to the ultimate customer satisfaction if XP is done properly.
See also
SemanticGap