<?xml version="1.0" encoding="UTF-8"?>
<org.eclipse.epf.uma:ContentDescription xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:org.eclipse.epf.uma="http://www.eclipse.org/epf/uma/1.0.3/uma.ecore" epf:version="1.0.0" xmi:id="-27sE-swoOUGtar9a0f3RPw" name="extreme_programming,5.2637267673584526E-306" guid="-27sE-swoOUGtar9a0f3RPw" changeDate="2006-12-01T15:11:05.063-0800" version="1.0.0">
  <mainDescription>&lt;a id=&quot;XE_xp__conceptual_process_roadmap&quot; name=&quot;XE_xp__conceptual_process_roadmap&quot;&gt;&lt;/a&gt;&lt;a id=&quot;XE_roadmap__for_xp_practices&quot;
name=&quot;XE_roadmap__for_xp_practices&quot;&gt;&lt;/a&gt; 
&lt;h3&gt;
    Topics
&lt;/h3&gt;
&lt;div align=&quot;left&quot;&gt;
    &lt;table width=&quot;70%&quot; border=&quot;1&quot;&gt;
        &lt;tbody valign=&quot;top&quot;&gt;
            &lt;tr&gt;
                &lt;td width=&quot;315&quot; height=&quot;178&quot;&gt;
                    &lt;ul&gt;
                        &lt;li&gt;
                            &lt;a href=&quot;#Introduction&quot;&gt;Introduction&lt;/a&gt;
                        &lt;/li&gt;
                        &lt;li style=&quot;LIST-STYLE-TYPE: none&quot;&gt;
                            &lt;ul&gt;
                                &lt;li&gt;
                                    &lt;a href=&quot;#About&quot;&gt;About XP&lt;/a&gt;
                                &lt;/li&gt;
                            &lt;/ul&gt;
                        &lt;/li&gt;
                        &lt;li&gt;
                            &lt;a href=&quot;#Characteristics&quot;&gt;Characteristics of an XP Project&lt;/a&gt;
                        &lt;/li&gt;
                        &lt;li&gt;
                            &lt;a href=&quot;#Phases&quot;&gt;Phases and Iterations&lt;/a&gt;
                        &lt;/li&gt;
                        &lt;li&gt;
                            &lt;a href=&quot;#GettingStarted&quot;&gt;How to Get Started&lt;/a&gt;
                        &lt;/li&gt;
                    &lt;/ul&gt;
                &lt;/td&gt;
                &lt;td width=&quot;315&quot; height=&quot;178&quot;&gt;
                    &lt;b&gt;Additional Guidance:&lt;/b&gt; 
                    &lt;ul&gt;
                        &lt;li&gt;
                            Guidelines
                        &lt;/li&gt;
                        &lt;li style=&quot;LIST-STYLE-TYPE: none&quot;&gt;
                            &lt;ul&gt;
                                &lt;li&gt;
                                    &lt;a class=&quot;elementLink&quot;
                                    href=&quot;./../../../xp/guidances/guidelines/refactoring,8.137126904637637E-306.html&quot;
                                    guid=&quot;8.137126904637637E-306&quot;&gt;Refactoring&lt;/a&gt;
                                &lt;/li&gt;
                                &lt;li&gt;
                                    &lt;a class=&quot;elementLinkWithUserText&quot;
                                    href=&quot;./../../../xp/guidances/guidelines/test_driven_development_tdd,3.9254165491375454E-306.html&quot;
                                     guid=&quot;3.9254165491375454E-306&quot;&gt;Test First Development&lt;/a&gt;
                                &lt;/li&gt;
                                &lt;li&gt;
                                    &lt;a class=&quot;elementLinkWithUserText&quot;
                                    href=&quot;./../../../xp/guidances/guidelines/pair_programming,3.85153041801319E-307.html&quot;
                                    guid=&quot;3.85153041801319E-307&quot;&gt;Pair Programming&lt;/a&gt;
                                &lt;/li&gt;
                                &lt;li&gt;
                                    &lt;a class=&quot;elementLinkWithUserText&quot;
                                    href=&quot;./../../../xp/guidances/guidelines/planning_game,6.7335956461328426E-307.html&quot;
                                    guid=&quot;6.7335956461328426E-307&quot;&gt;Planning Game&lt;/a&gt;
                                &lt;/li&gt;
                            &lt;/ul&gt;
                        &lt;/li&gt;
                    &lt;/ul&gt;
                    &lt;br /&gt;
                     &lt;b&gt;Additional Concepts:&lt;/b&gt; 
                    &lt;ul&gt;
                        &lt;li&gt;
                            &lt;a class=&quot;elementLink&quot;
                            href=&quot;./../../../xp/guidances/concepts/agile_software_development,1.041091673844025E-305.html&quot;
                            guid=&quot;1.041091673844025E-305&quot;&gt;Agile Software Development&lt;/a&gt;
                        &lt;/li&gt;
                    &lt;/ul&gt;
                &lt;/td&gt;
            &lt;/tr&gt;
        &lt;/tbody&gt;
    &lt;/table&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h1&gt;
    &lt;a id=&quot;Introduction&quot; name=&quot;Introduction&quot;&gt;Introduction&lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;
    This roadmap provides information for getting started and applying the practices of eXtreme Programming (XP) to a
    software development project.
&lt;/p&gt;
&lt;h3&gt;
    &lt;a id=&quot;About&quot; name=&quot;About&quot;&gt;About XP&lt;/a&gt;&amp;nbsp;
&lt;/h3&gt;
&lt;p&gt;
    Extreme Programming is an instance of an &lt;a class=&quot;elementLink&quot;
    href=&quot;./../../../xp/guidances/concepts/agile_software_development,1.041091673844025E-305.html&quot;
    guid=&quot;1.041091673844025E-305&quot;&gt;Agile Software Development&lt;/a&gt; method. XP is a method that is optimized for small to
    medium-sized project teams that fit a certain profile. It promotes rapid feedback and response to continual change. It
    is based upon the four &lt;a class=&quot;elementLinkWithUserText&quot;
    href=&quot;./../../../xp/guidances/concepts/xp_values,1.076140803519123E-306.html&quot; guid=&quot;1.076140803519123E-306&quot;&gt;values&lt;/a&gt;
    of simplicity, communication, feedback, and courage and is consistent with the values of agile software development.
&lt;/p&gt;
&lt;p&gt;
    Extreme Programming is an instance of an agile method for developing software. It is based upon the core principle of
    agility and consists of twelve practices that, when applied to an appropriate software development project, can produce
    high-quality software. If you are unfamiliar with the concepts surrounding XP, you should start by reading &lt;a
    class=&quot;elementLink&quot; href=&quot;./../../../xp/guidances/concepts/agile_software_development,1.041091673844025E-305.html&quot;
    guid=&quot;1.041091673844025E-305&quot;&gt;Agile Software Development&lt;/a&gt;.
&lt;/p&gt;
&lt;h3&gt;
    &lt;a id=&quot;Characteristics&quot; name=&quot;Characteristics&quot;&gt;Characteristics of an XP Project&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;
    Extreme Programming or XP is a development process that can be used by small to medium-sized teams to develop high
    quality software within a predictable schedule and budget and with a minimum of overhead. Since XP relies heavily on
    direct and frequent communication between the team members, the team should be co-located. An ideal project for using
    XP would be one that has most of the following characteristics:
&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;
        A small to medium-sized team (fewer than 20 people on the complete team)
    &lt;/li&gt;
    &lt;li&gt;
        Co-located, preferably in a single area with a large common space
    &lt;/li&gt;
    &lt;li&gt;
        A committed, full-time, on-site customer or customer representative
    &lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
    &lt;a id=&quot;Phases&quot; name=&quot;Phases&quot;&gt;Phases and Iterations&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;
    An XP project is one that is based on rapid feedback through short iterations and frequent releases.&amp;nbsp;Unified
    Process&amp;nbsp;and XP share a fundamental belief that iterative development is the best way to deliver valuable software
    to your customers. The concept of phases, as usually described in the Unified Process, is somewhat different. Decisions
    described in the Unified Process phases that define milestones occur, but they are not called specifically as defining
    phases.
&lt;/p&gt;
&lt;h3&gt;
    &lt;a id=&quot;GettingStarted&quot; name=&quot;GettingStarted&quot;&gt;How to Get Started&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;
    This section provides a recommended way to approach XP for your project. You don't have to follow the steps as
    specified, but if you have little experience with XP, we recommend following them as closely as possible the first
    time.
