The extreme programming (XP) approach advocates the deliberate delay of certain system features until the time that they are needed. There is also a high expectation of changes in the user requirement even as the project progresses, implying that the problem can be understood better. Extreme programming (XP) encourages frequent communication between the user and developer.
Extreme programming (XP) describes four basic activities, namely:
- CODING: Where XP developers emphasize code during system development. The coding of a developer’s thoughts is not uncommon in XP as such.
- TESTING: Which is the surest way of ensuring that a function works. The XP perception is that more testing will eliminate more flaws. Testathon is the term describing the collaborative testing approach, which is a common phenomenon in XP. Tests are typically unit and acceptance.
- LISTENING: Developers in XP must develop a keen ear for the user and business logic needs. This is necessary to ensure that as the user stories are translated into code or functional components, all the required detail is incorporated to satisfy that particular requirement.
- DESIGNING: Design in XP ascribes to the coding principles of coupling and cohesion. The bias here is towards a highly cohesive unit that is loosely coupled. Most of these features are uncommon during the traditional approach to projects.
Therefore, the introduction of the XP approach to a company’s developers who have been using the traditional project management practices will have a noticeable impact since XP does not strictly follow the traditional project management practices as such and instead focuses on the developer. The learning curve for the developers will directly affect their initial productivity resulting in a noticeable impact.