| <html xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> |
| <head> |
| <META http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <title>Concept: XP Practices</title> |
| <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> |
| <meta name="element_type" content="concept"> |
| <meta content="description" name="filetype"> |
| <meta name="role" content=""> |
| <link type="text/css" href="./../../../css/default.css" rel="StyleSheet"> |
| <script src="./../../../scripts/contentpage.js" type="text/javascript" language="JavaScript"></script><script type="text/javascript" language="JavaScript"> |
| backPath = './../../../'; |
| </script> |
| </head> |
| <body onload="createSectionLinks('div', 'sectionHeading', './../../../images/');"> |
| <table width="100%" cellspacing="0" cellpadding="0" border="0"> |
| <tr> |
| <td valign="top"><a name="Top"></a> |
| <table cellpadding="0" cellspacing="0" border="0"> |
| <tr> |
| <td class="pageTitle">Concept: XP Practices</td> |
| </tr> |
| </table> |
| <table cellspacing="0" cellpadding="0" border="0" width="100%"> |
| <tr> |
| <td class="pageTitleSeparator"><img height="1" alt="" src="./../../../images/shim.gif"></td> |
| </tr> |
| </table> |
| <div class="overview"> |
| <table cellpadding="0" cellspacing="0" border="0" width="97%"> |
| <tr> |
| <td> |
| <table cellpadding="0" cellspacing="0" border="0" class="overviewTable"> |
| <tr> |
| <td valign="top"></td> |
| </tr> |
| </table> |
| </td> |
| </tr> |
| </table> |
| </div> |
| <div class="sectionHeading">Main Description</div> |
| <div class="sectionContent"> |
| <table cellpadding="0" cellspacing="0" border="0" class="sectionTable"> |
| <tr valign="top"> |
| <td class="sectionTableCell"><a id="XE_xp__practices_of" name="XE_xp__practices_of"></a><a id="XE_practices_in__xp" name="XE_practices_in__xp"></a> |
| <p> |
| XP is a collection of guiding values and best practices. Most of these practices have been used in the industry in some |
| shape or form for a number of years. XP has simply identified them and tried to push the envelope of these practices in |
| order to get the most benefit from them. Taken individually, these practices are all fairly simple. But it is the sum |
| of all of them that provides the most benefit as they reinforce each other to address the most difficult problems teams |
| encounter when developing software. |
| </p> |
| <br /> |
| <br /> |
| <p> |
| <img height="540" alt="" src="./../../../xp/resources/circleOfLife.jpg" width="720" usemap="#xp_practices_image_map" border="0" /> <map id="xp_practices_image_map" name="xp_practices_image_map"> |
| <area shape="RECT" coords="298,19,390,88" href="./../../../xp/guidances/concepts/whole_team,7.89591827591278E-306.html" /> |
| <area shape="RECT" coords="176,135,282,200" href="./../../../xp/guidances/concepts/collective_ownership,9.300699588493279E-306.html" /> |
| <area shape="RECT" coords="297,168,434,231" href="./../../../xp/guidances/concepts/test_driven_development,1.620567348185129E-306.html" /> |
| <area shape="RECT" coords="447,135,547,198" href="./../../../xp/guidances/concepts/coding_standard,8.8116853923311E-307.html" /> |
| <area shape="RECT" coords="15,236,122,305" href="./../../../xp/guidances/concepts/customer_tests,2.297945473205673E-305.html" /> |
| <area shape="RECT" coords="218,238,362,307" href="./../../../xp/guidances/concepts/pair_programming,3.876855509996079E-307.html" /> |
| <area shape="RECT" coords="392,241,512,305" href="./../../../xp/guidances/concepts/refactoring_xp_programming,1.4410217108363206E-306.html" /> |
| <area shape="RECT" coords="614,236,714,302" href="./../../../xp/guidances/concepts/planning_game,2.7371805612676613E-305.html" /> |
| <area shape="RECT" coords="143,325,270,393" href="./../../../xp/guidances/concepts/continuous_integration,3.193414568279561E-305.html" /> |
| <area shape="RECT" coords="310,321,412,379" href="./../../../xp/guidances/concepts/simple_design,1.6109092258980447E-306.html" /> |
| <area shape="RECT" coords="468,323,597,393" href="./../../../xp/guidances/concepts/xp_sustainable_pace,3.133529870649493E-306.html" /> |
| <area shape="RECT" coords="307,386,413,436" href="./../../../xp/guidances/concepts/metaphor_system_of_names,4.884861766532753E-306.html" /> |
| <area shape="RECT" coords="312,475,419,539" href="./../../../xp/guidances/concepts/small_releases,5.762953011420275E-306.html" /> |
| <area shape="RECT" target="_blank" coords="561,494,708,538" href="http://www.xprogramming.com" /> |
| </map> |
| </p> |
| <p> |
| This diagram arranges the core practices of Extreme Programming in a way that makes them easy to remember and that |
| exemplifies the steering and control cycles of the process. |
| </p> |
| <p> |
| The outer red circle is called the "Circle of Life". It's what keeps an XP project going, producing tested working |
| software. The <a class="elementLink" href="./../../../xp/guidances/concepts/whole_team,7.89591827591278E-306.html" guid="7.89591827591278E-306">Whole Team</a>, customer members and development members, work together--preferably |
| physically together--to build the project. Using the <a class="elementLinkWithUserText" href="./../../../xp/guidances/concepts/planning_game,2.7371805612676613E-305.html" guid="2.7371805612676613E-305">Planning Game</a> elements of Release Planning and Iteration Planning, they plan a |
| series of <a class="elementLinkWithUserText" href="./../../../xp/guidances/concepts/small_releases,5.762953011420275E-306.html" guid="5.762953011420275E-306">Small |
| Releases</a> of software that demonstrably pass all the <a class="elementLinkWithUserText" href="./../../../xp/guidances/concepts/customer_tests,2.297945473205673E-305.html" guid="2.297945473205673E-305">Customer Tests</a>. |
| </p> |
| <p> |
| The innermost blue circle describes the day to day, moment to moment, work of the XP developers. Each feature is |
| addressed with <a class="elementLinkWithUserText" href="./../../../xp/guidances/concepts/simple_design,1.6109092258980447E-306.html" guid="1.6109092258980447E-306">Simple Design</a>, ensuring that the design of the system is just right for the features |
| supported. The programmers work in <a class="elementLinkWithUserText" href="./../../../xp/guidances/concepts/pair_programming,3.876855509996079E-307.html" guid="3.876855509996079E-307">pairs</a> for all production code development, providing continuous code review and |
| valuable, team-wide understanding of the system. They build the software using <a class="elementLinkWithUserText" href="./../../../xp/guidances/concepts/test_driven_development,1.620567348185129E-306.html" guid="1.620567348185129E-306">Test-Driven Development,</a> a technique that produces well-crafted and well-tested |
| software with a minimum of wasted effort, and the design is kept clean by the continuous improvement process of <a class="elementLinkWithUserText" href="./../../../xp/guidances/concepts/refactoring_xp_programming,1.4410217108363206E-306.html" guid="1.4410217108363206E-306">Refactoring</a>. |
| </p> |
| <p> |
| The middle green circle contains the important supporting practices of XP. The software is designed according to a |
| common, shared, evolving <a class="elementLinkWithUserText" href="./../../../xp/guidances/concepts/metaphor_system_of_names,4.884861766532753E-306.html" guid="4.884861766532753E-306">Metaphor</a> that helps it all hang together. It is kept <a class="elementLinkWithUserText" href="./../../../xp/guidances/concepts/continuous_integration,3.193414568279561E-305.html" guid="3.193414568279561E-305">continuously integrated</a> with many system builds every day, each one fully tested. The |
| team shares ownership of of all the code so that needed changes can be made by any qualified pair, not just by one |
| individual. Since everyone works on everything, the team evolves a <a class="elementLinkWithUserText" href="./../../../xp/guidances/concepts/coding_standard,8.8116853923311E-307.html" guid="8.8116853923311E-307">standard |
| way of coding</a>. Finally, XP teams work at a <a class="elementLinkWithUserText" href="./../../../xp/guidances/concepts/xp_sustainable_pace,3.133529870649493E-306.html" guid="3.133529870649493E-306">sustainable pace</a> that enables them to deliver tested software on a predictable basis |
| from the first day of the project until the last. |
| </p> |
| <p> |
| <br /> |
| |
| </p></td> |
| </tr> |
| </table> |
| </div> |
| <table cellpadding="0" cellspacing="0" border="0" class="copyright"> |
| <tr> |
| <td class="copyright"></td> |
| </tr> |
| </table> |
| </td> |
| </tr> |
| </table> |
| </body> |
| </html> |