Software release engineering process: integration, build, multi-staged testing, deployment, release and operations. Definition and base concepts of mining software repositories. Different types of repositories: version control, bug reports, code review, mailing lists, StackOverflow, project ecosystems, collaboration platforms. Techniques for empirical analysis of repositories: data mining, statistical analysis, natural language processing, source code analysis, qualitative analysis. Integration: configuration management, branching patterns, feature toggles, merge conflicts. Build: maintenance and verification of build, build failures, continuous integration, infrastructure-as-code, software configuration. Multi-staged testing: bug prediction, test selection, continuous testing. Deployment/release: large-scale distributions, deployment/release strategies, source code provenance, app stores. Operations: log analysis, rollback.
- Responsable du site: Zohreh Sharafi
- Enseignant (éditeur): Mahta Amini
- Enseignant (éditeur): Mireille Amoussouvi
- Enseignant (éditeur): Heng Li