Unlike most software-development methodologies, XP has specific practices that describe how actual coding is done. Practices such as testing and pair programming offer easy-to-follow, practical guidance to developers. XP is not just mechanical assembling of practices, but is built on values and principles.