2nd International Workshop on the Social and Organizational Dimensions of Software Architecting
(SODA 2018)

In conjunction with the International Conference on Software Architecture (ICSA), April 30–May 4 in Seattle, USA

Software architecting shapes a software product and development process in both social and organizational contexts. Architects operate in these contexts, influenced by different stakeholders and other organisational and socio-technical forces. While some have tried to define the role of the architect, there is still no clear consensus of what makes an architect, e.g., in contrast to a developer. Also, social and organizational impacts on the architect and the resulting architecture are often neglected, e.g., since they are seemingly difficult to measure and quantify. Social aspects and the role of different players in the software development process have been previously examined within the broader context of software engineering (e.g., the CHASE and CSD workshop series at ICSE). The SODA workshop on the other hand focuses on the social and organizational dimensions in which architects operate and produce their outputs. SODA focuses on the architect, the surrounding organization, and the process rather than on the architecture as the output of the architecting process. SODA offers a venue for researchers, practitioners and educators within the software architecture domain to jointly discuss experiences, forge new collaborations, and explore innovative solutions in this area.

The second edition of SODA focuses on: (1) Tasks performed and skills required from architects; (2) The wider social and organizational contexts of the architect:
  1. Tasks and skills: One the one hand, there are tasks that architects perform. Literature discusses what architects “really” do, e.g., acting as risk manager, design consultant, project planner, liaising with stakeholders and serving as a technological and software engineering “knowledge bank”. Fowler differentiates architects responsible for important decisions and architects who are closely involved in a project and may even participate in coding. Recent studies indicate a trend of the architect from decision maker to knowledge manager. On the other hand, there are the skills required by an architect to perform their tasks. A software architect is multi-skilled in engineering, technology, management and communication. Architects require hard skills (e.g., technical skills and knowledge, process knowledge) and soft skills (e.g., communication skills, problem solving skills, team skills). These skills appear quite generic and relevant for any type of role in software development. Also, job ads for architects and developers often list similar skills, but tend to only vary in the amount of experience.
  2. Social and organizational context of the architect: Architects operate in and partly manage an organizational and social context where the relationships to other software development roles are critical for software development and operations success. These relations impact how architects (and every member in the development/operation network) can perform their tasks. On the one hand, team-focused software development approaches and paradigms such as DevOps threaten many roles assigned to individual experts. This has led to arguments that architects will not become redundant anytime soon, but in collaborative development environments, the need for roles who deal with software architecture “alone”, is reduced. There seems to be consensus that architects help manage complexity and act as knowledge multiplies when development scales up.