Préparer et exécuter le déploiement d’une application
Description de la compétence – processus de mise en œuvre
À partir de l’architecture de l’application répartie et éventuellement d’un processus d’intégration continue et des différents composants assemblés ou indépendants, élaborer le diagramme de déploiement correspondant. Déployer l’exécutable obtenu par assemblage des différents composants ou les exécutables des composants indépendants, sur le ou les environnements de qualification, y compris dans le Cloud, afin d’obtenir une application logicielle opérationnelle et signée selon les exigences de sécurité.
Contexte(s) professionnel(s) de mise en œuvre
La préparation et le déploiement d’une application logicielle répartie se réalise en fin de processus de développement ou tout au long du processus avec un outil d’intégration continue. Dans le cas d’architecture en microservice, les composants sont déployés indépendamment.
Le déploiement de l’application s’effectue sur un ou des environnements de qualification interne ou externe en mode Web ou en mode Cloud.
Selon le contexte, la taille de la Direction des Systèmes d’information, le concepteur développeur est amené à exécuter ou non le déploiement.
Critères de performance
- Le déploiement est formalisé à partir d’un diagramme.
- Les composants assemblés ou indépendants sont déployés sur les environnements de qualification.
- L’application déployée fournit les services demandés.
- Le code de l’application est signé, tout ou partie, selon les exigences de sécurité.
Savoir-faire techniques, savoir-faire organisationnels, savoir-faire relationnels, savoirs
- Réaliser un diagramme de déploiement.
- Déployer l’application ou le microservice.
- Prendre en compte les dépendances vis-à-vis des composants externes du composant à déployer.
- Prendre en compte les évolutions de versions de l’ensemble des composants externes.
- Gérer la sécurité de l’application en termes de signature numérique des exécutables, selon les exigences de sécurité identifiées.
- Planifier et suivre les tâches de déploiement.
- Connaissance des bases de la cryptographie.
- Connaissance des concepts liés aux architectures réparties.
- Connaissance des différents types de serveurs.
- Connaissance des diagrammes UML concernant les composants et le déploiement.
- Connaissance du processus d’intégration continue.
- Connaissance d’un outil de signature de code.
- Connaissance des règles de mise en production associées à l’application.