Extreme programming is a software methodology developed by Kent Beck to help software developers to design and build a system more efficiently and successfully. Extreme programming is a disciplined and well-planned approach to software development. What makes this programming so popular is that it is one of the first lightweight methodologies. A lightweight methodology has only a few rules and practices or ones that are easy to follow. Extreme programming does not require any additional paperwork and programmers do not need to go through tons of methods. It stresses customer satisfaction and can be used when the customer is not certain of his requirements or when new technology is to be introduced.