blob: 5321f3d24341b1395bc94a272e4e92158cdd69e6 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C/DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
<!-- VERSION rmc:7.1.0 -->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<!-- START NON-TRANSLATABLE -->
<title>\xp\tasks\setup_programmer_environment.xmi</title>
</head>
<!-- WARNING: do not modify the generated comments in this file below this line. They are used as markers for the import process. -->
<body>
Element Name: setup_programmer_environment.xmi<br/><br/>
<!-- END NON-TRANSLATABLE -->
<br/><br/><br/>
<!-- START NON-TRANSLATABLE -->
Attribute: presentationName<br/><br/>
<!-- END NON-TRANSLATABLE -->
<!-- START:presentationName,{D3AA9FEE-AAD9-4884-BF71-425E122110A7} CRC: 2363565485 -->Setup Programmer Environment<!-- END:presentationName,{D3AA9FEE-AAD9-4884-BF71-425E122110A7} -->
<br/><br/><br/>
<!-- START NON-TRANSLATABLE -->
Attribute: purpose<br/><br/>
<!-- END NON-TRANSLATABLE -->
<!-- START:purpose,-1rVEQRCvrcicCdhpuuIZ8w CRC: 1435063095 --><a id="XE_setup_programmer_environment__activity_definition"
name="XE_setup_programmer_environment__activity_definition"></a>
<ul>
<li>
To make it easy to work collaboratively and raise the communication level of the team
</li>
</ul><!-- END:purpose,-1rVEQRCvrcicCdhpuuIZ8w -->
<br/><br/><br/>
<!-- START NON-TRANSLATABLE -->
Attribute: name<br/><br/>
<!-- END NON-TRANSLATABLE -->
<!-- START:name,_oPGqsGE-EdqnIZeW8YpHcA CRC: 363052505 -->Remove Cubicle Walls and Other Impediments <!-- END:name,_oPGqsGE-EdqnIZeW8YpHcA -->
<br/><br/><br/>
<!-- START NON-TRANSLATABLE -->
Attribute: sectionDescription<br/><br/>
<!-- END NON-TRANSLATABLE -->
<!-- START:sectionDescription,_oPGqsGE-EdqnIZeW8YpHcA CRC: 3033019023 --><a id="Step1" name="Step1"></a>
<p>
In XP, we attempt to maximize communication within the team. Programmers should be able to ask quick questions&nbsp;to
other developers and overhear conversations which raise their understanding of the system. When team members are
segregated into offices or cubicles, there is more of a chance that islands of knowledge will grow in isolation. This
leads to redundant work and often work that is less integrated than if it had been done in an open space subject to the
contributions of overhearing team members.
</p><!-- END:sectionDescription,_oPGqsGE-EdqnIZeW8YpHcA -->
<br/><br/><br/>
<!-- START NON-TRANSLATABLE -->
Attribute: name<br/><br/>
<!-- END NON-TRANSLATABLE -->
<!-- START:name,_oPNYYGE-EdqnIZeW8YpHcA CRC: 3446657757 -->Place Computers in Positions Comfortable for Pairing <!-- END:name,_oPNYYGE-EdqnIZeW8YpHcA -->
<br/><br/><br/>
<!-- START NON-TRANSLATABLE -->
Attribute: sectionDescription<br/><br/>
<!-- END NON-TRANSLATABLE -->
<!-- START:sectionDescription,_oPNYYGE-EdqnIZeW8YpHcA CRC: 2802285974 --><a id="Step2" name="Step2"></a>
<p>
Standard office furniture is not designed for pair programming. In particular, desks with leg wells seem to make
pairing impossible. Ideally, computers should be placed on tables which have enough room for two people to sit side by
side and trade turns working at the keyboard. Comfort should be your guide. If you are not comfortable, you will get
fatigued easily and you certainly won't be doing the work you are capable of.
</p><!-- END:sectionDescription,_oPNYYGE-EdqnIZeW8YpHcA -->
<br/><br/><br/>
<!-- START NON-TRANSLATABLE -->
Attribute: name<br/><br/>
<!-- END NON-TRANSLATABLE -->
<!-- START:name,_oPNYYWE-EdqnIZeW8YpHcA CRC: 3260909039 -->Standardize on Tools and Development Setup <!-- END:name,_oPNYYWE-EdqnIZeW8YpHcA -->
<br/><br/><br/>
<!-- START NON-TRANSLATABLE -->
Attribute: sectionDescription<br/><br/>
<!-- END NON-TRANSLATABLE -->
<!-- START:sectionDescription,_oPNYYWE-EdqnIZeW8YpHcA CRC: 4139936181 --><a id="Step3" name="Step3"></a>
<p>
In XP, we find that work goes better when everyone is able to help everyone else. One simple thing that can get in the
way is computer setup. If you use an editor with one set of key bindings and another team member uses another, it will
be difficult for either of you to go to each other's computers and feel comfortable enough to drive. While this seems
like a minor point, it makes a sizable difference on how effectively a team can collaborate. In many XP teams, machines
are unassigned. You simply go to a free machine in the morning and check out the code that you need to start working
on.
</p><!-- END:sectionDescription,_oPNYYWE-EdqnIZeW8YpHcA -->
<br/><br/><br/>
<!-- START NON-TRANSLATABLE -->
Attribute: name<br/><br/>
<!-- END NON-TRANSLATABLE -->
<!-- START:name,_oPNYYmE-EdqnIZeW8YpHcA CRC: 3816839447 -->Establish Clear Line of Sight to Customer <!-- END:name,_oPNYYmE-EdqnIZeW8YpHcA -->
<br/><br/><br/>
<!-- START NON-TRANSLATABLE -->
Attribute: sectionDescription<br/><br/>
<!-- END NON-TRANSLATABLE -->
<!-- START:sectionDescription,_oPNYYmE-EdqnIZeW8YpHcA CRC: 2980821077 --><a id="Step4" name="Step4"></a>
<p>
To work effectively with XP, you must be able to ask questions&nbsp;to your customer. If you are not able to ask
questions and get timely answers, you are either bottlenecked on a task or tempted to guess and hope that you don't
have to roll back your work later. When setting up your environment, establish a clear line of sight to the customer.
The customer should be working in the same room as the team. If this is not possible, the customer should be no more
than a phone call away.
</p><!-- END:sectionDescription,_oPNYYmE-EdqnIZeW8YpHcA -->
</body>
</html>