On 26 May 2019, the paper “What are Hybrid Development Methods Made of? An Evidence-based Characterization” won the ACM SIGSOFT Distinguished Paper Award at the International Conference on Software and Systems Process (ICSSP 2019) in Montreal, Canada. ICSSP is an A-category international conference co-located with the premier conference in the field of software engineering worldwide, the International Conference on Software Engineering (ICSE 2019). At ICSSP 2019, only one paper was awarded the ACM Distinguished Paper award this year. Dietmar Pfahl, one of the co-authors of the awarded paper, further explains its importance and their main findings.
Among the multitude of software development processes available, hardly anyone is used by the book. Regardless of company size or industry sector, most project teams and companies worldwide use customized processes that combine different development methods into so-called hybrid development methods. However, a deeper understanding and guidance of how to systematically combine synergetic practices within hybrid development methods is missing.
Modern software and system development does not follow any blueprint. A variety of different frameworks, methods, and practices are used in practice. Typically, software engineers in the industry evolve their processes over time to improve, for instance, various product quality attributes and to keep flexibility regarding the ability to react to change. However, a comprehensive understanding of what a hybrid development method is composed of is missing. For example, it is unknown which combinations of frameworks, methods, and practices for software and system development help software engineers implement a process environment that provides their company with a stable framework while maintaining the required level of flexibility.
The objective of the research
The research presented in this paper aims to lay the foundation for understanding hybrid development methods and to develop adaptable construction procedures that help devise such methods grounded in evidence. The objective of the research is to understand which frameworks, methods, and practices are used to realize hybrid methods in practice and to provide an evidence-based characterization of such methods. With frameworks, we mean a set of criteria that helps characterize and select methods and their practices in a given context (e.g., a specific company). With methods, we mean process types such as Waterfall or Scrum. With practices, we mean method elements such as Coding Standard, Code Review, or Release Planning. The characterization of hybrid methods with the help of core practices forms the starting point to devise guidelines for practitioners in industry on how to best combine practices within hybrid methods in company-specific contexts.
Based on a large-scale international online survey, we analyzed 1,467 data points that provide information about the combined use of 60 frameworks, methods, and practices. Our findings indicate that using hybrid development methods is the norm in modern software and system development and that using hybrid methods happens in companies of all sizes and across all industry sectors. We identify eight base methods providing the basis for devising hybrid methods, and we statistically compute sets of practices used to embody the base methods. We contribute a statistical process that helps computing hybrid methods (including process variants) to provide advice to practitioners what (not) to include in their process portfolio (cf. Figures 1 and 2)
The research presented in this paper emerged from the HELENA (Hybrid dEveLopmENt Approaches in software systems development) study, a large-scale international online survey in which 75 researchers and practitioners from 25 countries participated. The study was implemented in two stages. All data and complementing materials of the second stage are available online. General information about HELENA can be found here.
Figure 1: Characterization of base methods (top) and method combinations (bottom) generated by identifying recurring combinations of three practices with at least 85% agreement level that contain the core of the entire dataset, i.e., (Code Review–Coding Standards).
Figure 2: Refined characterization using the filtered dataset (i.e., respondents said they are using hybrid methods) of base methods (top) and method combinations (bottom). The three cores used are: (Code Review–Coding Standards), (Coding Standards–Release Planning), (Code Review–Release Planning).