YogeshChauhan . com

What is XP (Extreme Programming) and When should it be used?

in Misc on April 18, 2020


As mentioned on the agile alliance, Extreme Programming (XP) is an agile software development framework that aims to produce higher quality software, and higher quality of life for the development team.

XP is the most specific of the agile frameworks regarding appropriate engineering practices for software development.

It is a software development methodology which is intended to improve software quality and responsiveness to changing customer requirements. Emphasize on the phrase "changing customer requirements".

It has frequent "releases" in short development cycles, which is intended to improve productivity and in every cycle new customer requirements are adopted, allowing both team members and customers to examine and review the project’s progress throughout the entire SDLC.

Kent Beck created extreme programming and it's an agile project management methodology. Some of these practices and values are from other project management methodologies.

Traditional software engineering practices are taken to "extreme" levels and that's why they call it, Extreme Programming.

Communication is very frequent between the customer and among the programmers.

When should Extreme Programming be Used?

Keep this phrase in mind: "requirements change".

You should use XP in all the following cases:

1. If your customers may not have a firm idea of what the system should do. OR You may have a system whose functionality is expected to change every few months.

2. Risk: If your customers need a new system by a specific date the risk is high. If that system is a new challenge for your software group the risk is even greater. If that system is a new challenge to the entire software industry the risk is greater even still. The XP practices are set up to mitigate the risk and increase the likelihood of success.

3. If you have a small team. XP is set up for small groups of programmers. Between 2 and 12, though larger projects of 30 have reported success. You can not use XP on a project with a huge staff.

4. If the communication is very frequent between the team and customer. XP requires an extended development team. The XP team includes not only the developers, but the managers and customers as well, all working together elbow to elbow. Asking questions, negotiating scope and schedules, and creating functional tests require more than just the developers be involved in producing the software.

5. Testability. You must be able to create automated unit and functional tests. It will give a push to XP and overall software development.



Most Read

#1 How to check if radio button is checked or not using JavaScript? #2 Solution to “TypeError: ‘x’ is not iterable” in Angular 9 #3 How to add Read More Read Less Button using JavaScript? #4 How to uninstall Cocoapods from the Mac OS? #5 How to Use SQL MAX() Function with Dates? #6 PHP Login System using PDO Part 1: Create User Registration Page

Recently Posted

Jun 16 What are Stored Procedures for SQL Server? Jun 16 What are Class Constants in PHP? Jun 15 A short basic guide on states in React Jun 15 How to define constants in PHP? Jun 15 How to define visibility for a property in PHP? Jun 15 How to use @if and @else in SCSS?

You might also like these

What is PostgreSQL? How similar or different it is from SQL?PostgresHow to overwrite file contents with new content in PHP?PHPNew to ┬áDrupal? Here’s What You Need to KnowDrupalWordPress: How to print ACF repeater field values?WordPressfirst-of-type and last-of-type selectors in CSSCSS3 Ways we can create URLSearchParams Objects in JavaScriptJavaScript