|
Extreme Programming (XP) Ref.[10] is a software engineering methodology based on an informal process and it is defined by a series of rules and guidelines. It is probably the most popular of several agile software development methodologies. It is especially targeted to small to medium projects with a focused scope.
XP prescribes a set of 12 day-to-day practices for managers and developers, like Pair Programming, Test-Driven Development (see 3.6.9), Continuous Integration, etc. XP sets out to reduce the cost of change by introducing basic values, principles and practices.
The five values of XP are: Communication; Simplicity; Feedback; Courage; Respect.
The principles that form the basis of XP are: Feedback; Assuming Simplicity; Embracing Change.
Compared to RUP it places a higher value on adaptability. In XP it is foreseen that changes to requirements can happen during a software development project. Therefore, XP is able to adapt to changing requirements at any point during the project life time. By applying XP, a system development project should be more flexible with respect to changes.
XP describes four basic activities that are performed within the software development process:
Coding; Testing; Listening; Designing
Goals of XP:
-
An attempt to reconcile humanity and productivity;
-
A mechanism for social change;
-
A path to improvement;
-
A style of development;
-
A software development discipline.
Links:
http://www.xprogramming.com/
http://www.extremeprogramming.org/
http://en.wikipedia.org/wiki/Extreme_Programming
|