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

被引:1
|
作者
Smith, Spencer [1 ]
Srinivasan, Malavika [1 ]
Shankar, Sumanth [2 ]
机构
[1] McMaster Univ, Comp & Software Dept, Hamilton, ON, Canada
[2] McMaster Univ, Mech Engn Dept, Hamilton, ON, Canada
来源
2019 IEEE/ACM 14TH INTERNATIONAL WORKSHOP ON SOFTWARE ENGINEERING FOR SCIENCE (SE4SCIENCE 2019) | 2019年
基金
加拿大自然科学与工程研究理事会;
关键词
software engineering; scientific computing; requirements analysis; information hiding; documentation; casting; SCIENCE;
D O I
10.1109/SE4Science.2019.00011
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
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.
引用
收藏
页码:33 / 40
页数:8
相关论文
共 16 条
  • [1] A software chasm: Software engineering and scientific computing
    Kelly, Diane F.
    IEEE SOFTWARE, 2007, 24 (06) : 120 - +
  • [2] Portability Testing of Scientific Computing Software Systems
    Nori, Rahul
    Karodiya, Nitin
    Reza, Hassan
    2013 IEEE INTERNATIONAL CONFERENCE ON ELECTRO-INFORMATION TECHNOLOGY (EIT 2013), 2013,
  • [3] JASMIN: a parallel software infrastructure for scientific computing
    Zeyao Mo
    Aiqing Zhang
    Xiaolin Cao
    Qingkai Liu
    Xiaowen Xu
    Hengbin An
    Wenbing Pei
    Shaoping Zhu
    Frontiers of Computer Science in China, 2010, 4 : 480 - 488
  • [4] JASMIN: a parallel software infrastructure for scientific computing
    Mo, Zeyao
    Zhang, Aiqing
    Cao, Xiaolin
    Liu, Qingkai
    Xu, Xiaowen
    An, Hengbin
    Pei, Wenbing
    Zhu, Shaoping
    FRONTIERS OF COMPUTER SCIENCE IN CHINA, 2010, 4 (04): : 480 - 488
  • [5] Gauss: A Framework for Verifying Scientific Computing Software
    Palmer, Robert
    Barrus, Steve
    Yang, Yu
    Gopalakrishnan, Ganesh
    Kirby, Robert M.
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2006, 144 (03) : 95 - 106
  • [6] A Domain Specific Requirements Model for Scientific Computing (NIER Track)
    Li, Yang
    Narayan, Nitesh
    Helming, Jonas
    Koegel, Maximilian
    2011 33RD INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2011, : 848 - 851
  • [7] A computational evaluation of some free mathematical software for scientific computing
    Glavelis, Themistoklis
    Ploskas, Nikolaos
    Samaras, Nikolaos
    JOURNAL OF COMPUTATIONAL SCIENCE, 2010, 1 (03) : 150 - 158
  • [8] Using agent-based software for scientific computing in the NetSolve system
    Casanova, H
    Dongarra, J
    PARALLEL COMPUTING, 1998, 24 (12-13) : 1777 - 1790
  • [9] Software engineering meets scientific computing: group projects in CSE education
    Bader, M.
    Bungartz, H-J.
    Muntean, I. L.
    Neckel, T.
    INTERNATIONAL JOURNAL OF COMPUTATIONAL SCIENCE AND ENGINEERING, 2009, 4 (04) : 245 - 253
  • [10] Deriving user interface requirements from densely interleaved scientific computing applications
    Strelzoff, A
    Petzold, L
    18TH IEEE INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, PROCEEDINGS, 2003, : 22 - 28