&lt;/p&gt;
&lt;table cellspacing=&quot;2&quot; cellpadding=&quot;1&quot; width=&quot;91%&quot; border=&quot;1&quot;&gt;
    &lt;tbody&gt;
        &lt;tr&gt;
            &lt;th width=&quot;10%&quot;&gt;
                Step
            &lt;/th&gt;
            &lt;th align=&quot;left&quot; width=&quot;47%&quot;&gt;
                Do this ...
            &lt;/th&gt;
            &lt;th align=&quot;left&quot; width=&quot;43%&quot;&gt;
                in order to...
            &lt;/th&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td align=&quot;middle&quot; width=&quot;10%&quot;&gt;
                1
            &lt;/td&gt;
            &lt;td width=&quot;47%&quot;&gt;
                Familiarize yourself with the&amp;nbsp;&lt;a class=&quot;elementLink&quot;
                href=&quot;./../../../xp/guidances/concepts/motivation,1.6390805262958034E-306.html&quot;
                guid=&quot;1.6390805262958034E-306&quot;&gt;motivation&lt;/a&gt; for using XP, the &lt;a class=&quot;elementLinkWithUserText&quot;
                href=&quot;./../../../xp/guidances/concepts/what_is_xp,9.251272550276345E-306.html&quot;
                guid=&quot;9.251272550276345E-306&quot;&gt;short description&lt;/a&gt; of XP, and the &lt;a class=&quot;elementLink&quot;
                href=&quot;./../../../xp/guidances/concepts/xp_practices,2.2937799026801584E-305.html&quot;
                guid=&quot;2.2937799026801584E-305&quot;&gt;XP Practices&lt;/a&gt; 
            &lt;/td&gt;
            &lt;td width=&quot;43%&quot;&gt;
                understand the fundamental principles of XP and how the practices support each other.
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td align=&quot;middle&quot; width=&quot;10%&quot;&gt;
                2
            &lt;/td&gt;
            &lt;td width=&quot;47%&quot;&gt;
                Read the key concepts of &lt;a class=&quot;elementLink&quot;
                href=&quot;./../../../xp/guidances/concepts/agile_software_development,1.041091673844025E-305.html&quot;
                guid=&quot;1.041091673844025E-305&quot;&gt;Agile Software Development&lt;/a&gt; 
            &lt;/td&gt;
            &lt;td width=&quot;43%&quot;&gt;
                understand the collaborative and social aspects of XP.
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td align=&quot;middle&quot; width=&quot;10%&quot;&gt;
                3
            &lt;/td&gt;
            &lt;td width=&quot;47%&quot;&gt;
                Determine if XP is appropriate for your project by reviewing &lt;a href=&quot;#Characteristics&quot;&gt;The Characteristics
                of an XP Project&lt;/a&gt; 
            &lt;/td&gt;
            &lt;td width=&quot;43%&quot;&gt;
                decide if XP may be appropriate for your project.
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td align=&quot;middle&quot; width=&quot;10%&quot;&gt;
                4
            &lt;/td&gt;
            &lt;td width=&quot;47%&quot;&gt;
                Read about the &lt;a class=&quot;elementLinkWithUserText&quot;
                href=&quot;./../../../xp/guidances/guidelines/xp_environment,3.754748120034442E-307.html&quot;
                guid=&quot;3.754748120034442E-307&quot;&gt;XP Environment&lt;/a&gt;.
            &lt;/td&gt;
            &lt;td width=&quot;43%&quot;&gt;
                prepare the physical and tool environment for your team.
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td align=&quot;middle&quot; width=&quot;10%&quot;&gt;
                5
            &lt;/td&gt;
            &lt;td width=&quot;47%&quot;&gt;
                Read the &lt;a class=&quot;elementLink&quot;
                href=&quot;./../../../xp/guidances/supportingmaterials/getting_started_with_xp,1.2284921351651456E-304.html&quot;
                guid=&quot;1.2284921351651456E-304&quot;&gt;Getting Started with XP&lt;/a&gt; guidelines.
            &lt;/td&gt;
            &lt;td width=&quot;43%&quot;&gt;
                get suggestions on how to start an XP project.
            &lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tbody&gt;
&lt;/table&gt;</mainDescription>
</org.eclipse.epf.uma:ContentDescription>
