• DocumentCode
    2155538
  • Title

    The loss of architectural knowledge during system evolution: An industrial case study

  • Author

    Feilkas, Martin ; Ratiu, Daniel ; Jürgens, Elmar

  • Author_Institution
    Inst. fur Inf., Tech. Univ. Munchen, Garching
  • fYear
    2009
  • fDate
    17-19 May 2009
  • Firstpage
    188
  • Lastpage
    197
  • Abstract
    Architecture defines the components of a system and their dependencies. The knowledge about how the architecture is intended to be implemented is essential to keep the system structure coherent and thereby comprehensible. In practice, this architectural knowledge is explicitly formulated only in the documentation (if at all), which usually gets outdated very soon. This leads to a growing amount of implicit knowledge during evolution that is especially volatile in projects with high developer fluctuation. In this paper we present a case study about the loss of architectural knowledge in three industrial projects to answer the following research questions: 1) to what degree is the architectural documentation kept in conformance with the code? 2) how well does the documentation reflect the intended architecture?, 3) how big is the architectural decay?, and 4) what are the causes for nonconformances? We answer these questions by investigating the architecture documentation, the source code, and by performing interviews with developers. The most important outcomes of our study are: the informal documentation and the source code are not kept in conformance with each other, none of them completely reflects the intended architecture, and even developers taken individually are not completely aware of the intended architecture. Quantitatively, between 70% and 90% of these nonconformances are caused by flaws in the documentation and between 10% and 30% represent architectural violations in the code.
  • Keywords
    DP industry; knowledge management; software architecture; system documentation; architectural documentation; architectural knowledge; industrial projects; system evolution; Computer architecture; Computer languages; Documentation; Fluctuations; Industrial accidents; Natural languages; Programming profession; Software systems;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Program Comprehension, 2009. ICPC '09. IEEE 17th International Conference on
  • Conference_Location
    Vancouver, BC
  • ISSN
    1092-8138
  • Print_ISBN
    978-1-4244-3998-0
  • Electronic_ISBN
    1092-8138
  • Type

    conf

  • DOI
    10.1109/ICPC.2009.5090042
  • Filename
    5090042