TY - GEN
T1 - Contextual understanding and improvement of metamorphic testing in scientific software development
AU - Peng, Zedong
AU - Kanewala, Upulee
AU - Niu, Nan
N1 - Publisher Copyright:
© 2021 IEEE Computer Society. All rights reserved.
PY - 2021/10/11
Y1 - 2021/10/11
N2 - Background: Metamorphic testing emerges as a simple and effective approach for testing scientific software; yet, its adoption in actual scientific software projects is less studied. Aims: In order for the practitioners to better adopt metamorphic testing in their projects, we set out to first gain a deep understanding about the current qualify assurance workflow, testing practices, and tools. Method: We propose to integrate various empirical sources, including artifact analysis, stakeholder interviews, and gap analysis from the literature. Results: Applying our approach to the Open Water Analytics Stormwater Management Model project helped to identify four new needs requiring continued and more research: (1) systematic and explicit formulation of metamorphic relations, (2) metamorphic testing examples specific to the scientific software, (3) correlating metamorphic testing with regression testing, and (4) integrating metamorphic testing with build tools like CMake and continuous integration tools like GitHub Actions. Conclusions: Integrating different empirical sources is promising for establishing a contextual understanding of software engineering practices, and for action research, such as workflow refinements and tool interventions, to be carried out in a principled manner.
AB - Background: Metamorphic testing emerges as a simple and effective approach for testing scientific software; yet, its adoption in actual scientific software projects is less studied. Aims: In order for the practitioners to better adopt metamorphic testing in their projects, we set out to first gain a deep understanding about the current qualify assurance workflow, testing practices, and tools. Method: We propose to integrate various empirical sources, including artifact analysis, stakeholder interviews, and gap analysis from the literature. Results: Applying our approach to the Open Water Analytics Stormwater Management Model project helped to identify four new needs requiring continued and more research: (1) systematic and explicit formulation of metamorphic relations, (2) metamorphic testing examples specific to the scientific software, (3) correlating metamorphic testing with regression testing, and (4) integrating metamorphic testing with build tools like CMake and continuous integration tools like GitHub Actions. Conclusions: Integrating different empirical sources is promising for establishing a contextual understanding of software engineering practices, and for action research, such as workflow refinements and tool interventions, to be carried out in a principled manner.
KW - Empirical software engineering
KW - metamorphic testing
KW - Scientific software
UR - https://www.scopus.com/pages/publications/85117923359
U2 - 10.1145/3475716.3484188
DO - 10.1145/3475716.3484188
M3 - Conference contribution
AN - SCOPUS:85117923359
T3 - International Symposium on Empirical Software Engineering and Measurement
BT - ESEM 2021 - Proceedings of the 15th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement
PB - IEEE Computer Society
T2 - 15th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, ESEM 2021
Y2 - 11 October 2021 through 15 October 2021
ER -