No Arabic abstract
Scrum teams are the most important drivers to lead an Agile project to its success. Nevertheless, a theory, which is able to explain its dynamics is still missing. Therefore, we performed a seven-year-long investigation where we first induced a theoretical model through thirteen field studies. Based on such a model, we developed a customized and validated survey tool and collected data from almost 1.200 Scrum teams. Data have been subsequently analyzed with Covariance-Based Structural Equation Modeling. Results suggest a very good fit of the empirical data in our theoretical model (CFI = 0.952, RMSEA = 0.041, SRMR = 0.037). Accordingly, this research allowed us to (1) propose and validate a theory for effective Scrum teams, (2) formulate clear recommendations for how organizations can better support Scrum teams.
A number of qualitative studies find that team leadership is one essential success factor for evolving into a mature agile team. One such qualitative study suggests the 9-Factor Theory of Scrum Master roles, which claims that the Scrum Master performs a set of 9 leadership roles which are transferred to the team over time (Spiegler et al., 2019). We aimed at conducting a quantitative exploration that examines the presence and change of the 9-Factory Theory in relation to team maturity. We conducted an online survey with 67 individuals at the conglomerate Robert Bosch GmbH. Descriptive statistics reveal that the Scrum Master and the agile team score differently on the 9 factors and that the Scrum Master role is most often distributed in teams that had been working between 3 and 5 months in an agile manner. Yet, we also find that the leadership roles predominantly remain with one dedicated Scrum Master. Based on our results we suggest to group the 9-Factor Theory into three clusters: the Scrum Master is rather linked to psychological team factors (1), while the team tends to be linked to rather product-related factors (2). Organizational factors (3) are less often present. Our practical implications suggest an extension of the Scrum Master description. Furthermore, our study lays groundwork for future quantitative testing of leadership in agile teams.
Scrum, the most popular agile method and project management framework, is widely reported to be used, adapted, misused, and abused in practice. However, not much is known about how Scrum actually works in practice, and critically, where, when, how and why it diverges from Scrum by the book. Through a Grounded Theory study involving semi-structured interviews of 45 participants from 30 companies and observations of five teams, we present our findings on how Scrum works in practice as compared to how it is presented in its formative books. We identify significant variations in these practices such as work breakdown, estimation, prioritization, assignment, the associated roles and artefacts, and discuss the underlying rationales driving the variations. Critically, we claim that not all variations are process misuse/abuse and propose a nuanced classification approach to understanding variations as standard, necessary, contextual, and clear deviations for successful Scrum use and adaptation
Scrum is a structured framework to support complex product development. However, Scrum methodology faces a challenge of managing large teams. To address this challenge, in this paper we propose a solution called Scrum of Scrums. In Scrum of Scrums, we divide the Scrum team into teams of the right size, and then organize them hierarchically into a Scrum of Scrums. The main goals of the proposed solution are to optimize communication between teams in Scrum of Scrums; to make the system work after integration of all parts; to reduce the dependencies between the parts of system; and to prevent the duplication of parts in the system.
Developing sustainable scientific software for the needs of the scientific community requires expertise in both software engineering and domain science. This can be challenging due to the unique needs of scientific software, the insufficient resources for modern software engineering practices in the scientific community, and the complexity of evolving scientific contexts for developers. These difficulties can be reduced if scientists and developers collaborate. We present a case study wherein scientists from the SuperNova Early Warning System collaborated with software developers from the Scalable Cyberinfrastructure for Multi-Messenger Astrophysics project. The collaboration addressed the difficulties of scientific software development, but presented additional risks to each team. For the scientists, there was a concern of relying on external systems and lacking control in the development process. For the developers, there was a risk in supporting the needs of an user-group while maintaining core development. We mitigated these issues by utilizing an Agile Scrum framework to orchestrate the collaboration. This promoted communication and cooperation, ensuring that the scientists had an active role in development while allowing the developers to quickly evaluate and implement the scientists software requirements. While each system was still in an early stage, the collaboration provided benefits for each group: the scientists kick-started their development by using an existing platform, and the developers utilized the scientists use-case to improve their systems. This case study suggests that scientists and software developers can avoid some difficulties of scientific computing by collaborating and can address emergent concerns using Agile Scrum methods.
The most prominent Agile framework Scrum, is often criticized for its amount of meetings. These regular events are essential to the empirical inspect-and-adapt cycle proposed by Agile methods. Scrum meetings face several challenges, such as being perceived as boring, repetitive, or irrelevant, leading to decreased cooperation in teams and less successful projects. In an attempt to address these challenges, Agile practitioners have adopted teamwork, innovation, and design techniques geared towards improving collaboration. Additionally, they have developed their own activities to be used in Scrum meetings, most notably for conducting retrospective and planning events. Design thinking incorporates non-designers and designers in design and conceptualization activities, including user research, ideation, or testing. Accordingly, the design thinking approach provides a process with different phases and accompanying techniques for each step. These design thinking techniques can support shared understanding in teams and can improve collaboration, creativity, and product understanding. For these reasons, design thinking techniques represent a worthwhile addition to the Scrum meeting toolkit and can support Agile meetings in preventing or countering common meeting challenges and achieving meeting goals. This chapter explores how techniques from the design thinking toolkit can support Scrum meetings from a theoretical and practical viewpoint. We analyze Scrum meetings requirements, goals, and challenges and link them to groups of techniques from the design thinking toolkit. In addition, we review interview and observational data from two previous studies with software development practitioners and derive concrete examples. As a result, we present initial guidelines on integrating design thinking techniques into Scrum meetings to make them more engaging, collaborative, and interactive.