Merci d'avoir envoyé votre demande ! Un membre de notre équipe vous contactera sous peu.
Merci d'avoir envoyé votre réservation ! Un membre de notre équipe vous contactera sous peu.
Plan du cours
Fondements de la pensée Agile
- Le manifeste Agile et sa pertinence au-delà du logiciel
- Comparaison d'Agile avec les modèles traditionnels en cascade et pilotés par la planification
- Rôles, événements et artefacts Scrum adaptés aux cycles de projets académiques
- Kanban et gestion basée sur le flux pour les équipes de recherche et d'enseignement
- Choix d'hybrides Agile adaptés aux environnements d'ingénierie et de design
Planification Agile et Collaboration
- Rédaction de user stories et définition des critères d'acceptation pour les problèmes d'ingénierie
- Techniques de priorisation du backlog : MoSCoW, valeur vs. effort, ordonnancement basé sur les risques
- Planification de sprint et estimation avec des équipes non logicielles
- Rétrospectives et amélioration continue dans un cadre académique
- Outils et tableaux de collaboration pour les participants pluridisciplinaires
Introduction à la culture DevOps
- Définition de DevOps : briser les silos entre le développement et les opérations
- Le modèle CALMS : Culture, Automatisation, Lean, Mesure, Partage
- DevOps dans les laboratoires de recherche, les équipes de génie civil et les studios d'architecture
- Mise en place d'une culture sans culpabilité et de boucles de feedback dans les institutions éducatives
- Considérations éthiques, de sécurité et de conformité dans l'adoption de DevOps par le milieu académique
Contrôle de version et gestion collaborative du code
- Fondamentaux de Git pour un travail d'ingénierie et de design reproductible
- Stratégies de branching : trunk-based, branches de fonctionnalités et GitFlow simplifié
- Pull requests, revue par les pairs et propriété du code au sein des équipes d'enseignement
- Gestion des actifs non-code : fichiers CAD, modèles BIM, jeux de données de simulation
- Organisation des dépôts pour le matériel pédagogique et les projets étudiants
Intégration Continue et Automatisation de la Construction
- Concepts de l'intégration continue (CI) et leur application aux outils d'ingénierie compilés et scriptés
- Configuration de constructions automatisées pour les logiciels, simulations et documentations
- Étapes du pipeline : compilation, packaging, linting et vérifications préliminaires
- Aperçu des plateformes CI populaires : GitHub Actions, GitLab CI, Jenkins
- Gestion des gros artefacts, mise en cache des dépendances et exécution en parallèle
Qualité Logicielle et Analyse Statique
- Définition de la qualité logicielle : maintenabilité, fiabilité, utilisabilité, efficacité
- Métriques de code : complexité cyclomatique, couplage, cohésion et duplication
- Outils d'analyse statique pour Python, Java, C++ et scripts d'ingénierie courants
- La documentation comme qualité : docstrings, normes README et documentation vivante
- Intégration de barrières de qualité dans les pipelines CI sans bloquer la progression des étudiants
Stratégies de Test et Conception des Tests
- Pyramide des tests : tests unitaires, d'intégration, système et d'acceptation
- Rédaction de tests unitaires pour les calculs d'ingénierie, simulations et utilitaires
- Fondamentaux du développement piloté par les tests (TDD) et du développement piloté par le comportement (BDD)
- Simulation de systèmes externes : capteurs, API, solveurs par éléments finis
- Structuration des suites de tests pour les projets d'équipes pluridisciplinaires
Automatisation des Tests et Test Continu
- Automatisation de l'exécution des tests dans les pipelines CI/CD
- Rapports de tests, seuils de couverture et gestion des tests intermittents (flaky tests)
- Tests basés sur les propriétés et fuzzing pour les algorithmes d'ingénierie
- Stratégies de tests de régression pour les devoirs de cours en évolution
- Tests de performance et de charge pour les travaux de simulation et de rendu
Concepts de Livraison Continue et Déploiement
- Fondamentaux de la livraison continue (CD) : livraison vs déploiement, environnements et promotion
- Modèles de déploiement : blue-green, canary et commutateurs de fonctionnalités (feature toggles)
- Application des principes CD pour publier des artefacts de recherche, des sites de cours et des applications
- Initiation aux conteneurs avec Docker pour des environnements d'ingénierie reproductibles
- Introduction à l'Infrastructure as Code : gestion déclarative des configurations de laboratoire et de cloud
Observabilité, Surveillance et Feedback
- Journaux, métriques et traçage pour les logiciels académiques et les simulations
- Mise en place d'une surveillance légère pour les projets étudiants et les outils de recherche
- Utilisation des données de feedback pour itérer sur le matériel pédagogique et les travaux pratiques
- Tableaux de bord et alertes adaptés aux contextes éducatifs
- Vérification post-déploiement et procédures de retour arrière (rollback)
Meilleures Pratiques en Matière de Sécurité et de Qualité
- Fondamentaux du codage sécurisé : validation des entrées, authentification et gestion des secrets
- Scanning des dépendances et gestion des vulnérabilités dans les stacks open source
- Conformité des licences pour les logiciels utilisés dans l'enseignement et la publication
- Considérations relatives à la confidentialité des données lors de la manipulation de données étudiantes et de recherche
- Mise en place d'une culture consciente de la sécurité dans les programmes d'ingénierie et de design
Traduction des Pratiques en Modules Pédagogiques
- Conception d'attributions de projets agiles pour les étudiants en systèmes, génie civil, design et architecture
- Création de grilles d'évaluation qui jugent à la fois la qualité du processus et celle du produit
- Mise en place de dépôts modèles avec CI pré-configuré pour l'utilisation par les étudiants
- Échelonnement progressif des concepts DevOps tout au long d'un semestre
- Évaluation des équipes étudiantes à l'aide de métriques réelles de qualité et d'automatisation
Sélection de la Chaîne d'Outils et Contraintes Académiques
- Évaluation des outils gratuits et open source pour les départements soucieux de leur budget
- Intégration avec les LMS existants, le stockage de fichiers et l'infrastructure de laboratoire
- Gestion de la dette technique dans les bases de code de recherche à long terme
- Intégration des étudiants et du personnel avec des niveaux de compétences techniques variés
- Maintenir la durabilité lorsque les contributeurs clés diplôment ou changent de poste
Pré requis
- Une compréhension de base des concepts de développement logiciel
- Une familiarité avec les workflows généraux de l'ingénierie ou du design
- De l'expérience dans l'utilisation des ordinateurs pour des travaux académiques ou basés sur des projets
Public cible
- Professeurs et chargés de cours des programmes d'ingénierie des systèmes, de génie civil, de design et d'architecture
- Le personnel académique souhaitant moderniser son enseignement avec des pratiques pertinentes pour l'industrie
- Responsables de recherche et coordinateurs de laboratoire intégrant la technologie dans les programmes
42 Heures
Nos clients témoignent (2)
Craig était très impliqué dans la formation, toujours en s'assurant que nous prêtions attention, en adaptant les exemples à nos activités quotidiennes et en fournissant une réponse chaque fois qu'on lui posait une question, même si l'information n'était pas incluse dans la présentation.
Ecaterina Ioana Nicoale - BOOKING HOLDINGS ROMANIA SRL
Formation - DevOps Foundation®
Traduction automatique
Niveau élevé d’engagement et de connaissances du formateur
Jacek - Softsystem
Formation - DevOps Engineering Foundation (DOEF)®
Traduction automatique