MERLIN: A Case Study in Scientific Software Sustainability

Scott Rowan (Speaker)

Activity: Talk or presentation typesOral presentation


MERLIN is a C++ accelerator physics library, originally developed in the early 2000’s for use in linear particle collider simulations. Following a gap in both use and development, MERLIN was later adopted in 2009 by active members of the CERN High-Luminosity Large Hadron Collider project to be advanced upon for collimation-specific studies. Recent developments, circa 2010-2016, focused on obtaining physics results rather than on code design and sustainability. This has inevitably resulted in the code having an unnecessarily steep learning curve for both new users and new developers, alike. The following presents the current active developers’ recent endeavours to restructure, refactor and optimise the code such that it aligns with advocated software engineering practices. This process has focused on use case accessibility, long-term sustainability, parallelisation and scalability. More specifically, the following presents test metrics and time-investment returns, providing new information on the practical implementation of agile development practices for scientific software.
Period7 Sep 2017
Event title2nd Conference of Research Software Engineers
Event typeConference
Conference number2
LocationManchester, United Kingdom
Degree of RecognitionInternational