Vous êtes sur la page 1sur 7

Le projet DEVASC : Guide de l'instructeur

Contexte

Pour développer des compétences en milieu de travail, les élèves doivent dépasser leur maîtrise de
connaissances spécifiques et de compétences discrètes. Les compétences acquises par les étudiants
dans le cadre d'un cours d'études doivent être mises en pratique s'ils veulent se préparer à l'emploi. De
nombreux cours et programmes d'études manquent de cette composante. En plus des connaissances et
des compétences requises par la discipline apprise, le lieu de travail requiert différentes compétences qui
sont rarement enseignées dans le cadre de l'éducation formelle. Les compétences professionnelles qui
font défaut dans de nombreux programmes d'études sont notamment les suivantes:

 Penser de façon critique et appliquer les connaissances et les compétences de manière


appropriée à des situations uniques.
 Travailler de manière productive en équipe, y compris la capacité de prendre des responsabilités
au besoin et de comprendre les rôles d'équipe et leur propre rôle.
 Communiquer, participer et défendre efficacement au niveau interpersonnel informel, au niveau
de l'équipe et au niveau du projet officiel.
 Respecter les calendriers et les délais dans le cadre de projets menés en équipe.
 Contribuer en toute confiance à la mission commune de l'équipe, du département et de
l'organisation.

Justification

Le projet DEVASC est conçu pour placer les élèves dans un environnement semblable au lieu de travail
dans lequel ils peuvent acquérir et démontrer la maîtrise des compétences du cours, ainsi que
développer les compétences et la sensibilisation nécessaires pour participer à un milieu de travail réel.

Objectifs du cours :

Les étudiants pratiquent des KSAs pertinents pour les objectifs du cours suivants :

LI Module/Bloc/Titres des chunk


3.0 Utiliser les meilleures pratiques en matière de développement et de conception de
logiciels.
3.3 Implémenter le contrôle de la version logicielle à l'aide de GIT.
3.5 Utiliser Python Unit Test pour évaluer le code.
3,6 Utiliser Python pour analyser les différents formats de données et de messages.
4.5 Créer des demandes d'API REST via HTTPS pour intégrer les services en toute
sécurité.

Objectifs spécifiques au projet :

Pendant les activités du projet de ce cours, les étudiants travailleront en équipe pour :

 Évaluer le problème et les exigences du client


 Effectuer la recherche initiale
 Concevoir une solution
 Créer un prototype
 Tester, évaluer et modifier la solution
 Évaluer, itérer et améliorer la solution
 Présenter une dernière présentation d'une solution et réfléchir à ce qui a été appris

Défis d'apprentissage

Il est important de déterminer où se situent les défis d'apprentissage pour l'étudiant, afin que des
interventions puissent être intégrées dans les activités du projet qui aborderont ou évalueront les
compétences critiques. De plus, il est important de comprendre les activités du projet et de pouvoir
intervenir pour assurer une expérience d'apprentissage plus fructueuse. Voici quelques défis que vous
pourriez rencontrer :

 Créativité et application des compétences et des connaissances - Le projet dans son


ensemble est quelque peu ouvert. De nombreux étudiants ne sont pas habitués aux activités
ouvertes et ne savent pas toujours ce qu'ils doivent faire. Lorsqu'un travail créatif est nécessaire,
utilisez des activités de brainstorming non critiques et/ou des jeux de rôle. Lorsque les éléments
du processus du projet ne sont pas clairs pour les étudiants, encouragez-les à revenir sur le
contenu du cours pertinent pour trouver des idées.
 Dynamique d'équipe — Au début, il peut être difficile de travailler efficacement en équipe. L'un
des principaux arguments est que tous les étudiants doivent s'engager et contribuer sur le même
pied d'égalité. Il est important de comprendre quel travail a été confié aux étudiants et qu'il
convient aux forces et aux faiblesses des étudiants. D'autres activités de renforcement de
l'équipe peuvent contribuer à accroître l'engagement. Prendre le temps de demander aux
équipes de choisir des noms, de créer un énoncé de mission, etc. peut contribuer à accroître
l'engagement et l'engagement des étudiants envers la réussite de l'équipe.
 Application des compétences et des connaissances - L'objectif de ce projet est d'aider les
