<?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.5/uma.ecore"
    xmlns:epf="http://www.eclipse.org/epf" epf:version="1.5.0" xmi:id="-HYO1lwAFOxlT7ncq8EjSng"
    name="new_guideline,_Jq64EJjsEduad8I_c-ogIA" guid="-HYO1lwAFOxlT7ncq8EjSng" changeDate="2007-04-10T12:20:19.375-0700"
    version="1.0.0">
  <mainDescription>&lt;p>&#xD;
    Good software development teams are made up of a collection of people who collaborate effectively. How the project team&#xD;
    is staffed, by either adding or removing people, will greatly impact the team's productivity.&#xD;
&lt;/p>&#xD;
&lt;p>&#xD;
    When staffing a development project, consider the following advice:&#xD;
&lt;/p>&#xD;
&lt;ol>&#xD;
    &lt;li>&#xD;
        Include people who fit into the existing team culture. Good teams don't just appear magically one day, but instead&#xD;
        are grown and nurtured over time. Invite people onto the team who will add value and furthermore who will not be&#xD;
        disruptive. Similarly, you may need to invite someone to leave the team if they do not fit well with the existing&#xD;
        team and they don't seem to be able to change.&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        People should want to be on the team. People are far more productive when they're working on a project that they&#xD;
        believe in and want to see succeed.&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        Build your team with &quot;generalizing specialists&quot;. A generalizing specialist is someone with one or more technical&#xD;
        specialties who actively seeks to gain new skills in both their existing specialties as well as in other areas,&#xD;
        including both technical and domain areas. Generalizing specialists add value to the team because they have&#xD;
        specialized skills that you need while at the same time appreciate the full range of issues that a general&#xD;
        understanding of the software development process and the business domain offers.&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        Include stakeholders. Stakeholders, including business stakeholders such as end users and technical stakeholders&#xD;
        such as operations staff, can add significant value to your team. Instead of just interviewing them to gain&#xD;
        information from them, or asking them to review your work, why not include them as active participants on the team?&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        Include specialists for short-term, specialized work. Specialists can still add value on an agile development team,&#xD;
        particularly when they have specific skills and experience which existing team members do not have. It can often be&#xD;
        more effective to bring a specialist into the team for a short period of time to help with a specific task, such as&#xD;
        installation and setup of an application server, the development of an architectural spike, or simply taking part&#xD;
        in a review.&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        Give people opportunities to evolve their skills. At the beginning of a project the team may not have the full&#xD;
        range of skills that it needs, or perhaps a few individuals may not have the skills required to fulfill the roles&#xD;
        they are filling. This is a very common risk taken on by the majority of project teams for the simple reasons that&#xD;
        you often can't find the perfect combination of people and even if you could you still want to provide people with&#xD;
        opportunities to grow as professionals.&#xD;
    &lt;/li>&#xD;
    &lt;li>&#xD;
        Remember Brook's Law. Adding people to a late project will only make it later [&lt;a href=&quot;./../../../openup/guidances/supportingmaterials/references_6CCF393.html&quot; guid=&quot;_9ToeIB83Edqsvps02rpOOg&quot;>BRO87&lt;/a>]. The corollary is that removing people from a late project may speed&#xD;
        things up [&lt;a href=&quot;./../../../openup/guidances/supportingmaterials/references_6CCF393.html&quot; guid=&quot;_9ToeIB83Edqsvps02rpOOg&quot;>AMB04&lt;/a>].&#xD;
    &lt;/li>&#xD;
&lt;/ol>&#xD;
&lt;p>&#xD;
    Sometimes you will need to go against some of this advice due to environmental constraints. Perhaps only specialists&#xD;
    are available (although there's nothing stopping a specialist from becoming a generalizing specialist), perhaps there&#xD;
    aren't as many opportunities for people to try new things as they would like, or perhaps the stakeholders aren't&#xD;
    available to be active members of the team. The advice above is designed to lead to as high-performing a team as&#xD;
    possible, but even partial adherence to this guideline will improve the team.&#xD;
&lt;/p></mainDescription>
</org.eclipse.epf.uma:ContentDescription>
