Reconstructing Ownership Architectures To Help Understand Software Systems

  • Authors:
  • Ivan T. Bowman;Richard C. Holt

  • Affiliations:
  • -;-

  • Venue:
  • IWPC '99 Proceedings of the 7th International Workshop on Program Comprehension
  • Year:
  • 1999

Quantified Score

Hi-index 0.00

Visualization

Abstract

Recent research suggests that large software sys-tems should have a documented system architec-ture. One form of documentation that may help describe the structure of software systems is the or-ganization of the developers that designed and im-plemented the software system.We suggest that an ownership architecture that documents the relationship between developers and source code is a valuable aid in understanding large software systems. If this document is not available, then we can reconstruct it based on the system implementation and other documentation.We examine Linux as a case study to demonstrate how to reconstruct and use this type of architecture. The reconstructed Linux ownership architecture provides information that complements other types of architectural documentation. It identifies experts for system components, shows non-functional de-pendencies, and provides estimates of the quality of components. Ownership architectures also al-low us to find problems such as under-staffed sub-systems and components that risk abandonment.