A Software Process Improvement Model for Small Firms in Developing Countries

A Software Process Improvement Model for Small Firms in Developing Countries

Delroy Chevers (The University of the West Indies, Jamaica), Annette M. Mills (University of Canterbury, New Zealand), Evan Duggan (The University of the West Indies, Jamaica) and Stanford Moore (The University of the West Indies, Jamaica)
DOI: 10.4018/978-1-7998-1786-4.ch003

Abstract

Managing software quality is a major challenge for software development firms. This has led many firms to adopt software process improvement programs such as the capability maturity model integration to improve the software development process. However, these models are often too cumbersome and costly, especially for small software firms in developing countries, to implement. This chapter proposes a simplified software process improvement model that prioritises key practices for software development, given the constraints that face small firms. Using data collected in four developing countries in the English-speaking Caribbean from 112 developer/user dyads on their software practices, the results show that software process coupled with supporting technology (e.g., project management tools) significantly impact the quality of the software product. Smaller projects (represented by size of the project team) are also associated with high quality software products than larger projects. Implications for SPI programs in small firms and future research is discussed.
Chapter Preview
Top

Introduction

The key to the survival of software development firms, both large and small, is to develop and deliver high quality software products (Larrucea, O’Connor, Colomo-Palacios, & Laporte, 2016; Tan, 1996). One approach to achieve this goal is the application of software process improvement (SPI) programs. The benefits of software process improvement (SPI) programs include improvements in software product quality, staff productivity, return on investment, customer satisfaction, and reduced deployment and implementation time (Larrucea et al., 2016; Lee, Shiue, & Chen, 2016; Niazi, Babar, & Verner, 2010; Staples & Niazi, 2008). To achieve these benefits, firms must be able to manage the software development process well and deliver high quality software products. This is a challenge (Larrucea et al., 2016), as evidenced in high project failure rates, time overruns and budget overruns (Standish Group, 2015). Even with improvements in software development processes, for example with the shift to agile development, the failure rate on software projects continues to be high.

The 2015 Chaos report on software projects shows the rate of project success has improved rising from 16% in 1995 to 29% in 2015, and as high as 31% in 2013. However, projects still continue to fail at a high rate, coming in late, over budget or with less than the required features. Indeed, the period from 2011 to 2015 shows some leveling off in success rates with 2011 reporting 29% of projects as successful (and 49% as challenged e.g. coming in late or over budget), compared with 2015 with 29% of projects reported as successful, and 52% as challenged (Standish Group, 2015). Small firms in developing countries with financial, physical and human constraints, are even more challenged as they often do not have the capacity to absorb project failures in comparison to large firms or their counterparts in developed countries (Fiestas, 2011). They also do not have the capacity to implement full-fledged SPI programs such as the CMMI. This divide can severely curtail the competitiveness of small software development firms and impede their ability to secure global contracts so negatively impact the viability of these firms (Niazi et al., 2010). To address these challenges, this study suggests a simplified software process improvement model (SPIM-S) for small firms. The aim is to identify a set of software development practices that are more feasible for small firms to implement and which can help them mature over time and attain the thresholds needed to compete more effectively in a global software market.

It is widely believed the people, technology and process are major determinants of software quality (Gorla & Lin, 2010). These determinants singularly or in combination are possible solutions to address the problem of high rates of project failure. The central belief is that software quality is influenced by the people who are involved in the development process and the usage of the system, the technology used to support the development and the software development process that is adopted (SEI, 2010). However, some scholars believe that process has the greatest impact in determining software quality (Pane & Sarnob, 2015; SEI, 2010). Indeed, the improvements noted in project success (Standish Group, 2015) have been attributed to software development factors including processes, methods, skills, and tools.

Complete Chapter List

Search this Book:
Reset