You are on page 1of 2

BSIT / II

EXTREME PROGRAMMING

 Extreme programming (XP) is a software development methodology


which is intended to improve software quality and responsiveness to
changing customer requirements. As a type of agile software
development, it advocates frequent "releases" in short development
cycles, which is intended to improve productivity and introduce
checkpoints at which new customer requirements can be adopted.

 Advantages of Extreme Programming

1. Robustness: The fact that the power of simplicity is leveraged is a big


advantage. The way developers take their time on small iterations and
software pieces resembles completing jigsaw puzzles.
This approach creates software that works faster as well as one that lacks
many defects. Bug detection is guaranteed when regular testing is done
during the development stage.

2. Resilience: When requirements remain static then the traditional means


of programming are advised.
However, that's not how the real world operates. Things like new business
opportunities completely change requirement dynamics.
This type of programming accommodates requirement changes by getting
and storing the user stories from the start and also from the constant
feedback during the course of iterations.
3. Cost Saving: XP helps in trimming unproductive activities in order to
reduce frustration and cost. Needless paperwork is avoided in order to
allow developers and programmers to concentrate on coding instead of
needles time wasting.
The fact that changes are made based on client feedback during
development stages keeps overall costs low.

4. Employee Satisfaction: The fact that XP reduces the importance of


individuals during the development process helps increase employee
retention and satisfaction.
This type of programming is all about value-driven approaches which set
fixed work schedules without concentrating on overtime.

 Disadvantages of Extreme Programming

1. Difficulty: This is technically a tough software practice so convincing


developers and programmers to adopt it won't be easy. It requires
customer devotion as well as lots and lots of team discipline.
Its life cycle has very many different changes which mean that those who
manage this type of software projects are bound to be faced with
numerous difficulties.

2. XP Relies on Very Many Factors: This is basically a minimalist process.


Its lack of vigor is made up by the number of practices involved.
The project has a high risk of failure if something goes wrong. This
happens to be a very big disadvantage when it comes to this type of
software development. The fact of the matter is that extreme programming
is a highly risky endeavor.

3. Code Centric: This type of programming methodology is code-centric


rather than design-centric. This can prove to be very tiring when larger
software projects are involved.
XP is also a time consuming and has a lot of refactoring involved in its
procedures. Test coding is also quite difficult in this programming process.
This is largely due to defects that have not been documented well and
codes that haven't been structured well enough.

You might also like