Issue No. 02 - March/April (2003 vol. 20)
Martin E. Nordberg III , Blueprint Technologies
<p>Code ownership is more than simply assigning subsystems to individuals or subteams. This article identifies and describes four different code ownership models, ranging from one individual owning an entire system to the collective ownership that is a core practice of XP. Each ownership model has certain advantages and disadvantages or limitations. After listing these, the article proposes that the best way to gain the advantages of each and to avoid the disadvantages is to intentionally vary the code ownership model over a typical development project's lifetime. The four models correlate in an overlapping way with the four phases of the Unified Process. Dynamically assigned ownership has the potential to help balance a project's needs for communication, productivity, and accountability against its needs for single-minded vision, maintainable product quality, and manageable complexity.</p>
Code ownership, software process, software development management
M. E. Nordberg III, "Managing Code Ownership," in IEEE Software, vol. 20, no. , pp. 26-33, 2003.