kirancodes.me
To Proof Maintenance & Beyond!

Roles and impacts of hands-on software architects in five industrial case studies

Inayat Rehman, Mehdi Mirakhorli, Meiyappan Nagappan, Azat Aralbay Uulu, Matthew Thornton

Abstract

Whether software architects should also code is an enduring question. In order to satisfy performance, security, reliability and other quality concerns, architects need to compare and carefully choose a combination of architectural patterns, styles or tactics. Then later in the development cycle, these architectural choices must be implemented completely and correctly so there will not be any drift from envisioned design. In this paper, we use data analytics-based techniques to study five large-scale software systems, examining the impact and the role of software architects who write code on software quality. Our quantitative study is augmented with a follow up interview of architects. This paper provides empirical evidence for supporting the pragmatic opinions that architects should write code. Our analysis shows that implementing architectural tactics is more complex than delivering functionality, tactics are more error prone than software functionalities, and the architects tend to introduce fewer bugs into the implementation of architectural tactics compared to the developers.

BibTeX
@inproceedings{Rehman-al:ICSE18,
  author    = {Inayat Rehman and
               Mehdi Mirakhorli and
               Meiyappan Nagappan and
               Azat Aralbay Uulu and
               Matthew Thornton},
  title     = {Roles and impacts of hands-on software architects in five industrial case studies},
  booktitle = {ICSE},
  pages     = {117--127},
  publisher = {{ACM}},
  year      = {2018},
}

Related papers