"Parallel Development and Independent Integration Model" for Scientific Research Software engineering

Author(s):  
Hai-tao Li ◽  
Ai-song Shi ◽  
You-xin Meng
2020 ◽  
Vol 10 (20) ◽  
pp. 7088
Author(s):  
Luka Pavlič ◽  
Marjan Heričko ◽  
Tina Beranič

In scientific research, evidence is often based on empirical data. Scholars tend to rely on students as participants in experiments in order to validate their thesis. They are an obvious choice when it comes to scientific research: They are usually willing to participate and are often themselves pursuing an education in the experiment’s domain. The software engineering domain is no exception. However, readers, authors, and reviewers do sometimes question the validity of experimental data that is gathered in controlled experiments from students. This is why we will address this difficult-to-answer question: Are students a proper substitute for experienced professional engineers while performing experiments in a typical software engineering experiment. As we demonstrate in this paper, it is not a “yes or no” answer. In some aspects, students were not outperformed by professionals, but in others, students would not only give different answers compared to professionals, but their answers would also diverge. In this paper we will show and analyze the results of a controlled experiment in the source code quality domain in terms of comparing student and professional responses. We will show that authors have to be careful when employing students in experiments, especially when complex and advanced domains are addressed. However, they may be a proper substitution in cases, where non-advanced aspects are required.


2009 ◽  
Vol 2 (2) ◽  
pp. 1299-1333
Author(s):  
A. M. Horseman ◽  
A. R. MacKenzie ◽  
M. P. Chipperfield

Abstract. A new modelling tool for the investigation of large-scale behaviour of cirrus clouds has been developed. This combines two existing models, the TOMCAT/SLIMCAT chemistry transport model (nupdate library version 0.80, script mpc346_l) and cirrus parameterisation of Ren and MacKenzie (LACM implementation not versioned). The development process employed a subset of best-practice software engineering and quality assurance processes, selected to be viable for small-scale projects whilst maintaining the same traceability objectives. The application of the software engineering and quality control processes during the development has been shown to be not a great overhead, and their use has been of benefit to the developers as well as the end users of the results. We provide a step-by-step guide to the implementation of traceability tailored to the production of geo-scientific research software, as distinct from commercial and operational software. Our recommendations include: maintaining a living "requirements list"; explicit consideration of unit, integration and acceptance testing; and automated revision/configuration control, including control of analysis tool scripts and programs. Initial testing of the resulting model against satellite and in-situ measurements has been promising. The model produces representative results for both spatial distribution of the frequency of occurrence of cirrus ice, and the drying of air as it moves across the tropical tropopause. The model is now ready for more rigorous quantitative testing, but will require the addition of a vertical wind velocity downscaling scheme to better represent extra-tropical continental cirrus.


2021 ◽  
Author(s):  
Kristina Wiebels ◽  
David Moreau

Containers have become increasingly popular in computing and software engineering, and are gaining traction in scientific research. They allow packaging up all code and dependencies to ensure that analyses run reliably across a range of operating systems and software versions. Despite being a crucial component for reproducible science, containerization has yet to become mainstream in psychology. In this tutorial, we describe the logic behind containers, what they are, and the practical problems they can solve. We walk the reader through the implementation of containerization within a research workflow, with examples using Docker and R. Specifically, we describe how to use existing containers, build personalized containers, and share containers alongside publications. We provide a worked example that includes all steps required to set up a container for a research project and can easily be adapted and extended. We conclude with a discussion of the possibilities afforded by the large-scale adoption of containerization, especially in the context of cumulative, open science, toward a more efficient and inclusive research ecosystem.


IEEE Software ◽  
2021 ◽  
Vol 38 (1) ◽  
pp. 97-105
Author(s):  
Jeremy Cohen ◽  
Daniel S. Katz ◽  
Michelle Barker ◽  
Neil Chue Hong ◽  
Robert Haines ◽  
...  

2007 ◽  
Vol 21 (2) ◽  
pp. 133-151 ◽  
Author(s):  
Jorge Calmon de Almeida Biolchini ◽  
Paula Gomes Mian ◽  
Ana Candida Cruz Natali ◽  
Tayana Uchôa Conte ◽  
Guilherme Horta Travassos

Sign in / Sign up

Export Citation Format

Share Document