Place the Developer role at a hub of the process for a given feature


Make the Developer the process information clearinghouse. Place the Developer role at a hub of the process for a given feature.


Developer Controls Process


The developer role should be at the communication hub of whatever process engages them in writing code for the customer.  The ‘developer’ here is a collection of people that perform requirements capture, analysis, design, coding and unit test, and the work may be divided between individuals in various ways (see GeneralizingSpecialist and DeployAlongTheGrain among others).  If we are making this group accountable for delivering the product, then we should also give them control of the process.  If we are making the group the hub of communication, then we assume that communication within the group is cheap and easy (perhaps by OpenWorkspace and/or DevelopingInPairs).


Note: the original source leaves some ambiguity over whether the developer is given control of the progressing of a relatively fixed process or given the freedom to tailor a development process.  “Controls Process” could refer to either of these distinct concepts.  Yet the reasoning is the same for both, as far as it goes.  Apply both or either, as the situation warrants.