Factors affecting software development process: An exploratory study

Pozhidaev, Anton (2017) Factors affecting software development process: An exploratory study. [Dissertation (University of Nottingham only)]

[img] PDF - Registered users only - Requires a PDF viewer such as GSview, Xpdf or Adobe Acrobat Reader
Download (543kB)

Abstract

Context: Software development is a widespread activity. It is rapidly evolving through past decades. However, software projects often fail. In order to understand the reasons for failure, it is necessary to understand what factors can positively or negatively affect software development. Software development projects differ from other types of projects by the level of novelty and rapid changes in requirements, tools and environment. In addition, software development is more similar to craftsmanship than to science or engineering. This perplexes the research in software development.

Objective: The objective of this paper is to discover and discuss factors that affect software development.

Method: Semi-structured interviews of software professionals were conducted. Software development professionals from three companies were interviewed. The interview questions have the open-ended design that helps to discover factors without limiting participants in any way. The results from interviews are complemented by literature review.

Results: Six interviewees participated. Half of them used Agile methodologies to some extent and mentioned them as a positive factor. Other mentioned positive factors include: automatic tests, code review, retrospective, dedication to the project, product with unique features, clear goals and vision. The majority of participants mentioned communication issues as the main negative factors. They also stated different types of communication issues such as misunderstanding of issues, reluctance to report mistakes, communication via “middle-man” and communication issues due to insufficient knowledge. In addition, design problems, changing requirements, tight deadlines, insufficient testing, management problems were mentioned as negative factors.

Conclusion: Agile methodologies may positively affect software development and mitigate some communication problems. Yet, it is necessary to understand that Agile methodologies are only guidelines. Agile should be tailored and matured over time in order to satisfy specific needs of each company/project. In order to benefit from Agile, it is important not only to employ Agile practices but embrace Agile values and mindset as well.

Item Type: Dissertation (University of Nottingham only)
Keywords: software development, software development management, factors affecting software development
Depositing User: Pozhidaev, Anton
Date Deposited: 11 Apr 2018 09:42
Last Modified: 17 Apr 2018 15:16
URI: http://eprints.nottingham.ac.uk/id/eprint/45639

Actions (Archive Staff Only)

Edit View Edit View