élèves à mettre en pratique leurs compétences et leurs connaissances. Il est important que les
étudiants identifient le contenu du cours pertinent à postuler au projet. Il peut être utile de leur
demander d'indiquer explicitement quelles sont les parties du contenu du cours qu'ils trouvent
utiles et qu'ils appliquent à différentes parties du projet.

Description

Ce projet est une simulation basée sur le lieu de travail en cinq parties, dans laquelle les étudiants
travaillent ensemble comme ils le feraient dans une entreprise de développement de logiciels. Ils
formeront des équipes, adopteront et utiliseront des processus de gestion Agile, et concevront et
développeront une application logicielle en réponse aux besoins des clients. Les élèves utiliseront leurs
compétences et leurs connaissances techniques et interpersonnelles pour réaliser ces activités de projet,
tout comme ils le feraient dans le monde du travail en évolution rapide.

Les deux premières parties du projet concernent la formation d'équipes et l'attribution des rôles aux
membres de l'équipe. Les trois dernières parties impliquent le travail avec le code et GitHub. Les activités
du projet se déroulent dans différents modules du cours et sont complétées au fur et à mesure que les
élèves remplissent le matériel de cours pertinent.

Les cinq parties du projet et leur emplacement dans le programme d'études sont les suivantes :

 2.3.4 Introduction du projet DEVASC


 2.3.5 Activité de projet 1 - Introduction et formation d'équipe
 3.7.3 Activité de projet 2 - Formation d'équipe agile
 4.9.4 Activité de projet 3 - Codage social
 6.3.7 Activité de projet 4 - Essais et déploiement automatisés de logiciels
 8.6.9 Activité de projet 5 - Programmabilité et automatisation du réseau

Mise en œuvre

Ce guide de l'instructeur de projet fournit des directives sur la manière dont une activité de projet peut
être menée dans le cadre du cours DEVASC. N'hésitez pas à modifier et à innover comme vous le jugez
approprié pour vos étudiants. Une bonne façon de mettre en œuvre le projet est de combiner le travail en
classe et hors classe si possible. Fournir du temps en classe permet l'observation directe du processus
de groupe. Il vous permet d'interagir avec les équipes afin de surveiller le niveau d'engagement individuel
des élèves dans le cadre de l'équipe et d'observer directement les preuves des résultats de l'équipe.

Stratégies d'évaluation

Les étudiants créent une série de produits livrables pendant le projet. Cela inclut les rubriques qu'ils
remplissent pour documenter leurs activités. Les élèves devraient se familiariser avec les exigences
énoncées dans les rubriques avant de commencer les activités.

D'autres stratégies d'évaluation potentielles sont les suivantes :

 Observation directe - Planifiez des parties importantes des activités à mener en personne. De
cette façon, vous pouvez observer directement le processus d'équipe, l'engagement des
étudiants, etc.
 360 évaluations par les pairs - Concevoir un formulaire que les élèves peuvent utiliser pour
évaluer le rendement des autres membres de l'équipe dans différentes activités. Des exemples
peuvent être trouvés sur le web.
 Évaluations par équipe de pairs — Créez une rubrique que les étudiants peuvent utiliser pour
examiner les applications créées par d'autres équipes.
 Évaluations d'experts - Sélectionnez un panel de personnes pour juger et classer les solutions
étudiantes dans un environnement concurrentiel.
 Portfolio des résultats de l'équipe - Demandez aux étudiants de constituer un portfolio de leurs
travaux sur le web pour que les autres étudiants, le corps enseignant, les employeurs potentiels,
etc. puissent le consulter. Le portfolio contient des preuves des connaissances et des capacités
de l'équipe.
 Évaluation par les pairs des présentations d'équipe - Créez une rubrique que les élèves
