| <!-- RPW META DATA START -- |
| <rpw name="MetaData" meta_value="anonymous" meta_name="element_type"></rpw> |
| <rpw name="MetaData" meta_value="guideline" meta_name="filetype"></rpw> |
| -- RPW META DATA END --> |
| |
| <html> |
| |
| <head> |
| <link rel="stylesheet" href="../../../rop.css" type="text/css"> |
| <title>Guidelines: <rpw name="InsertPresentationName"></rpw></title> |
| <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
| </head> |
| |
| |
| <body> |
| |
| <rpw name="Warning"><b>!RPW INCLUDE! DO NOT MOVE/MODIFY !RPW INCLUDE!</b><br></rpw> |
| <rpw name="Include">rpw/startBorder.rpw</rpw> |
| <rpw name="Warning"><br><b>!RPW INCLUDE! DO NOT MOVE/MODIFY !RPW INCLUDE!</b></rpw> |
| |
| |
| <h1 class="banner"><a name="Top"></a>Guidelines: <rpw name="PresentationName">Adopting |
| XP Practices</rpw> <a name="XE_xp__adopting_practices"></a><a name="XE_adopting_practices__in_xp"></a></h1> |
| <p>XP is a set of synergistic practices. Because the practices depend upon each |
| other, people often wonder where they should start. In general, we recommend |
| that you stop and consciously decide to adopt as many of the XP practices as |
| possible.</p> |
| <p>However, if that induces too much stress, consider adopting the practices in |
| this order.</p> |
| <p><b><a href="../../../components/pc_xp_essentials/pc_xp_integration/co_continuous_integration.htm">Establish |
| a solid build process</a></b>. If you are not able to reliably build the software |
| you are working on, you can&8217;t really go further. Once you have a reliable |
| build process, make sure that you run whatever <a href="../../../components/pc_xp_essentials/pc_xp_testing/co_customer_tests.htm">tests</a> |
| you have prior to each checking.</p> |
| <p><b><a href="../../../components/pc_xp_essentials/pc_xp_programming/co_pair_program.htm">Pair |
| programming</a></b> is often a significantly different way of working for most |
| developers. It takes a little bit of time to get used to it, but as a team does, |
| they recognize that they are a much more powerful team because everyone’s |
| knowledge of the system grows rapidly. In addition, quality goes up because |
| there are two sets of eyes on all work as it is being done. When you adopt pair |
| programming, ideally you should have an <a href="../../../components/pc_xp_essentials/pc_xp_management/xp_open_workspace_guidelines.htm">open |
| workspace</a>.</p> |
| <p>As your team gets started with pair programming, you should adopt the <b><a href="../../../components/pc_xp_essentials/co_planning_game.htm">Planning |
| Game</a></b>. The Planning Game will help you identify good goals for your next |
| release, iteration, and day of work. At the end of your first iteration, you |
| will have a velocity that you can use to get a sense of how long it takes you |
| do do your work. As you do your planning, talk to your customer about producing |
| acceptance tests and being available to the team.</p> |
| <p>As you work together on your first iteration, try doing <a href="../../../components/pc_xp_essentials/co_test_driven_development.htm"><b>test-driven |
| development</b></a>. It will feel strange at first. If it doesn’t, you |
| are probably doing it wrong. Over time, it will feel like a more natural way |
| to develop software. Recognize that, at first, your velocity will be rather |
| low. This is a side effect of the learning process. Over the next few iterations |
| your speed will increase.</p> |
| <p>As you move forward, learn how to <a href="../../../components/pc_xp_essentials/pc_xp_programming/co_refactoring.htm"><b>refactor</b></a> |
| and start to practice <a href="../../../components/pc_xp_essentials/co_collective_code_ownership.htm"><b>collective |
| code ownership</b></a>. Often collective code ownership is a little scary at |
| first, but as you pair, you will notice that everyone is learning what it takes |
| to work with the system. When people volunteer for tasks, they either volunteer |
| only for what they know how to do or for things that they can get help on from |
| a partner.</p> |
| <p>Once you have a few iterations under your belt, you will be able to understand |
| how the process works and how the different practices interact and support each |
| other. Finally, listen to the feedback coming from your team. That feedback |
| is critical and can be used to improve and adapt the process to your team’s |
| particular needs and problems.</p> |
| |
| |
| <p><br/><br/></p> |
| |
| <rpw name="Warning"><b>!RPW INCLUDE! DO NOT MOVE/MODIFY !RPW INCLUDE!</b><br></rpw> |
| <rpw name="Include">rpw/endBorderOmRat.rpw</rpw> |
| <rpw name="Include">rpw/endBorder.rpw</rpw> |
| <rpw name="Warning"><br><b>!RPW INCLUDE! DO NOT MOVE/MODIFY !RPW INCLUDE!</b></rpw> |
| |
| </body> |
| |
| </html> |
| |