An Analysis of Process Characteristics for Developing Scientific Software
The development of scientific software is usually carried out by a scientist who has little professional training as a software developer Concerns exist that such development produces low-quality products, leading to low-quality science. These concerns have led to recommendations and the imposition of software engineering development processes and standards on the scientists. This paper utilizes different frameworks to investigate and map characteristics of the scientific software development environment to the assumptions made in plan-driven software development methods and agile software development methods. This mapping exposes a mismatch between the needs and goals of scientific software development and the assumptions and goals of well-known software engineering development processes.
scientific software scientific software development extreme programming professional end-user developer software development process