Date of Award

1-1-2016

Document Type

Thesis

Degree Name

M.S.

Department

Computer Science

First Advisor

Matthew Rutherford

Second Advisor

Susanne Sherba

Keywords

agile, case study, scaling, software development

Abstract

Agile software development methodologies are extremely popular. Their dynamic restructuring of the development process has been seen as the silver bullet for increasing the productivity of software development. A significant number of studies have analyzed the impact of implementing agile techniques. However these are mostly evaluated only in smaller team settings. There is very little reporting done on how agile development methods can be implemented at the team level and scaled up at the program/portfolio level in large software organizations.

We present the results of an empirical study conducted at Pearson Education. The study focuses on the penetration of agile development in the organization, agile development practices followed at the team and program level and the perception of agile development by the people in diverse roles.

The study shows that about 90% of the respondents use agile development. Of those working in agile development 13% work at the program level and 87% work at the team level. Similar to the practices at the team level, there are standard practices followed at the program level with varying rigor. Most view agile development favorably due to the benefits of agile development. Top benefits reported are improved communication between team members, quick releases and the increased flexibility to changes. Our analysis also indicates that among the population using the non-agile methods, 83% would like to switch to agile methods, while 11% of the agile users would like to switch to non-agile methods. Agile practices are followed more rigorously in larger teams. Respondents who only have experience working with agile methods practice agile techniques more rigorously and perceive it more positively. Respondents with training in agile methods are significantly more inclined to adhere to the process and have an overwhelmingly positive opinion about it. However, challenging conventional wisdom is the finding that experience does not impact the rigor or perception of agile methods. Dependencies among projects seem to have negative impact on the success at the program level due to the challenges in coordination. There is an increased need to focus on testing at the project level; however the rest of the aspects like estimation, prioritization, productivity and time tracking, reviews and continuous integration are working well at the project level. There can be an increased focus on some of the less rigorously used practices at the program level. As training seems to have a significant positive impact on the overall experience of agile development, it would help to increase the focus on training at an organizational level.

In conclusion the data indicates that there is a way of successfully scaling up agile methods from the team/project level to the program level by following a disciplined approach. Teams and programs have dependencies, so better synchronization and coordination can be achieved if the agile methods are implemented across all the teams and programs. Training resources, defining and rigorously practicing agile techniques at the program and project level and reducing dependencies are key factors in the success of scaling agile methodologies.

Provenance

Recieved from ProQuest

Rights holder

Nikita Kataria

File size

117 p.

File format

application/pdf

Language

en

Discipline

Computer science

Share

COinS