Software systems are typically developed by teams of developers, with responsibilities for different parts of the code. Knowledge of how the developers collaborate, and how their responsibilities are distributed over the software artifacts is a valuable source of information when reverse engineering a system. Determining which developers are responsible for which software artifacts (\eg packages or classes) is just one perspective. In this paper we complement the static perspective with the dynamic perspective of a system in terms of its features. We want to extract information about which developers are responsible for which features. To achieve these two perspectives, we correlate developer responsibilities both with a structural view of the system and with a feature view. We identify which developers are responsible for which features, and whether the responsibilities correspond with structural source code artifacts or with features. We apply our technique to two software projects developed by two teams of students as part of their course work, and to one large open source project.