... | ... | @@ -11,7 +11,7 @@ The document summarised the collection of best practices for |
|
|
| Provide guidelines to researches and developers | development |Several guidelines available | [DLR](https://rse.dlr.de/),[Netherlands eScience center](https://guide.esciencecenter.nl/#/best_practices/checklist) | Development and deployment in the community, harmonisation | adoption |
|
|
|
| Management of Software Projects | general/planning | different solutions (from open source to commercial in use), different SLDC approaches | incremental, iterative or agile development (often adopted)..., [Cosylab](https://www.cosylab.com/) solution for CTA, [SAFe®](https://www.scaledagileframework.com/) for SKA, [Atlassian suite for CASA](https://casa.nrao.edu/) | experiment specific | none |
|
|
|
| Choice of Development Platform and Workflow | development | internal and external platforms, both open source and commercial | github, e.g. [gammapy](https://gammapy.org/), and gitlab, [Hangar](http://www.github.com/tensorwerk/hangar-py) for data management | harmonisation needed? | none |
|
|
|
| Coding Style guides and checks | development, maintenance | different guides available | [Black](https://black.readthedocs.io/en/stable/), [yapf](https://yapf.now.sh/) | harmonisation, adoption| adoption |
|
|
|
| Coding Style guides and checks | development, maintenance | different guides available | [Black](https://black.readthedocs.io/en/stable/), [yapf](https://pypi.org/project/yapf) | harmonisation, adoption| adoption |
|
|
|
| Code Optimisation and benchmarking | development, maintenance | benchmarking tools to compare with, eg. HEP-SPEC06 or [hep-benchmarks](https://gitlab.cern.ch/hep-benchmarks) | research, harmonisation | adaption |
|
|
|
| Continuous Integration/Deployment | deployment | automated platform for CI/CD including software tests | gitlab/github CI/CD, LSST service deployment model (Kubernetes, ArgoCD, Vault, and Helm), Linux package, e.g. the [Kernsuite](https://github.com/kernsuite/packaging), test-driven devlopment| harmonisation | harmonisation |
|
|
|
| Containerisation | development, deployment, archiving, maintenance | containers as overarching solution for flexible software distribution and handling | including Kubernetes | research (overview gathering) | development |
|
... | ... | |