Many important systems are complex. These systems have a large number of interacting entities and complex constraints, and need to satisfy nonfunctional requirements. We use Semantic Analysis Patterns (SAPs), a type of analysis pattern in which each pattern corresponds to a basic set of use cases, to build a global conceptual model in an incremental way. This global model provides XP with a structure in which global aspects such as distribution, security, and testability can be considered. SAPs can also be used at each incremental stage in XP to guarantee the application of good software development principles.