DeepAI AI Chat
Log In Sign Up

DevOps and Microservices in Scientific System development

by   Maximillien de Bayser, et al.

There is a gap in scientific information systems development concerning modern software engineering and scientific computing. Historically, software engineering methodologies have been perceived as an unwanted accidental complexity to computational scientists in their scientific systems development. More recent trends, like the end of Moore's law and the subsequent diversification of hardware platforms, combined with the increasing multidisciplinarity of science itself have exacerbated the problem because self-taught "end user developers" are not familiar with the disciplines needed to tackle this increased complexity. On a more positive note, agile programming methods have approached software development practices to the way scientific software is produced. In this work, we present the experience of a multi-year industry research project where agile methods, microservices and DevOps were applied. Our goal is to validate the hypothesis that the use of microservices would allow computational scientists to work in the more minimalistic prototype-oriented way that they prefer while the software engineering team would handle the integration. Hence, scientific multidisciplinary systems would gain in a twofold way: (i) Subject Matter Experts(SME) use their preferable tools to develop the specific scientific part of the system; (ii) software engineers provide the high quality software code for the system delivery.


page 1

page 2

page 3

page 4


Agile Scrum Development in an ad hoc Software Collaboration

Developing cyberinfrastructure for the growing needs of multi-messenger ...

Agile Systems Engineering for sub-CubeSat scale spacecraft

Space systems miniaturization has been increasingly popular for the past...

Impacting the bioscience progress by backporting software for Bio-Linux

In year 2006 Bio-Linux with the work of Tim Booth and team gives its ris...

Agile Development at Scale: The Next Frontier

Agile methods have transformed the way software is developed, emphasizin...

Better Code, Better Sharing:On the Need of Analyzing Jupyter Notebooks

By bringing together code, text, and examples, Jupyter notebooks have be...

Robust Software Development for University-Built Satellites

Satellites and other complex systems now become more and more software d...

SADAS: an integrated software system for the data of the SuperAGILE experiment

SuperAGILE (SA) is a detection system on board of the AGILE satellite (A...