SEJun 18, 2019

Debunking the Myth that Upfront Requirements are Infeasible for Scientific Computing Software

arXiv:1906.07812v16 citations
Originality Synthesis-oriented
AI Analysis

This addresses a common problem in the scientific computing software community by showing that upfront requirements are achievable, offering practical benefits for developers and engineers in this domain.

The paper tackles the belief that upfront requirements are infeasible in scientific computing software by demonstrating their feasibility through a combination of perspective shifts, principles, templates, design processes, and modern tools, resulting in benefits such as improved communication, error identification, design decisions, and replicability, as illustrated with a metal alloy solidification modeling example.

Many in the Scientific Computing Software community believe that upfront requirements are impossible, or at least infeasible. This paper shows requirements are feasible with the following: i) an appropriate perspective ("faking" the final documentation as if requirements were correct and complete from the start, and gathering requirements as if for a family of programs); ii) the aid of the right principles (abstraction, separation of concerns, anticipation of change, and generality); iii) employing SCS specific templates (for Software Requirements and Module Interface Specification); iv) using a design process that enables change (information hiding); and, v) the aid of modern tools (version control, issue tracking, checking, generation and automation tools). Not only are upfront requirements feasible, they provide significant benefits, including facilitating communication, early identification of errors, better design decisions and enabling replicability. The topics listed above are explained, justified and illustrated via an example of software developed by a small team of software and mechanical engineers for modelling the solidification of a metal alloy.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes