Craig Comstock | University of Oxford (original) (raw)

Papers by Craig Comstock

Research paper thumbnail of Risk analysis in software development

Software is the key factor influencing the success of computer-based systems. However, software i... more Software is the key factor influencing the success of computer-based systems. However, software is expensive to develop, and there are great potential risks to deliver software without any overrun of the cost. In this study we investigated the amount of risk in terms of the range of possible productivity that can be expected in a portfolio of software development projects. Working on a large database with 4106 software projects, this study revealed that inefficient development teams can spend as many as 13 times of the effort taken by proficient teams for the development. This study further examined the effects of project size and team size on the variance in software development effort. The results showed that to reduce the risks of cost overruns, a small project is better than a large project when the team size is chosen in advance, and small team is preferable to a large team for a project of a fixed size.

Research paper thumbnail of The Factors Significant to Software Development Productivity

World Academy of Science, Engineering and Technology, International Journal of Computer, Electrical, Automation, Control and Information Engineering, 2007

The past decade has seen enormous growth in the amount of software produced. However, given the e... more The past decade has seen enormous growth in the amount of software produced. However, given the ever increasing complexity of the software being developed and the concomitant rise in the typical project size, managers are becoming increasingly aware of the importance of issues that influence the productivity levels of the project teams involved. By analyzing the latest release of ISBSG data repository, we report on the factors found to significantly influence the productivity among which average team size and language type are the two most essential ones. Building on this we present an original model for evaluating the potential productivity during the project planning stage.

Research paper thumbnail of The Variation of Software Development Productivity 1995-2005

Abstract—Software development has experienced remarkable progress in the past decade. However, du... more Abstract—Software development has experienced remarkable progress in the past decade. However, due to the rising complexity and magnitude of the project the development productivity has not been consistently improved. By analyzing the latest ISBSG data ...

Research paper thumbnail of The Factors Significant to Software Development Productivity

The past decade has seen enormous growth in the amount of software produced. However, given the e... more The past decade has seen enormous growth in the amount of software produced. However, given the ever increasing complexity of the software being developed and the concomitant rise in the typical project size, managers are becoming increasingly aware of the importance of issues that influence the productivity levels of the project teams involved. By analyzing the latest release of ISBSG data repository, we report on the factors found to significantly influence the productivity among which average team size and language type are the two most essential ones. Building on this we present an original model for evaluating the potential productivity during the project planning stage.

Research paper thumbnail of Strategic Software Development: Productivity Comparisons of General Development Programs

Productivity has been one of the major concerns with the increasingly high cost of software devel... more Productivity has been one of the major concerns with the increasingly high cost of software development. Choosing the right development language with high productivity is one approach to reduce development costs. Working on the large database with 4106 projects ever developed, we found the factors significant to productivity. After the removal of the effects of other factors on productivity, we compare the productivity differences of the ten general development programs. The study supports the fact that fourth-generation languages are more productive than thirdgeneration languages.

Research paper thumbnail of An Investigation on the Variation of Software Development Productivity

The productivity of software development is one of the major concerns for project managers. Given... more The productivity of software development is one of the major concerns for project managers. Given the increasing complexity of the software being developed and the concomitant rise in the typical project size, the productivity has not consistently improved. By analyzing the latest release of ISBSG data repository with 4106 projects ever developed, we report on the factors found to significantly influence productivity, and present an original model for the estimation of productivity during project design. We further illustrate that software development productivity has experienced irregular variations between the years 1995 and 2005. Considering the factors significant to productivity, we found its variations are primarily caused by the variations of average team size for the development and the unbalanced use of the less productive development language 3GL.

Research paper thumbnail of Economies and diseconomies of scale in software development

Journal of Software Maintenance and Evolution: Research and Practice, 2011

Economies and diseconomies of scale—gains and losses in productivity arising from increases in pr... more Economies and diseconomies of scale—gains and losses in productivity arising from increases in project size—are of considerable, practical importance in software engineering. However, there is no consensus as to whether, in general, economies or diseconomies ...

