Extreme Programming (XP) agile methodology which stress on customer satisfaction. It empowers developers to confidently respond to changing customer requirement throughout the life cycle.
It improves productivity and introduces checkpoints where new requirement raised.
According to Ron Jeffries “Extreme Programming (XP) agile methodology is a discipline of software development based on value of simplicity, communication, feedback and courage.”
XP improves a software project in five necessary ways like communication (with their customers for detail requirement), simplicity (Keep design simple and clear), feedback (by testing specified requirement), respect (towards contribution of each team member involve in development) and courage (respond to changing requirement even late in development).
According Kent Beck XP encompasses with set of rules and practice that occurs in
A] Planning -:
Describe required features and functionality on the basis of value (priority), time and cost for software to be built. Resource and risk can be estimated and planning to be done after each requirement.
If customer want to add, change, split or eliminate something then XP considers all modifications and plan accordingly.
B] Designing -:
It provides implementation guidance. Always prefer simple design over more complexes for representation.
XP encourages for design by using
2. Spike Solution
C] Coding -:
After completion of design coding to be done followed by unit testing to provide instant feedback to the developers.
For real time problem solving and real time quality assurance coding recommends pair programming.
D] Testing -:
Continuous progress, adapted functionality and raised issues will be fixed and tested all features and functionality specifies by customer.
Characteristics of extreme programming (XP) -:
1. Define functionality
2. Continuous feedback
3. Promote pair programming
4. Test script shall be written before the code and automate
5. Always implement simple solution