Long-Term Productivity Based on Science, not Preference
Journal Articles
Overview
Research
View All
Overview
abstract
This position paper argues that decisions on processes, tools, techniques and
software artifacts (such as user manuals, unit tests, design documents and
code) for scientific software development should be driven by science, not by
personal preference. Decisions should not be based on anecdotal evidence, gut
instinct or the path of least resistance. Moreover, decisions should vary
depending on the users and the context. In most cases of interest, this means
that a longer term view should be adopted. We need to use a scientific approach
based on unambiguous definitions, empirical evidence, hypothesis testing and
rigorous processes. By developing an understanding of where input hours are
spent, what most contributes to user satisfaction, and how to leverage
knowledge produced, we can determine what interventions have the greatest value
relative to the invested effort. We will be able to recommend software
production processes that justify their value because the long-term output
benefits are high compared to the required input resources. A preliminary
definition of productivity is presented, along with ideas on how to potentially
measure this quality. We briefly explore the idea of improving productivity via
an approach where all artifacts are generated from codified knowledge.