Abstract
Although the skills and knowledge of software architects have already been the subject of some studies in recent years, researchers and practitioners still have not come to a clear consensus about the activities that a software architect is often responsible in practice in order to be considered successful. In recent years, due to occurrence of successive changes and evolution of new technologies, the roles of the architect and even practices related to software architecture have been continuously changed in the software development life cycle. The software architect is expected to possess a diversity of skills. In addition to technical knowledge, domain knowledge and communication skills must be considered. However, there are many job offerings for this position which have in their description skills and roles totally different from the ones already known and considered essential by academic and industry studies. In order to better understand what software architects actually do in their daily activities in practice, and how this resembles or distances themselves from the skills, roles and knowledge cited in the literature as essential, in this article we have conducted a large-scale survey with 536 professionals who currently work or have worked at some period in their careers as software architects. Among the results, it is clear that the roles, responsibilities, activities and tasks performed by software/system architects are still largely unknown and diffuse in organizations, as important tasks to be performed by software architects are still not common sense in industry.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Barroso, A.S., da Silva, J.S.M., Soares, M.S., do Nascimento, R.P.C.: Inuence of human personality in software engineering - a systematic literature review. In: ICEIS 2017 - Proceedings of the 19th International Conference on Enterprise Information Systems, Porto, Portugal, 26–29 April 2017, vol. 3, pp. 53–62 (2017)
Besker, T., Martini, A., Bosch, J.: Impact of architectural technical debt on daily software development work – a survey of software practitioners. In: 2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA), pp. 278–287. IEEE (2017)
Correa, B.: How are architects made? IEEE Softw. 30(5), 11–13 (2013)
Cui, X.: Retrospection and perspectives on pragmatic software architecture design: an industrial report. In: Lee, R. (ed.) ICIS 2017. SCI, vol. 719, pp. 13–28. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-60170-0_2
Easterbrook, S., Singer, J., Storey, M.A., Damian, D.: Selecting empirical methods for software engineering research. In: Shull, F., Singer, J., Sjøberg, D.I.K. (eds.) Guide to Advanced Empirical Software Engineering, pp. 285–311. Springer, London (2008). https://doi.org/10.1007/978-1-84800-044-5_11
Erder, M., Pureur, P.: What’s the architect’s role in an agile, cloud-centric world? IEEE Softw. 33(5), 30–33 (2016)
Galster, M., Tamburri, D.A., Kazman, R.: Towards understanding the social and organizational dimensions of software architecting. ACM SIGSOFT Softw. Eng. Notes 42(3), 24–25 (2017)
Garlan, D.: Software architecture: a travelogue. In: Proceedings of the on Future of Software Engineering, FOSE 2014, pp. 29–39. ACM, New York (2014)
Gorton, I.: Understanding software architecture. In: Gorton, I. (ed.) Essential Software Architecture, pp. 1–15. Springer, Berlin (2011). https://doi.org/10.1007/978-3-642-19176-3_1
Hohpe, G., Ozkaya, I., Zdun, U., Zimmermann, O.: The software architect’s role in the digital age. IEEE Softw. 33(6), 30–39 (2016)
Hoorn, J.F., Farenhorst, R., Lago, P., Vliet, H.V.: The lonesome architect. J. Syst. Softw. 84(9), 1424–1435 (2011)
Hutchinson, J.E., Whittle, J., Rouncefield, M.: Model-driven engineering practices in industry: social, organizational and managerial factors that lead to success or failure. Sci. Comput. Program. 89, 144–161 (2014)
ISO/IEC/IEEE: ISO/IEC/IEEE 42010 Systems and Software Engineering-Architecture Description, 1st edn. (2011)
Klein, J.: What makes an architect successful? IEEE Softw. 33(1), 20–22 (2016)
Koenig, A.: Patterns and antipatterns. Patterns Handb.: Tech. Strat. Appl. 13, 383–383 (1998)
Kruchten, P.: Common misconceptions about software architecture. Rational Edge 1, 1998–1998 (2001)
Kruchten, P.: A what do software architects really do? J. Syst. Softw. 81, 2413–2416 (2008)
Kruchten, P., Capilla, R., Dueñas, J.C.: The decision view’s role in software architecture practice. IEEE Softw. 26(2), 36–42 (2009)
Kruchten, P., Obbink, H., Stafford, J.: The past, present, and future for software architecture. IEEE Softw. 23(2), 22–30 (2006)
Microsoft: The Role of an Architect. Architect. J. (15) (2008)
Niu, N., Xu, L.D., Bi, Z.: Enterprise information systems architecture-analysis and evaluation. IEEE Trans. Ind. Inf. 9(4), 2147–2154 (2013)
Rahman, A., Partho, A., Meder, D., Williams, L.: Which factors influence practitioners’ usage of build automation tools? In: Proceedings of the 3rd International Workshop on Rapid Continuous Software Engineering, pp. 20–26. IEEE Press (2017)
Raunak, M.S., Binkley, D.: Agile and other trends in software engineering. In: 2017 IEEE 28th Annual Software Technology Conference (STC), pp. 1–7. IEEE (2017)
Ribeiro, F., Rettberg, A., Pereira, C., Steinmetz, C., Soares, M.: An approach to formalization of architectural viewpoints design in real-time and embedded domain. In: 2018 IEEE 21st International Symposium on Real-Time Distributed Computing (ISORC), pp. 59–66, May 2018
SEI: Community Software Architecture Definitions (2017). http://www.sei.cmu.edu/architecture/start/community.cfm
SEI: Duties, Skills, and Knowledge of a Software Architect (2017). https://www.sei.cmu.edu/architecture/research/previousresearch/duties.cfm
Spinellis, D.: The changing role of the software architect. IEEE Softw. 33(6), 4–6 (2016)
Tofan, D., Galster, M., Avgeriou, P., Schuitema, W.: Past and future of software architectural decisions – a systematic mapping study. Inf. Softw. Technol. 56, 850–872 (2014)
Weinreich, R., Buchgeher, G.: Towards supporting the software architecture life cycle. J. Syst. Soft. 85(3), 546–561 (2012)
Weinreich, R., Groher, I.: The architect’s role in practice: from decision maker to knowledge manager? IEEE Softw. 33(6), 63–69 (2016)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Oliveira, M.R., Vieira, F.J.R., Misra, S., Soares, M.S. (2019). A Survey on the Skills, Activities and Role of the Software Architect in Brazil. In: Misra, S., et al. Computational Science and Its Applications – ICCSA 2019. ICCSA 2019. Lecture Notes in Computer Science(), vol 11623. Springer, Cham. https://doi.org/10.1007/978-3-030-24308-1_4
Download citation
DOI: https://doi.org/10.1007/978-3-030-24308-1_4
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-24307-4
Online ISBN: 978-3-030-24308-1
eBook Packages: Computer ScienceComputer Science (R0)