utilisent pour évaluer les présentations de l'équipe. Utilisez la rubrique pour concentrer
l'apprentissage des élèves sur les KSAs importants.
 Auto-évaluation - Choisissez des heures pour une auto-évaluation formelle ciblée, par exemple
avant le début de la première activité de codage et à la fin de l'activité. Concentrez-vous sur ce
qu'ils sont préoccupés par la capacité de faire et sur la façon dont ils se sont améliorés à mesure
que le projet avançait. Posez des questions pour évaluer le degré d'engagement dans le
processus d'apprentissage et la valeur perçue du travail en équipe.

Descriptions d'activité :

Le projet comprend cinq activités de projet. Les deux premiers sont préliminaires. Les trois derniers
permettent l'application des KSAs de cours.
Activité de projet 1:2.3.4 Introduction et formation d'équipe
Dans cette activité, les élèves rencontrent leur équipe. Tout d'abord, ils lisent l'activité et apprennent à
connaître sa pertinence par rapport à leurs objectifs de carrière. Une activité de brise-glace facilite la
création d'équipe. Les élèves choisissent un animateur qui guidera cette activité et aidera à atteindre
l'objectif de préparation d'une équipe à travailler ensemble.

Des activités supplémentaires de consolidation d'équipe dans lesquelles les étudiants créent une identité
d'équipe en créant un logo ou en rédigeant une déclaration de mission peuvent contribuer à accroître la
motivation et l'engagement.

Les élèves livreront ce qui suit :

Rubrique complétée.

Activité de projet 2:3.7.3 Formation d'équipes agiles


Dans cette activité, les étudiants choisissent un chef de scrum agile qui facilitera le travail de l'équipe tout
au long du projet. Le chef de la mêlée sera responsable des activités suivantes :

 Éliminer les obstacles ou les problèmes qui pourraient survenir dans le cadre du projet.
 Établir un environnement dans lequel l'équipe peut travailler et communiquer efficacement.
 Aborder la dynamique d'équipe pour s'assurer que les membres de l'équipe se soutiennent et
travaillent ensemble de manière efficace et efficiente.
 Protéger l'équipe des interruptions et distractions extérieures et agir comme intermédiaire entre
l'équipe et le propriétaire du projet (instructeur).
 Assurer que les informations requises par la rubrique sont documentées. (La documentation
réelle peut être faite par un enregistreur.)

Les membres de l'équipe choisissent également un enregistreur qui sera chargé de tenir à jour le
calendrier des réunions, d'enregistrer les réunions et de remplir les rubriques d'activité. D'autres rôles
peuvent également être établis à la suite de recherches sur Internet menées par les membres de
l'équipe. De plus, pour mener à bien cette activité, l'équipe s'accordera sur des stratégies et des outils de
communication hors classe, tels que WebEx, courriel et réunions en personne planifiées (si possible).

Vous agirez en tant que responsable, ou propriétaire du produit, des projets étudiants. Vous devriez
indiquer aux étudiants le temps qu'ils ont pour terminer cette partie du projet.

L'enregistreur documentera le travail de l'équipe sur cette activité de projet.

Les élèves livreront ce qui suit :

Rubrique complétée.

Activité de projet 3: 4.9.4 Codage social


Les étudiants choisissent d'apporter des améliorations aux fonctionnalités d'un projet de codage existant
qu'ils ont déjà réalisé dans un travail pratique ou de créer une nouvelle application. Deux choix de projets
sont proposés.

 L'option 1 implique d'apporter des améliorations aux fonctionnalités du code qui a été complétée
dans le TP 4.9.2 Intégrer une API REST dans une application Python.
 L'option 2 implique la création d'une nouvelle application qui récupérera les adresses IPv4 et
IPv6 actuelles d'un utilisateur à partir d'une API REST sur ipapi.co, ipsstack.com ou une
alternative choisie par l'équipe. Cette activité comprend l'ensemble du processus de
développement logiciel et s'étendra donc sur une période plus longue qu'une période de cours. Il
faudra que les étudiants travaillent de façon indépendante et se rencontrent en équipe à distance
ou en personne.

