Code ownership is a common practice in large, distributed software development teams. It is used to establish a chain of responsibility (who to blame if there is a problem) and simplify management (to whom a task or bug-fix should be assigned). A simple intuition for estimating code ownership is that the developer who has written majority code to a module should be an owner of that module. Moreover, prior research found that a module with weak code ownership (that is written by many minor authors) is more likely to have bugs in the future.
Nowadays, development practices are more than just writing code. A tool-based code review process has tightly integrated with the software development cycle. Recent research has found that in addition to a defect-hunting exercise, reviewers also help an author to improve the code changes. Then, these code writing and reviewing activities are orthogonal: teams can have a developer who reviews a lot but writes little and vice versa.
Does code review activity change what we know about ownership and software quality? This led us to investigate the importance of code review activities for code ownership and software quality. Through an empirical study of Qt and OpenStack systems, we (1) investigated the code authoring and reviewing activities of developers, (2) refined code ownership using code reviewing activities, and (3) studied the relationship between our refined ownership and software quality.