Skip to Main Content
By analyzing our testing exercise through the four dimensions of context, goals, techniques, and adequacy, we developed a better understanding of how to effectively test a piece of scientific software. Once we considered the scientist-tester as part of the testing system, the exercise evolved in a way that made use of and increased his knowledge of the software. One result was an approach to software assessment that combines inspection with code execution. An other result was the suppression of process-driven testing in favor of goal centric approaches. The combination of software engineer working with scientist was success ful in this case. The software engineer brings a toolkit of ideas, and the scientist chooses and fashions the tools into some thing that works for a specific situation. Unlike many other types of software systems, scientific software includes the scientist as an integral part of the system. The tools that support the scientist must include the scientist's knowledge and goals in their design. This represents a different way of considering the juxtaposition of software engineering with scientific software development.