| Extreme Programming |
|
|
|
|
A discipline of software development that follows a specific structure that is designed to simplify and expedite the process of developing new software. Kent Beck developed Extreme Programming to be used with small teams of developers who need to develop software quickly in an environment of rapidly-changing requirements. XP teams design software for specific functionalities without adding any functionalities that are not specifically requested that may slow down the process, keeping the development course simple through systematic and regular testing and design improvements. Extreme Programming is based on 12 principles:
* Small Releases -- The software is developed in small stages that are updated frequently, typically every two weeks.
* Metaphor -- All members on an XP team use common names and descriptions to guide development and communicate on common terms. * Simple Design -- The software should include only the code that is necessary to achieve the desired results communicated by the customer at each stage in the process. The emphasis is not on building for future versions of the product.
* Testing -- Testing is done consistently throughout the process. Programmers design the tests first and then write the software to fulfill the requirements of the test. The customer also provides acceptance tests at each stage to ensure the desired results are achieved.
|