Research paper thumbnail of Risk analysis in software development

Software is the key factor influencing the success of computer-based systems. However, software i... more Software is the key factor influencing the success of computer-based systems. However, software is expensive to develop, and there are great potential risks to deliver software without any overrun of the cost. In this study we investigated the amount of risk in terms of the range of possible productivity that can be expected in a portfolio of software development projects. Working on a large database with 4106 software projects, this study revealed that inefficient development teams can spend as many as 13 times of the effort taken by proficient teams for the development. This study further examined the effects of project size and team size on the variance in software development effort. The results showed that to reduce the risks of cost overruns, a small project is better than a large project when the team size is chosen in advance, and small team is preferable to a large team for a project of a fixed size.

Research paper thumbnail of The Factors Significant to Software Development Productivity

World Academy of Science, Engineering and Technology, International Journal of Computer, Electrical, Automation, Control and Information Engineering, 2007

The past decade has seen enormous growth in the amount of software produced. However, given the e... more The past decade has seen enormous growth in the amount of software produced. However, given the ever increasing complexity of the software being developed and the concomitant rise in the typical project size, managers are becoming increasingly aware of the importance of issues that influence the productivity levels of the project teams involved. By analyzing the latest release of ISBSG data repository, we report on the factors found to significantly influence the productivity among which average team size and language type are the two most essential ones. Building on this we present an original model for evaluating the potential productivity during the project planning stage.

Research paper thumbnail of The Variation of Software Development Productivity 1995-2005

Abstract—Software development has experienced remarkable progress in the past decade. However, du... more Abstract—Software development has experienced remarkable progress in the past decade. However, due to the rising complexity and magnitude of the project the development productivity has not been consistently improved. By analyzing the latest ISBSG data ...

Research paper thumbnail of The Factors Significant to Software Development Productivity

The past decade has seen enormous growth in the amount of software produced. However, given the e... more The past decade has seen enormous growth in the amount of software produced. However, given the ever increasing complexity of the software being developed and the concomitant rise in the typical project size, managers are becoming increasingly aware of the importance of issues that influence the productivity levels of the project teams involved. By analyzing the latest release of ISBSG data repository, we report on the factors found to significantly influence the productivity among which average team size and language type are the two most essential ones. Building on this we present an original model for evaluating the potential productivity during the project planning stage.

Research paper thumbnail of Strategic Software Development: Productivity Comparisons of General Development Programs

Productivity has been one of the major concerns with the increasingly high cost of software devel... more Productivity has been one of the major concerns with the increasingly high cost of software development. Choosing the right development language with high productivity is one approach to reduce development costs. Working on the large database with 4106 projects ever developed, we found the factors significant to productivity. After the removal of the effects of other factors on productivity, we compare the productivity differences of the ten general development programs. The study supports the fact that fourth-generation languages are more productive than thirdgeneration languages.

Research paper thumbnail of An Investigation on the Variation of Software Development Productivity

The productivity of software development is one of the major concerns for project managers. Given... more The productivity of software development is one of the major concerns for project managers. Given the increasing complexity of the software being developed and the concomitant rise in the typical project size, the productivity has not consistently improved. By analyzing the latest release of ISBSG data repository with 4106 projects ever developed, we report on the factors found to significantly influence productivity, and present an original model for the estimation of productivity during project design. We further illustrate that software development productivity has experienced irregular variations between the years 1995 and 2005. Considering the factors significant to productivity, we found its variations are primarily caused by the variations of average team size for the development and the unbalanced use of the less productive development language 3GL.

Research paper thumbnail of Economies and diseconomies of scale in software development

Journal of Software Maintenance and Evolution: Research and Practice, 2011

Economies and diseconomies of scale—gains and losses in productivity arising from increases in pr... more Economies and diseconomies of scale—gains and losses in productivity arising from increases in project size—are of considerable, practical importance in software engineering. However, there is no consensus as to whether, in general, economies or diseconomies ...