Afin de proposer un bon projet et de comprendre la dynamique du PFE, voici un guide1 pour les promoteurs.
Ce guide est divisé en deux parties, car un projet doit être d’abord approuvé par le Département, mais aussi sélectionné par des étudiants.
Projet acceptable
La proposition de projet doit être acceptable dans un contexte universitaire et donc doit être approuvée par le Département de génie logiciel et des TI. Les critères pour évaluer les projets sont les suivants:
- la portée est appropriée pour au moins 4 étudiants;
- la dimension de conception est acceptable (le problème est ouvert, il peut être résolu en itérations, il y a des contraintes réalistes) et il n’y a pas de conflits d’intérêts;
- le sujet se prête bien à un contexte de formation universitaire.
Portée du travail
Un PFE typique comprend:
- 180 heures (4 crédits, environ 45 heures de travail par crédit) de travail par membre
- 4 à 6 membres par projet (en équipe)
- un trimestre 15 semaines
- au moins 3 itérations de 2 à 3 semaines
La rédaction acceptable des rapports représente au moins un quart de ce travail. Une partie importante de la note pour le cours est basée sur la qualité du rapport final.
La recommandation au promoteur pour la portée est de proposer un projet avec un problème plutôt ouvert, où toutes les choses ne seront pas réalisables dans 15 semaines.
Par exemple, dans un processus agile, une série de récits utilisateurs sont déjà définis et priorisés au début du projet. L’équipe peut itérer 4 fois en essayant de réaliser le plus de choses, mais c’est entendu que le projet ne sera pas « fini ».
Conception
La conception est une dimension primordiale d’un PFE. Elle a une définition précise dans une école d’ingénieurs comme l’ÉTS, dont ses programmes de premier cycles sont agréés.
Selon le Bureau canadien d’agrément des programmes de génie (BCAPG), la conception en ingénierie :
« […] intègre les mathématiques, les sciences naturelles, les sciences du génie et les études complémentaires pour développer des éléments, des systèmes et des processus qui répondent à des besoins précis. Il s’agit d’un processus créatif, itératif et évolutif qui est assujetti à des contraintes pouvant être régies par des normes ou des lois à divers degrés selon la spécialité. Ces contraintes peuvent être liées à des facteurs comme l’économie, la santé, la sécurité, l’environnement et la société ou à d’autres facteurs interdisciplinaires. »
Normalement, le domaine d’affaires du promoteur (surtout lorsque celui-ci est une Compagnie) amène naturellement des besoins précis et des contraintes reliées à l’économie, à la santé, etc.
Par contre, voici quelques exemples de projets qui ne sont pas acceptables sur le volet de conception selon la définition ci-haut:
- Corriger un arriéré (backlog) de bogues (issues) dans un dépôt de code source, sous la supervision d’un employé de la Compagnie.
- Coder en C++ des modules d’une solution selon un design réalisé par l’architecte de la Compagnie.
- Réaliser un projet planifié en « cascade » sans itération: 2 semaines pour définir les besoins, 3 semaines pour faire un design, 3 semaines pour coder, 2 semaines pour tester, etc.
Contexte universitaire
Le PFE est un cours universitaire pour les personnes en fin de programme de premier cycle. La proposition de projet doit tenir compte de ce contexte. C’est différent d’un contrat de recherche ou d’un stage industriel.
Rôles des trois parties prenantes
Il y a trois parties prenantes dans un PFE:
- la communauté étudiante inscrite dans le cours,
- le corps professoral affecté aux projets et
- le Promoteur du projet (qui est parfois une Compagnie).
La communauté étudiante de l’ÉTS inscrite dans le PFE
- L’apprentissage des notions apprises durant le baccalauréat grâce à une application pratique qui va conduire à la rédaction d’un rapport technique et une présentation devant un public.
- Dans le cas des PFE en LOG et en GTI, des logiciels sont presque toujours créés.
Un PFE n’est pas un contrat avec une entreprise: il n’y a pas de livrables définis, pas de dates fixes, pas de garanties de qualité du code, etc.
Le corps professoral de l’ÉTS affecté au projet
- L’encadrement (coaching) de l’équipe dans un contexte de formation universitaire.
- L’évaluation de l’équipe dans le contexte du cours de PFE (selon le plan de cours).
L’expertise ou la propriété intellectuelle (PI) du corps professoral ne font pas partie de ces projets. Les droits de PI du corps professoral de l’ÉTS appartiennent à l’ÉTS.
Le Promoteur (Compagnie)
- Le mentorat et le transfert de connaissances dans un contexte de formation universitaire.
- « Expert du domaine » ou « Subject Matter Expert » (SME) en méthodologie Scrum.
- Répondre aux questions de la part de la communauté étudiante sur le domaine d’affaires, les besoins des utilisateurs, etc.
- Évaluer les solutions proposées par l’équipe à chaque itération et donner des conseils sur la direction à prendre.
Le rôle du promoteur ne peut pas être pris par une étudiante ou un étudiant inscrit dans le cours, car c’est un conflit d’intérêts. Il est difficile pour cette personne d’évaluer le travail que son équipe a réalisé. Voici quelques cas particuliers à considérer:
- Si un promoteur propose des personnes de la communauté étudiante qui sont (ou qui ont été) des employées du promoteur, c’est un conflit d’intérêts et le promoteur doit l’indiquer dans la proposition pour la transparence. Il ne faut pas que les tâches d’évaluation du travail réalisé pour le promoteur à la fin de chaque itération soient confiées à ces personnes. Le promoteur doit proposer une personne qui n’est pas inscrite dans le cours pour ce rôle.
- Lorsqu’il s’agit d’un projet proposé par un club étudiant, il faut s’assurer que le rôle du promoteur est pris par une personne du club qui n’est pas inscrite dans le cours. Cette personne devra faire la soumission de la proposition et elle devra évaluer objectivement le projet à la fin de chaque itération.
Il faut éviter le transfert de l’information confidentielle, car cela complique le contexte universitaire. L’ÉTS n’a pas de ressources disponibles pour cette gestion dans le cadre des cours, contrairement aux activités de recherche subventionnée.
Droits et responsabilités
Propriété intellectuelle (PI): Le terme « propriété intellectuelle » désigne les œuvres de l’esprit : inventions; œuvres littéraires et artistiques; dessins et modèles; et emblèmes, noms et images utilisées dans le commerce.
La PI est (ou peut être) protégée par la loi, par exemple au moyen de brevets, de droits d’auteur et d’enregistrements de marques de commerce, qui permettent aux créateurs de tirer une reconnaissance ou un avantage financier de leurs inventions ou créations.
Selon le « Règlement des études de premier cycle » de l’ÉTS:
- L’étudiant ou l’étudiante est propriétaire de ses œuvres (la propriété morale), cf. Section 7.8.3
- L’École n’a pas le droit d’utiliser la propriété morale de l’étudiant ou de l’étudiante, cf. Section 7.8.3
- L’École n’est pas responsable d’une utilisation commerciale ou industrielle des travaux produits par l’étudiant ou par l’étudiante, cf. Section 7.8.4
Les ententes
Bien qu’un PFE évite normalement le transfert de l’information confidentielle, il peut s’avérer nécessaire de faire une entente pour les raisons suivantes:
- Des informations confidentielles et stratégiques peuvent être échangées par la Compagnie (ou par le corps professoral).
- Afin de pouvoir bien protéger une Propriété intellectuelle, une Compagnie doit s’assurer d’obtenir « une chaîne de titres clairs ».
- Des investissements financiers importants sont effectués par les Compagnies et ils veulent les protéger.
Pour réduire les risques de délais des PFE, il y a plusieurs outils disponibles:
- Document explicatif pour les PFE
- Entente de confidentialité (Projet Type I) entre 1) les membres étudiants de l’équipe et 2) la Compagnie
- Entente de confidentialité (Projet Type II)2 entre 1) l’ÉTS, 2) les membres étudiants et 3) la Compagnie, signée par les trois parties avec une intervention du corps professoral
- Entente de cession de droits (entente Type III) entre 1) les membres étudiants et 2) la Compagnie, rédigée par l’ÉTS.
Logiciels libres et open source
Il est possible de faire des projets de logiciels libres ou open source dans le cadre des PFE. C’est une solution intéressante, car cela permet à la communauté étudiante de garder la propriété morale de leurs œuvres et de contribuer à la communauté. Le promoteur peut aussi bénéficier de cette contribution, car il peut utiliser le logiciel libre ou open source dans ses propres projets, selon les conditions de la licence choisie. Le choix est ultimement celui de l’équipe, mais le promoteur peut influencer ce choix (il y a une option pour Open Source dans le formulaire de soumission à propos de la cession des droits).
Il est recommandé au Promoteur de bien suivre la mise en place de la licence choisie et de bien comprendre les implications de la licence pour son propre usage. Le fait de mettre le code source du PFE sur un référentiel public (GitHub, GitLab, etc.) n’est pas suffisant pour en faire un logiciel libre ou open source. S’il n’y a pas de licence, il est possible que le code source ne soit pas réutilisable selon la loi. Le référentiel doit spécifier une licence qui permette la réutilisation du code source par d’autres personnes. GitHub propose une documentation pour la Gestion des licences d’un référentiel.
Si une Compagnie exige une entente de confidentialité ou de cession de droits, il y a des conséquences:
- Puisque les membres de l’équipe (au moins 4) sont libres de négocier individuellement les clauses des ententes, cela peut s’avérer complexe. Cette négociation peut retarder le démarrage du projet. Si ces négociations prennent trop de temps, cela peut nécessiter l’affectation de l’équipe à un autre projet.
- Pour minimiser ce risque, les personnes inscrites au cours de PFE sont informées de cette complexité lorsqu’un projet exige une entente. La nature des ententes est indiquée dans la proposition de projet. Le promoteur accepte de ne pas modifier les ententes (p. ex. au démarrage du projet), puisque les membres de l’équipe affectée au projet auraient fait leur choix de projet selon les conditions des ententes divulguées avec la proposition.
- L’ÉTS ne peut offrir aucun avis légal aux personnes inscrites dans le PFE pour comprendre les clauses de ces ententes. C’est leur responsabilité de chercher un avis professionnel (légal) avant de signer.
- Selon la clause 9.1 de l’entente de confidentialité de Type I, les personnes dans une équipe doivent soumettre leur rapport à l’entreprise 3 semaines avant le délai. Ces personnes ont effectivement moins de temps pour rédiger leur rapport comparé à un projet sans contrainte de confidentialité.
- Les personnes inscrites dans le PFE sont libres de choisir leurs projets candidats et peuvent simplement éviter les projets ayant les ententes de confidentialité ou de cession de droits (de Type III ou autre), surtout quand il n’y a pas de récompense financière pour leur travail. Une proposition de projet avec trop de contraintes peut se trouver sans équipe.
Projet intéressant
Chaque personne inscrite dans le PFE choisit un nombre limité de projets parmi les propositions, spécifiant un ordre de préférence. Souvent, il y a plus de propositions de projet que d’équipes, ce qui veut dire qu’un certain nombre de projets ne sont pas choisis. Un projet sans équipe pourrait être re-soumis au trimestre suivant.
Alors, voici quelques stratégies pour faire une proposition intéressante:
- permettre une souplesse avec des solutions technologiques, p. ex. front-end moderne comme Angular ou React, plutôt que juste React.
- éviter une obligation sur une technologie niche (p. ex. Ruby on rails, Rust, etc.) - il n’est pas impossible que des personnes s’y intéressent, mais il faut un minimum de quatre (4) étudiants ou étudiantes pour former une équipe pour un projet.
- utiliser un langage vulgarisé pour l’étudiant et l’étudiante en dernière année du baccalauréat en ingénierie de génie logiciel et des technologies de l’information.
- mentionner autant possible les détails sur les spécifications, p. ex. « parmi les récits utilisateurs (user stories), il y a … », le cas échéant, car ça rend plus concret le problème.
- mettre en évidence la valeur du projet pour la société, l’économie, la sécurité, l’environnement, etc.3
Finalement, sachez que la personne inscrite dans le cours de projet fin d’études est souvent « réticente aux risques ». Les risques comprennent les ententes de confidentialité et de cession de droits, les technologies niches, les problèmes flous ou trop orientés recherche, etc. Plus il y a de risques apparents dans un projet, moins il sera populaire dans la communauté étudiante.
Soumettre une proposition
Pour soumettre une proposition de projet, utilisez ce formulaire.
Projets reconduits
Si vous avez un projet qui a été réalisé par une équipe de PFE et que vous souhaitez le proposer à nouveau, il est possible de le faire. Il est recommandé de mentionner dans la proposition que le projet a déjà été réalisé et de donner des détails sur les améliorations ou les nouvelles fonctionnalités à ajouter. Lorsqu’il s’agit d’un projet où il y a eu une entente pour la cession de droits par logiciels libres ou open source, il est fortement recommandé de fournir dans la description du projet l’URL du référentiel de code (sur GitHub, GitLab, etc.) et de spécifier la licence utilisée.
Notes de bas de page
Ce guide est une adaptation de la présentation « Ententes contractuelles pour vos projets de fin d’études » préparée par Jack-Éric Vandenbroucke dans le contexte des PFE en Génie mécanique à l’ÉTS.↩︎
Pour accéder à l’entente de confidentialité (Type II), il faut avoir déjà en place un projet de recherche avec l’ÉTS. Contacter le responsable des PFE au Département de génie logiciel et des TI.↩︎
Un projet très orienté recherche fondamentale, même s’il utilise les technologies modernes, est souvent évité par la plupart des étudiants et étudiantes.↩︎