21–25 May 2012
New York City, NY, USA
US/Eastern timezone

MAUS: MICE Analysis User Software

24 May 2012, 15:10
25m
Room 802 (Kimmel Center)

Room 802

Kimmel Center

Parallel Software Engineering, Data Stores and Databases (track 5) Software Engineering, Data Stores and Databases

Speaker

Durga Rajaram (IIT, Chicago)

Description

The Muon Ionization Cooling Experiment (MICE) has developed the MICE Analysis User Software (MAUS) to simulate and analyse experimental data. It serves as the primary codebase for the experiment, providing for online data quality checks and offline batch simulation and reconstruction. The code is structured in a Map-Reduce framework to allow parallelization whether on a personal machine or in the control room. Various software engineering practices from industry are also used to ensure correct and maintainable physics code, which include unit, functional and integration tests, continuous integration and load testing, code reviews, and distributed version control systems. Lastly, there are various small design decisions like using JSON as the data structure, using SWIG to allow developers to write components in either Python or C++, or using the SCons python-based build system that may be of interest to other experiments.

Summary

Lessons learned from adopting numerous software engineering practices from industry when developing the MICE experiment software framework. Experiences will be shared.

Primary author

Co-author

Durga Rajaram (IIT, Chicago)

Presentation materials