Il peut être avantageux d'avoir au moins le début de cette activité dans la salle de classe afin que vous
puissiez évaluer le projet potentiel et l'état de préparation des élèves à commencer le développement.
Vous devrez peut-être organiser une réunion à distance avec l'équipe à cette fin.

Ici, en tant que propriétaire du projet, vous pouvez fournir le budget et le calendrier du projet. Les élèves
auront besoin de cette information pour s'assurer de l'arriéré (backlog) du projet.

Cette activité de projet comprend les parties suivantes :

 Partie 1: Sélectionner un projet de demande - Les élèves discutent des options et choisissent
une option de projet. Ils énumèrent et hiérarchisent également les caractéristiques que leur projet
comportera et énumèrent les objectifs du projet.
 Partie 2: Rôles d'équipe - Les élèves auront des capacités et des intérêts différents. Des tâches
peuvent être assignées pour tirer parti des caractéristiques de l'élève.
 Partie 3: Charge de travail du projet et état du projet - Les étudiants estiment le calendrier et
le budget du projet. Ils créent également des tâches et des tâches subordonnées au besoin et
génèrent un livrable de l'arriéré (backlog) du projet.
 Partie 4: Configurer GitHub pour la collaboration - Les étudiants établissent un espace
GitHub pour le projet et configurent les fonctionnalités de collaboration GitHub pour l'équipe.
 Partie 5: Développement d'applications - Les étudiants commencent à coder des tâches
spécifiques, à fusionner le code de l'équipe et à vérifier que les modules fonctionnent comme
prévu.
 Partie 6: Présentation finale - Les élèves créent une présentation qui communique les
caractéristiques du projet et la justification du projet. À ce moment-là, ils démontreront leur
demande. Ils doivent satisfaire à une liste d'exigences pour la présentation.
 Partie 7: Activités d'équipe et réflexion - Les élèves répondent à une série de questions de
leur gestionnaire pour fournir de l'information sur le processus d'équipe et la dynamique
interpersonnelle.

Pour Option 1, les étudiants sont informés qu'un gestionnaire a besoin des améliorations apportées aux
fonctionnalités de l'application API MapQuest en réponse à une demande du service marketing. Les
améliorations suivantes sont suggérées :

 Améliorations de l'interface utilisateur telles que la sortie améliorée avec des couleurs, des
tableaux, etc.
 Fournir des options supplémentaires telles que la sélection d'unités en métrique ou en anglais, le
type de données fournies à l'utilisateur.
 D'autres que les étudiants peuvent juger appropriés.

Pour Option 2, les élèves reçoivent une tâche, ainsi que des API suggérées à accéder afin de mener à
bien la tâche. Ils doivent rechercher la documentation du point de terminaison de l'API pour trouver les
appels corrects et d'autres informations requises afin de terminer l'activité de projet.
Une fois que chaque équipe a choisi son option, elle doit réfléchir aux nouvelles fonctionnalités qu'elle
pourrait implémenter. Il devrait s'agir d'une séance de créativité au cours de laquelle les élèves génèrent
autant d'idées que possible. Les idées devraient être consignées pour discussion ultérieure. Lorsque les
idées ont été sélectionnées, les équipes doivent évaluer leurs listes et hiérarchiser les fonctionnalités
qu'elles peuvent coder dans le temps alloué à l'activité de projet de codage social. Les étudiants auront
besoin d'un excès de fonctionnalités parce qu'ils doivent créer un arriéré (backlog) de projets qui consiste
en des fonctionnalités pouvant être reportées jusqu'à ce qu'un effort de développement ultérieur soit
entrepris. Il s'agit de la liste qui a été discutée et élaborée dans l'activité de projet 2.

Dans les deux options, les étudiants devraient être libres d'innover. De plus, il peut être utile d'informer
les étudiants que leurs projets seront évalués en partie en fonction de l'originalité ou du potentiel de
satisfaction de la clientèle.

