Back to top

Paper Investigating the Establishment of Architecture Principles for Supporting Large-Scale Agile Transformations at EDOC 2019

The widespread use of agile methods shows a fundamental shift in the way organizations try to cope with unpredictable competitive environments. In large-scale agile settings, multiple development activities need to be coordinated to achieve desirable enterprise-wide effects and agility. A powerful instrument to effectively guide and steer large-scale agile endeavors is the formulation and usage of architecture principles.
Despite their raison d'être to guide large organizational transformations, extant studies on how principles can be used to support large-scale agile transformations are still lacking.

Against this backdrop, we present a multiple-case study involving five German companies that aims to shed light on the establishment of architecture principles to support large-scale agile transformations. Based on our results from sixteen semi-structured interviews, we present current practices as well as challenges faced by organizations during the application of architecture principles. In addition, we show a set of principles used to support large-scale agile transformations.


Paper titled Recurring Concerns and Best Practices of Agile Coaches and Scrum Masters at PLoP 2019

Ever since the release of the agile manifesto in 2001, agile methods have received widespread interest in industry and academia. Agile methods have transformed and brought unique changes to software development practices by strongly emphasizing team collaboration, change tolerance, and active customer involvement. Their proven benefits have also inspired organizations to apply them in large-scale settings. However, the adoption of agile methods at scale entails unique challenges such as coordinating and aligning multiple large-scale agile activities, dealing with internal silos, and establishing an agile culture & mindset throughout the organization. In particular, agile coaches and scrum masters are confronted with unprecedented concerns in large-scale agile development. Notwithstanding their importance for large-scale agile endeavors, extant literature still lacks an overview of their typical concerns and a collection of patterns to address them. Against this backdrop, we provide an overview of typical concerns and present five best practices of agile coaches and scrum masters in large-scale agile development.


Paper titled Documenting Recurring Concerns and Patterns in Large-Scale Agile Development accepted at EuroPLoP 2019

The introduction of agile methods at scale entails unique concerns such as inter-team coordination, dependencies to other organizational units, or distribution of work without a defined architecture. Compared to the rich body of agile software development literature describing typical challenges and best practices, recurring concerns and patterns in large-scale agile development are not yet documented extensively. We aim to fill this gap by presenting a pattern language for large-scale agile software development as part of our larger research initiative in close collaboration with 10 companies. The structure and practical relevance of the proposed language were evaluated by 14 interviews. In this paper, we showcase our pattern language by presenting four patterns.


Paper titled Supporting Large-Scale Agile Development with Domain-driven Design by Ömer Uludag, Matheus Hauder, Martin Kleehaus, Christina Schimpfle, and Florian Matthes accepted at XP 2018

Abstract:

An increasing number of large organizations are adopting agile and lean methods at larger scale for building complex software systems. One major critique of agile development and in particular of large-scale agile development is the neglect of proper architecting assistance in such development efforts. On the one hand, emergent architecture design may require excessive redesign efforts in large systems, while on the other hand, big upfront architecture delays the starting point of implementation. Domain-driven Design (DDD) addresses this problem by providing means for evolving the architecture of complex systems in an agile way. We describe how DDD can support large-scale agile development based on a conducted case study in a large insurance company with three agile teams. Furthermore, we present a framework for large-scale agile development that is largely based on Large-Scale Scrum and incorporates strategic and tactical DDD.