Skip to content
Snippets Groups Projects
overview.md 674 B
Newer Older
lintao@ihep.ac.cn's avatar
lintao@ihep.ac.cn committed
# Development Process Overview

Modern HEP experiments (usually long timescale) are large distributed collaborations with several hundred people. The software project should be managed properly and the code quality is important.

Software development life cycle consists of
* Planning
* Analysis and Design
* Implementation
* Testing and Integration
* Maintenance

Best Practices in the open source communities:
* Building software -> CMake
* Source code control -> Git and Pull/Merge Request workflow
* Continuous integration -> GitHub Actions or GitLab CI
* Software distribution -> package management tools and apptainer containers
* Training and documentation -> sphinx