-
The Presence and the State-of-Practice of Software Architects in the Brazilian Industry -- A Survey
Authors:
Valdemar Vicente Graciano Neto,
Diana Lorena Santos,
Andrey Gonçalves França,
Rafael Z. Frantz,
Edson de Oliveira-Jr,
Ahmad Mohsin,
Mohamad Kassab
Abstract:
Context: Software architecture intensely impacts the software quality. Therefore, the professional assigned to carry out the design, maintenance and evolution of architectures needs to have certain knowledge and skills in order not to compromise the resulting application. Objective: The aim of this work is to understand the characteristics of the companies regarding the presence or absence of soft…
▽ More
Context: Software architecture intensely impacts the software quality. Therefore, the professional assigned to carry out the design, maintenance and evolution of architectures needs to have certain knowledge and skills in order not to compromise the resulting application. Objective: The aim of this work is to understand the characteristics of the companies regarding the presence or absence of software architects in Brazil. Method: This work uses the Survey research as a means to collect evidence from professionals with the software architect profile, besides descriptive statistics and thematic analysis to analyze the results. Results: The study collected data from 105 professionals distributed in 24 Brazilian states. Results reveal that (i) not all companies have a software architect, (ii) in some cases, other professionals perform the activities of a software architect and (iii) there are companies that, even having a software architecture professional, have other roles also performing the duties of such a professional. Conclusions: Professionals hired as software architects have higher salaries than those hired in other roles that carry out such activity, although many of those other professionals still have duties that are typical of software architects.
△ Less
Submitted 1 March, 2024;
originally announced March 2024.
-
Anachronic Tertiary Studies in Software Engineering: An Exploratory Quaternary Study
Authors:
Valdemar Vicente Graciano Neto,
Célia Laís Rodrigues,
Fernando Kenji Kamei,
Juliano Lopes de Oliveira,
Eliomar Araújo de Lima,
Mohamad Kassab,
Roberto Oliveira
Abstract:
Systematic literature reviews tentativelydescribe the state of the art in a given research area. However, the continuous publication of new primary and secondary studies following the release of a tertiary study can make the communication of results not integrally representative in regards to the advances achieved by that time. Consequently, using such a study as a reference within specific bodies…
▽ More
Systematic literature reviews tentativelydescribe the state of the art in a given research area. However, the continuous publication of new primary and secondary studies following the release of a tertiary study can make the communication of results not integrally representative in regards to the advances achieved by that time. Consequently, using such a study as a reference within specific bodies of knowledge may introduce imprecision, both in terms of its subareas and with respect to new methodologies, languages, and tools. Thus, a review of tertiary studies (what could be understood as a quaternary study) could contribute to show the representativeness of the reported findings in comparison to the state of the art and also to compile a set of perceptions that could not be previously achieved. In that direction, the main contribution of this paper is presenting the findings from an analysis of 34 software engineering tertiary studies published between 2009 and 2021. The results indicate that over 60% of the studies demonstrate varying degrees of anachronism due to the publication of primary and secondary studies following the publication of the tertiary study or even due to a time elapse between its conduction and its publication.
△ Less
Submitted 31 October, 2023;
originally announced November 2023.
-
Archify: A Recommender System of Architectural Design Decisions
Authors:
Breno Cruvinel Marinho,
Renato Bulcão-Neto,
Valdemar Vicente Graciano Neto
Abstract:
Software architectures play a critical role in software quality assurance. However, small and medium companies (SMC) often suffer from the absence of professionals with skills and expertise in software architecture. That situation potentially affects the final quality of the software products and pressures projects budget with extra costs with consulting. This paper presents a recommender system o…
▽ More
Software architectures play a critical role in software quality assurance. However, small and medium companies (SMC) often suffer from the absence of professionals with skills and expertise in software architecture. That situation potentially affects the final quality of the software products and pressures projects budget with extra costs with consulting. This paper presents a recommender system of architectural design decisions called Archify. The goal is to support SMC companies in part of the effort of architecturally designing their products. Archify implements a wizard-styled interface that guides the developer or project manager through a set of specific questions. While the user answers these questions, Archify buffers a set of corresponding architectural decision recommendations. As the final result, the system recommends a set of architectural decisions matching the project's needs according to the requirements (as provided by the user) of the software under development. Nineteen professionals from academia and industry evaluated Archify through two surveys. The findings reveal that 94.7% of the participants approved Archify as a supporting tool. Respondents also highlighted the lack of tools supporting software architecture design, remarking the relevance of the proposed system.
△ Less
Submitted 15 June, 2021;
originally announced June 2021.
-
Expanding Frontiers: Settling an Understanding of Systems-of-Information Systems
Authors:
Valdemar Vicente Graciano Neto,
Bruno Gabriel Araújo Lebtag,
Paulo Gabriel Teixeira,
Priscilla Batista,
Vinícius Carvalho Lopes,
Jamal El-Hachem,
Jérémy Buisson,
Flavio Oquendo,
Juliana Fernandes,
Francisco Ferreira,
Rodrigo Peireira dos Santos,
Davi Viana,
Everton Cavalcante,
Mohamad Kassab,
Ahmad Mohsin,
Roberto Oliveira,
Vânia Neves,
Maria Istela Cagnin,
Elisa Yumi Nakagawa
Abstract:
System-of-Systems (SoS) has consolidated itself as a special type of software-intensive systems. As such, subtypes of SoS have also emerged, such as Cyber-Physical SoS (CPSoS) that are formed essentially of cyber-physical constituent systems and Systems-of-Information Systems (SoIS) that contain information systems as their constituents. In contrast to CPSoS that have been investigated and covered…
▽ More
System-of-Systems (SoS) has consolidated itself as a special type of software-intensive systems. As such, subtypes of SoS have also emerged, such as Cyber-Physical SoS (CPSoS) that are formed essentially of cyber-physical constituent systems and Systems-of-Information Systems (SoIS) that contain information systems as their constituents. In contrast to CPSoS that have been investigated and covered in the specialized literature, SoIS still lack critical discussion about their fundamentals. The main contribution of this paper is to present those fundamentals to set an understanding of SoIS. By offering a discussion and examining literature cases, we draw an essential settlement on SoIS definition, basics, and practical implications. The discussion herein presented results from research conducted on SoIS over the past years in interinstitutional and multinational research collaborations. The knowledge gathered in this paper arises from several scientific discussion meetings among the authors. As a result, we aim to contribute to the state of the art of SoIS besides paving the research avenues for the forthcoming years.
△ Less
Submitted 25 March, 2021;
originally announced March 2021.
-
A Taxonomy of Modeling Approaches for Systems-of-Systems Dynamic Architectures: Overview and Prospects
Authors:
Ahmad Mohsin,
Naeem Khalid Janjua,
Syed MS Islam,
Valdemar Vicente Graciano Neto
Abstract:
Systems-of-Systems (SoS) result from the collaboration of independent Constituent Systems (CSs) to achieve particular missions. CSs are not totally known at design time, and may also leave or join SoS at runtime, which turns the SoS architecture to be inherently dynamic, forming new architectural configurations and impacting the overall system quality attributes (i.e. performance, security and rel…
▽ More
Systems-of-Systems (SoS) result from the collaboration of independent Constituent Systems (CSs) to achieve particular missions. CSs are not totally known at design time, and may also leave or join SoS at runtime, which turns the SoS architecture to be inherently dynamic, forming new architectural configurations and impacting the overall system quality attributes (i.e. performance, security and reliability). Therefore, it is vital to model and evaluate the impact of these stochastic architectural changes on SoS properties at abstract level at the early stage in order to analyze and select appropriate architectural design. Architectural description languages (ADL) have been proposed and used to deal with SoS dynamic architectures. However, we still envision gaps to be bridged and challenges to be addressed in the forthcoming years. This paper presents a broad discussion on the state-of-the-art notations to model and analyze SoS dynamic architectures. The main contribution this paper is threefold: (i) providing results of a literature review on the support of available architecture modeling approaches for SoS and an analysis of their semantic extension to support specification of SoS dynamic architectures, and (ii) a corresponding taxonomy for modeling SoS obtained as a result of the literature review. Besides, we also discuss future directions and challenges to be overcome in the forthcoming years.
△ Less
Submitted 23 May, 2019; v1 submitted 24 February, 2019;
originally announced February 2019.
-
Towards Methods for Model-Based Software Development
Authors:
Valdemar Vicente Graciano Neto,
Luiz Fernando Batista Loja
Abstract:
Software engineering is a young discipline. Despite efforts in recent years, some elements still require further development, research, and systematization. One of these elements are methods. They consist of a set of well-defined activities used in a software development to guide how the work should be performed to achieve the expected results. However, there is a lack of systematic knowledge that…
▽ More
Software engineering is a young discipline. Despite efforts in recent years, some elements still require further development, research, and systematization. One of these elements are methods. They consist of a set of well-defined activities used in a software development to guide how the work should be performed to achieve the expected results. However, there is a lack of systematic knowledge that effectively guide how work should be done in a variety of areas. Despite the knowledge available in Software Engineering Body of Knowledge (SWEBOK), only the classical methods are comprised there, while emerging topics such as Agent-Oriented Software Engineering (AOSE), Aspect-Oriented Software Development (AOSD), and Model-Based Software Development (MBSE) are only briefly mentioned. We claim that it is also necessary to investigate methods for those emerging software engineering subtracks. In this direction, this paper presents a a speculative and preliminary emerging results on the establishment of methods for MBSE. We report some insights on the conception of methods for MBSE.
△ Less
Submitted 8 December, 2017; v1 submitted 6 December, 2017;
originally announced December 2017.