TY - GEN
T1 - Developers’ perceptions on object-oriented design and architectural roles
AU - Aniche, Maurício
AU - Gerosa, Marco Aurélio
AU - Treude, Christoph
N1 - Publisher Copyright:
© 2016 ACM.
PY - 2016/9/19
Y1 - 2016/9/19
N2 - Software developers commonly rely on well-known software architecture patterns, such as MVC, to build their applications. In many of these patterns, classes play specific roles in the system, such as Controllers or Entities, which means that each of these classes has specific characteristics in terms of object-oriented class design and implementation. Indeed, as we have shown in a previous study, architectural roles are dierent from each other in terms of code metrics. In this paper, we present a study in a software development company in which we captured developers’ perceptions on object-oriented design aspects of the architectural roles in their system and whether these perceptions match the source code metric analysis. We found that their developers do not have a common perception of how their architectural roles behave in terms of object-oriented design aspects, and that their perceptions also do not match the results of the source code metric analysis. This phenomenon also does not seem to be related to developers’ experience. We find these results alarming, and thus, we suggest software development teams to invest in education and knowledge sharing about how their system’s architectural roles behave.
AB - Software developers commonly rely on well-known software architecture patterns, such as MVC, to build their applications. In many of these patterns, classes play specific roles in the system, such as Controllers or Entities, which means that each of these classes has specific characteristics in terms of object-oriented class design and implementation. Indeed, as we have shown in a previous study, architectural roles are dierent from each other in terms of code metrics. In this paper, we present a study in a software development company in which we captured developers’ perceptions on object-oriented design aspects of the architectural roles in their system and whether these perceptions match the source code metric analysis. We found that their developers do not have a common perception of how their architectural roles behave in terms of object-oriented design aspects, and that their perceptions also do not match the results of the source code metric analysis. This phenomenon also does not seem to be related to developers’ experience. We find these results alarming, and thus, we suggest software development teams to invest in education and knowledge sharing about how their system’s architectural roles behave.
KW - Code metrics
KW - Object-oriented design
KW - Software architecture
UR - http://www.scopus.com/inward/record.url?scp=85054175353&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85054175353&partnerID=8YFLogxK
U2 - 10.1145/2973839.2973846
DO - 10.1145/2973839.2973846
M3 - Conference contribution
AN - SCOPUS:85054175353
SN - 9781450342018
T3 - ACM International Conference Proceeding Series
SP - 63
EP - 72
BT - Proceedings - SBES 2016
A2 - Santanda de Almeida, Eduardo
PB - Association for Computing Machinery
T2 - 30th Brazilian Symposium on Software Engineering, SBES 2016
Y2 - 19 September 2016 through 23 September 2016
ER -