The BaBar Software Architecture and Infrastructure
G. Cosmo · 2003
The BaBar experiment has in place since 1995 a software release system (SRT Software Release Tools) based on CVS (Concurrent Version System) which is in common for all the software developed for the experiment, online or offline, simulation or reconstruction. A software release is a snapshot of all BaBar code (online, offline, utilities, scripts, makefiles, etc.). This set of code is tested to work together, and is indexed by a release number (e.g., 6.8.2) so a user can refer to a particular release and get reproducible results. A release will involve particular versions of packages. A package generally consists of a set of code for a particular task, together with a GNU makefile, scripts and documentation. All BaBar software is maintained in AFS (Andrew File System) directories, so the code is accessible worldwide within the Collaboration. The combination SRT, CVS, AFS, has demonstrated to be a valid, powerful and efficient way of organizing the software infrastructure of a modern HEP experiment with collaborating Institutes distributed worldwide, both in a development and production phase.