Adam Soliński , pp. 122. COM/School of Computing, 2012.
Context. In recent years there has been observed a significant shift from plan-driven development towards agile, which is considered as a vast improvement to processes. However, it has also been spotted that agile methodologies are hardly ever applied in their pure form. Moreover, hybrid processes as combinations of plan-driven and agile practices emerge. In addition, agile adoption has been reported to result in both: benefits and limitations.
Objectives. In this study the following matters are investigated: 1) the commonness of plan driven and agile practices usage, 2) common practices combinations, 3) patterns for agile adoption over time, 4) hybrid development models and 5) the actual effects of agile adoption in terms of benefits and limitations as perceived by practitioners.
Methods. The thesis presents an empirical investigation of software development organizations. The objectives are achieved through a targeted survey based on existing evidence and a multidimensional data analysis. The mean for obtaining data is a web-based questionnaire with an interactive board with practices and time indication sliders (to capture applied development models and practices adoption strategies) and hierarchical cumulative voting (to measure the relative significance of benefits and limitations). The data analysis is supported by hierarchical cluster analysis and an extended hierarchical voting analysis framework (EHV-F).
Results. In total, 45 practitioners have been successfully surveyed. The commonness of 7 plan-driven and 14 agile practices usage was investigated. The relative significance of agile adoption benefits (32 factors in 10 categories) and limitations (23 factors in 7 categories) was measured with respect to global view (all respondents and perspectives), different agile adoption strategies as well as distinguished development models.
Conclusions. It is concluded that agile practices dominate over plan-driven, however, hybrid approaches, being combinations of plan-driven and agile practices, are frequently applied. It is also concluded that some practices are commonly used together since they facilitate each other (e.g. continuous integration with testing which facilitate short iterations and releases). Some agile practices are still unsuccessfully applied and eventually abandoned (e.g. pair programming), what should be further investigated by researchers. Incremental agile adoption strategy was found to be the most beneficial approach. It is also concluded that agile adoption leads first of all to improved quality of working life, increased knowledge transfer and improved verification and validation processes. On the other hand, agile adoption is very demanding since it requires high professional skills from development teams as well as managers. Hence, more resources should be devoted to training on agile for all the parties involved in development. Agile is still commonly considered to be poorly scalable. Moreover, the quality of design with agile methods is not considered as a benefit at all. These areas should be further investigated by researchers.