6533b862fe1ef96bd12c5fcd
RESEARCH PRODUCT
Investigating the causal mechanisms underlying the customization of software development methods
Hadi Ghanbarisubject
Prosessiteoriatekninen velkaKirjallisuuskatsauksetohjelmistokehittäjätohjelmistotuotantosystematic literature reviewlaatubalancinginformation systems developmentGrounded theorytyötavatmenetelmättyömenetelmättechnical debtprocess theoryräätälöintisoftware development methodsbehavioral software engineeringohjelmistokehitysvaatimuksetdescription
Over the last four decades, software development has been one of the mainstream topics in the Software Engineering and Information Systems disciplines. Thousands of methods have been put forward offering prescriptions for software development processes. The goal of these methods is to produce high-quality software in a systematic manner. However, it is widely known that these methods are rarely followed as prescribed – developers often modify or skip different steps, practices, or quality rules recommended by software development methods. While a group of previous studies suggests that maximizing the flexibility and leanness of software development processes is the key driver of such customizations, another group argues that the inadequacy of these methods to fulfill stakeholders’ expectations is the main reason they are customized in practice. However, to the best of our knowledge, there are no theory-based and empirically grounded explanations elucidating the causal mechanisms underlying the customization of software development methods. We attempted to take the first step in overcoming this gap by conducting this doctoral research. We first conducted an extensive Systematic Literature Review to identify the gaps in research on customization of software development methods and to clarify the need for addressing these shortcomings. Following this, we attempted to address some of the identified gaps by conducting a longitudinal field study. Collecting data from different software projects across industrial domains and using the Grounded Theory Methodology, we built a process theory called Theory of Software Development Balance. In this theory, we explain the mechanisms through which software development methods are customized in practice in order to maintain balance among contrasting and sometimes contradictory contextual forces associated with software projects.
year | journal | country | edition | language |
---|---|---|---|---|
2017-01-01 |