M324 V1

Prendre en charge des processus DevOps avec des outils logiciels

Type
EP obligatoire
Lieu
École professionnelle
Année
4ème année d'apprentissage
PDF
324_1_Prendre%20en%20charge%20des%20processus%20DevOps%20avec%20des%20outils%20logiciels.pdf

Compétences PEC liées

Compétence visée par le module

Utiliser des outils d’automatisation pour les différentes étapes du processus de développement d‘applications («intégration continue/déploiement continu»).

Situation / objet

Application Web simple basée framework/bibliothèque Par exemple: application to-do list automatisée, de la spécification au développement en passant par la réalisation de tests dans l’environnement d’acceptation.

Objectifs opérationnels et connaissances

324.1 Consigner et administrer de manière compréhensible et transparente les exigences et les étapes de mise en œuvre pour le développement en équipe. [g1.5] g1 g5 g6 h2 h3
ConnaissanceTexte
324.1.1Connaître l’utilité d’un développement et d’une maintenance supportés en continu par des outils (p. ex. produit minimum viable, feed-back des clients, coûts/bénéfice, qualité, réduction des risques).
324.1.2Connaître la procédure de gestion des exigences (p. ex. récits utilisateur, problèmes, critères d‘acceptation, etc.).
324.1.3Connaître des procédures de développement en équipe dont le suivi est compréhensible et traçable (p. ex. liaison des commits et des récits utilisateur, PullRequest/revue par les pairs).
324.2 Configurer et utiliser l’environnement de développement local de manière intégrée avec les outils d’automatisation. [g5.1, g6.4, g6.6, h2.1, h3.2] g1 g5 g6 h2 h3
ConnaissanceTexte
324.2.1Connaître des possibilités d’utilisation des outils d’automatisation dans l’environnement de développement (p. ex. linting, build, exécuter, tester, versionner, dépendances/paquets).
324.3 Gérer le code source et les artefacts pour un développement en équipe orienté exigences. [g5.6, h2.4, h3.5] g1 g5 g6 h2 h3
ConnaissanceTexte
324.3.1Connaître des pratiques de gestion du code source basée fonctionnalités (p. ex. flux de travail GIT, versionnage sémantique, etc.).
324.3.2Connaître des possibilités pour gérer les artefacts/binaires requis et créés (p. ex. dépôts/registre d’artefacts, gestion des dépendances comme npm/maven, etc.).
324.4 Utiliser un processus d’intégration automatisé (Build, assurance qualité/test des artefacts). [g5.5, g6.4, g6.6, h2.2] g1 g5 g6 h2 h3
ConnaissanceTexte
324.4.1Connaître des possibilités pour construire, exécuter et tester l’application et les compo-sants de manière automatisée (p. ex. Build Management comme gradle/npm, conteneur, pipelines, etc).
324.5 Utiliser un processus de déploiement automatisé (installation et configuration de l’environnement d’exécution et de l’application). [g5.5, g6.4, g6.6, h2.2] g1 g5 g6 h2 h3
ConnaissanceTexte
324.5.1Connaître des possibilités pour déployer et configurer l’application de manière automatisée (p. ex. Infrastructure as Code, scripting, virtualisation, configuration avec YAML, Vaults, profils, clé SSH, etc.).

Matrice de compétences

BandeCompétenceDébutantIntermédiaireAvancéObjectifs
A1 Avantages DevOps Je peux expliquer le développement d'applications continu et assisté par outils Je peux démontrer et justifier les avantages du développement continu d'applications assisté par outils à l'aide d'exemples concrets. Je peux évaluer le développement d'applications assistées par outils, sélectionner les outils adaptés aux exigences spécifiques d'un projet et justifier leur utilisation.
324.1
B1 Gestion des exigences Je peux décrire les exigences et savoir où les gérer Je peux rédiger et catégoriser les exigences selon une approche spécifique et les gérer dans un endroit spécifique Je peux vérifier l'exhaustivité/l'exactitude des exigences, formuler d'éventuelles ambiguïtés et les gérer de manière compréhensible
324.1
C1 Traçabilité des évolutions Je peux décrire des procédures pour le développement d'applications compréhensibles Je peux appliquer des procédures pour le développement d'applications compréhensibles Je peux appliquer des procédures pour le développement d'applications compréhensibles et les utiliser de manière ciblée
324.3 324.1
D1 Environnement de développement Je peux appliquer un environnement de développement simple avec des outils Je peux appliquer un environnement de développement avec des outils d'automatisation et analyser les résultats des outils Je peux appliquer, étendre, optimiser un environnement de développement avec des outils d'automatisation et classer les résultats des outils
324.2
E1 Gestion du code source Je peux gérer le code source en utilisant des pratiques simples Je peux appliquer des pratiques avancées pour gérer le code source en fonction des fonctionnalités. Je peux appliquer des pratiques avancées en combinaison pour gérer le code source de manière durable et basée sur les fonctionnalités.
324.3
F1 Gestion des artefacts Je peux décrire des artefacts et les gérer dans un référentiel d'artefacts Je peux créer un référentiel d'artefacts simple et configurer sa structure pour gérer différents artefacts Je peux créer et configurer un référentiel d'artefacts pour différents types d'artefacts et gérer spécifiquement les types d'artefacts correspondants.
324.3
G1 Intégration continue Je peux compiler et tester automatiquement des applications et des composants en utilisant des pratiques simples Je peux compiler, tester et analyser automatiquement des applications et des composants à l'aide de pratiques avancées. Je peux compiler, tester, analyser et évaluer automatiquement des applications et des composants en utilisant des pratiques et des méthodes éprouvées.
324.4
H1 Livraison continue Je peux déployer, configurer et tester des applications automatiquement en utilisant des pratiques simples Je peux déployer, configurer et tester des applications automatiquement à l'aide de pratiques avancées Je peux déployer, configurer, tester, surveiller et valider automatiquement des applications en utilisant des pratiques et des méthodes éprouvées.
324.5

Modules liés par compétences PEC

ModuleTitrePEC communes
M426 Développer un logiciel avec des méthodes agiles
M321 Programmer des systèmes distribués
g1 g5 g6
M346 Concevoir et réaliser des solutions cloud
g1 h2 h3
M183 Implémenter la sécurité d'une application
g5 g6
M223 Réaliser des applications multi-utilisateurs orientées objets
g5 g6
M295 Réaliser le back-end pour des applications
g5 g6
M322 Concevoir et implémenter des interfaces utilisateur
g1 g5
M335 Réaliser une application pour mobile
g5 h3
M106 Interroger, traiter et assurer la maintenance des bases de données
g5
M122 Automatiser des procédures à l’aide de scripts
h3
M122 Automatiser des procédures à l’aide de scripts
h3
M162 Analyser et modéliser des données
g1