Le chef de scrum devrait être très actif pendant cette phase dans l'attribution des tâches et la gestion des
caractéristiques du projet comme suit :

 Tenue à jour d'une liste de tâches spécifiques


 Répartir les tâches en plus petites tâches si possible
 Priorisation de chaque tâche
 Gestion de l'état de chaque tâche et de tout effet qu'elle pourrait avoir sur l'exécution d'autres
tâches et le projet

Les produits livrables de l'élève pour cette activité sont les suivants :

 L'application terminée, au moins adaptée à la démo


 Présentation de leur projet et démonstration d'application
 Activités d'équipe et questions de réflexion terminées
 Rubrique complétée pour cette activité
 Backlog

Activité de projet 4:6.3.7 Test et déploiement automatisés de logiciels


Dans le cadre de cette activité, les élèves continueront à développer leur code à partir des fonctionnalités
différées de la carnet de commandes (backlog). Ils concevront également un plan de test logiciel qui
pourrait être déclenché automatiquement par GitHub chaque fois qu'il y a un nouveau commit dans la
base de code. Les élèves doivent utiliser Jenkins et explorer d'autres outils de CI/CD qu'ils pourraient
intégrer dans le pipeline de tests automatisés.

À la fin de l'Activité de Projet, les différentes équipes présenteront leurs actions, solutions et réflexions qui
ont eu lieu pendant l'activité.

Les produits livrables de l'élève sont les suivants :

 Code d'application avec de nouvelles fonctionnalités


 Afficher les modifications apportées à GitHub
 Fournir les cas de test utilisés
 Décrire la fonctionnalité du pipeline CI/CD
 Présentation
 Rubrique complétée avec les activités de l'équipe et la réflexion.
Activité de projet 5:8.6.9 Programmabilité et automatisation du réseau
Dans cette activité de projet, les étudiants se concentrent sur le développement d'applications utilisateur
vers la programmabilité et l'automatisation du réseau. Ils font désormais partie d'une équipe qui prend en
charge les ingénieurs de support de niveau 1 qui sont tenus de créer des demandes de modification
réseau en réponse aux problèmes des clients. Une équipe d'ingénieurs réseau met en œuvre les
demandes. La direction a décidé d'étudier l'optimisation du processus en automatisant certains des
changements, permettant aux ingénieurs réseau d'être libres d'effectuer d'autres travaux. La tâche
consiste à concevoir un système qui permettra aux ingénieurs de support d'interagir avec un simple
chatbot qui mettra automatiquement en œuvre les changements requis.

Les étudiants utiliseront NETCONF et l'API des équipes WebEx dans cette activité de projet. Les
étudiants peuvent effectuer leur travail en utilisant l'environnement de laboratoire basé sur la VM. Ils
auront besoin d'accéder à l'API des équipes WebEx dans le cadre des exigences. Notez que l'API et la
programmabilité des équipes WebEx sont couvertes dans le laboratoire de la section 8.6.7 Cisco
Collaboration Platforms. Cette partie de l'activité de projet peut être omise ou différée jusqu'à ce que les
élèves aient acquis les connaissances et les compétences nécessaires.

Objectifs opérationnels - Automatisez les processus suivants :

 Vérifier la configuration d'exécution actuelle


 Apporter trois modifications à la configuration
 Vérifier les modifications
 Vérifier la nouvelle configuration d'exécution
 Envoyer un message au groupe WebEx SE Teams (L1 et L2 SE) annonçant la mise à jour

Objectifs techniques :

 Utiliser la modélisation des données avec YANG.


 Implémenter l'automatisation réseau avec NETCONF.
 Automatiser le processus en utilisant Python.

Les conditions requises pour la création de l'application sont les suivantes :

 Afficher le périphérique running-config.


 Trois modifications à la configuration running-config
 Communication de la salle des équipes WebEx
 Modèles YANG

Les produits livrables de cette activité de projet sont les suivants :

 Objectifs d'application
 Running-config en cours
 Nouveau running-config
 Message à la salle WebEx Teams
 Rubrique complétée.
 Présentation de l'activité du projet

Vous aimerez peut-être aussi