Logo ÉTS
Session
Cours
Responsable(s) Abdelmoumène Toudeft

Se connecter
 

Sauvegarde réussie
Echec de sauvegarde
Avertissement
École de technologie supérieure

Responsable(s) de cours : Abdelmoumène Toudeft


PLAN DE COURS

Hiver 2025
TCH057 : Applications mobiles et expérience usager (3 crédits)





Préalables
Aucun préalable requis
Unités d'agrément
Données non disponibles




Qualités de l'ingénieur

Qn
Qualité visée dans ce cours  
Qn
  Qualité visée dans un autre cours  
  Indicateur enseigné
  Indicateur évalué
  Indicateur enseigné et évalué



Descriptif du cours
Ce cours ne peut être reconnu dans le cadre d’un programme de baccalauréat.

Ce cours vise à initier l’étudiante ou l’étudiant au développement d’applications mobiles et à la création d’une interface usager.

Au terme de ce cours, l’étudiante ou l’étudiant sera en mesure de : distinguer les différents éléments qui constituent une interface usager (conteneurs, boutons, zones de saisie, etc.); réaliser le prototypage rapide d’interfaces usager aux fins de tests d’utilisabilité en sachant exploiter un concepteur d’interface et en reconnaissant ses limites; implémenter une application mobile munie d’une interface usager adéquate et exploitant les interfaces programmatiques (API) de la plateforme; gérer les données au sein d’une application mobile; tester, déployer et publier une application mobile dans une plateforme de distribution.

Développement d’applications pour périphériques mobiles. Caractéristiques et l’architecture de base d’une application mobile. Éléments d’une interface usager. Principes de base de conception d’une interface usager telles que la capacité apprenante (« learnability »), la prévention d’erreurs et l’efficacité. Notions émergentes d’expérience usager et d’interfaces usager inclusives.

Ce cours comporte un projet de session, réalisé en équipes, lors duquel les étudiantes ou les étudiants seront amenés à développer une application mobile munie d’une interface usager adéquate.



Objectifs du cours

Ce cours initie au développement d'applications mobiles et au domaine de l'expérience utilisateur (UX).

De manière plus spécifique, ce cours a pour objectifs de permettre à l'étudiante ou l'étudiant de :

  • Décrire les caractéristiques du monde des applications mobiles et du développement mobile;
  • Exploiter un environnement de développement et de dépoiement pour le mobile;
  • Exploiter les possibilités offertes par une technologie mobile pour programmer correctement les écrans d'une application;
  • Mettre en place une architecture d'application respectant les standards;
  • Programmer les fonctionnalités d'une application;
  • Programmer les accès à des données locales et distantes;
  • Rendre fonctionnelle une application en gérant les événements en réponse aux actions de l'utilisateur;
  • Gérer les permissions d'une application; 
  • Mettre en oeuvre les principes du design d'interfaces et de l'expérience utilisateur lors de la conception des écrans d'une application;
  • Exploiter les possibilités d'un outil de conception d'interfaces;
  • Expliquer l'importance et le rôle de l'expérience utilisateur (UX) dans les applications d'aujourd'hui;
  • Mettre en œuvre les pratiques qui permettent une bonne expérience utilisateur;
  • Appliquer les règles ergonomiques et évaluer l'ergonomie d'une interface personne-machine.



Stratégies pédagogiques

Le cours allie théorie et pratique. Les notions et concepts sont expliqués lors des séances de cours, appuyés par des exemples et des études de cas. Les séances de laboratoire sont utilisées pour la mise en pratique des apprentissages.




Utilisation d’appareils électroniques

Les étudiantes et étudiants utiliseront des émulateurs pour exécuter les applications. S'ils le veulent, ils peuvent exécuter les applications sur leurs appareils cellulaires et tablettes lors des laboratoires.




Horaire
Groupe Jour Heure Activité
01 Lundi 13:30 - 17:00 Activité de cours
Mercredi 08:15 - 10:15 Travaux pratiques (Groupe A)
Mercredi 10:30 - 12:30 Travaux pratiques (Groupe B)
02 Lundi 08:15 - 10:15 Travaux pratiques (Groupe A)
Lundi 10:30 - 12:30 Travaux pratiques (Groupe B)
Mardi 13:30 - 17:00 Activité de cours
03 Mercredi 13:30 - 15:30 Travaux pratiques (Groupe A)
Mercredi 15:45 - 17:45 Travaux pratiques (Groupe B)
Vendredi 09:00 - 12:30 Activité de cours
04 Mercredi 09:00 - 12:30 Activité de cours
Jeudi 08:15 - 10:15 Travaux pratiques (Groupe A)
Jeudi 10:30 - 12:30 Travaux pratiques (Groupe B)
05 Mardi 13:30 - 15:30 Travaux pratiques (Groupe A)
Mardi 15:45 - 17:45 Travaux pratiques (Groupe B)
Vendredi 09:00 - 12:30 Activité de cours



Coordonnées du personnel enseignant le cours
Groupe Nom Activité Courriel Local Disponibilité
01 Naïm Himrane Activité de cours naim.himrane@etsmtl.ca
02 Samah Kansab Activité de cours samah.kansab.1@ens.etsmtl.ca
03 Lazhar Khelifi Activité de cours lazhar.khelifi@etsmtl.ca
03 Nessrine Hammami Travaux pratiques (Groupe A) nessrine.hammami.1@ens.etsmtl.ca
04 Mirna Awad Activité de cours cc-Mirna.Awad@etsmtl.ca
05 Naïm Himrane Activité de cours naim.himrane@etsmtl.ca



Cours

Notez bien :

  • La première période de trois heures sert aussi à présenter le plan de cours, l’approche pédagogique utilisée et les différents modèles d’évaluation. 
  • L'ordre de présentation peux varier selon l'enseignante ou l'enseignant.
  • Une bonne partie du contenu de ce cours sera mise en application par l'étudiante ou l'étudiant lors de la deuxième moitié de la session dans le cours TCH099 Projet intégrateur en informatique.

 

Semaine

MATIÈRE

      1

  • Présentation du cours : plan de cours, stratégies pédagogiques, évaluations, ...
  • Environnement de programmation Android Studio : téléchargement et installation.
  • Survol de l'environnement de programmation.
  • Notions nécessaires avant de commencer le développement mobile - éléments de programmation orientée objet et syntaxe Java :
    • Classes et objets;
    • Attributs et méthodes;
    • Héritage par extension (extends);
    • Redéfinition (override);
    • Interface et implémentation (implements).

Module 1 : Notions fondamentales en développement mobile

      2 - 4

  • Introduction au monde du développement mobile :
    • Caractéristiques, spécificités et contraintes;
    • Plateformes et technologies;
    • Types d'applications (natives, web, hybrides).
  • La plateforme Android;
  • Création d'une application;
  • Structure d'une application;
  • Cycle de vie d'une application;
  • Composants fondamentaux :
    • Vues (View);
    • Activités;
    • Intentions (Intent);
    • Fournisseurs de contenu;
    • Services;
    • Récepteurs de diffusion (Broadcast Receiver);
    • Le manifeste.
  • Activités;
  • États et cycle de vie d'une activité;
  • Principes fondamentaux :
    • Interfaces utilisateurs et XML;
    • Mécanisme de gestion des événements;
    • Ressources.
  • Déploiement et exécution d'une application;
  • Emulateurs (AVD);
  • Intentions et permissions;
  • Navigation entre les écrans d'une application;
  • Composants (View) de base : boutons, champs de texte, étiquettes,...

Module 2 : Interfaces Personne-Machine et UX

   5 - 7

  • Vues (View) et dispositions (LinearLayout, RelativeLayout, GridLayout,...);
  • Conception d'une interface utilisateur;
  • Listes et adaptateurs;
  • Design d'interfaces utilisateurs : règles de design, critères ergonomiques, ...
  • Introduction à l'expérience utilisateur (UX);
  • Exploitation d'un outil de conception d'interfaces utilisateur (exemple : Figma).
    8  Examen Intra : Contenu des semaines 1 à 7

Module 3 : Développement d'applications

9-13

  • Interaction avec un serveur externe (exemple : un serveur JSON ou une API REST).
  • Accès réseau et requêtes asynchrones.
  • Traitement de données JSON.
  • Aspects architecturaux (MVC et variantes).
  • Patrons de conception pour le mobile : Singleton, DAO,...
  • Bases de données (SQLite).
    • Création;
    • Exploitation;
    • Mise à jour de la structure.
  • Divers :
    • Services de localisation et Google maps;
    • Caméra;
    • Fournisseurs de contenu;
    • Fragments;
    • ...

 Examen final

 Contenu de toute la session.




Laboratoires et travaux pratiques

Chaque semaine, un laboratoire permet de mettre en pratique la matière de la semaine et de l'intégrer aux apprentissages des semaines précédentes.

Deux laboratoires notés permettent d'intégrer ensemble les apprentissages des modules 1 et 2, respectivement.

Un projet de session permet d'intégrer ensemble tous les apprentissages du cours.




Utilisation d'outils d'ingénierie

S.O.




Évaluation
Évaluation Pondération Semaine

Examen intra
(2 heures)

20 %

8

Laboratoire noté 1

10 %

5

Laboratoire noté 2

10 %

10

Projet de session

20 %

Toute la session (remise le 13 avril)

Examen final
(3 heures)

40%

Période des examen finaux

 

Les évaluations effectuées en classe pour lesquelles l’entraide n’est pas permise, notamment l’examen intra et l’examen final, sont considérées comme étant individuelles. Toutes autres évaluations pour lesquelles l’entraide entre étudiantes et étudiants est possible qu'elles aient lieu en classe ou non, et ce même si une remise par étudiante ou étudiant est exigée, sont considérées comme étant en équipe.

À propos du projet de session :

  • Le projet de session vise à mettre en application, dans le cadre d'un problème réaliste, les apprentissages acquis dans le cours. Il est attendu des étudiants et des étudiantes de produire des travaux qui permettent de résoudre le problème de l'énoncé mais surtout de les réaliser selon les standards de qualité et les bonnes pratiques enseignés (respect des normes de codage, mise en place d'une architecture standard,...).
  • Le projet de session se fera en équipes de 2 à 3 personnes. Une équipe ne doit remettre qu’un seul travail.
  • L'utilisation de Git et Github est fortement recommandée. Elle peut être exigée par l'enseignante ou l'enseignant.
  • Il est à noter que pour les travaux en équipe, chaque membre recevra une note inférieure ou égale à la note obtenue par l'équipe. Cette note individuelle est directement proportionnelle à l'implication de l'individu. La méthode d’évaluation de l’implication de chaque individu est laissée à la discrétion de l’enseignant.
  • Voici les exigences minimales du projet de session :
    • L'application doit avoir au minimum 3 écrans;
    • Les étudiantes et étudiants doivent produire les maquettes des interfaces/écrans (mockups ou prototypes);
    • Des intentions doivent être utilisées pour la navigation entre les écrans;
    • L'application doit intéragir avec un serveur externe (typiquement, une API Rest) en lecteur et en écriture. Notez que les étudiantes et étudiants n'auront pas à programmer le coté serveur. Le code serveur doit être fourni avec l'énoncé (par exemple, un serveur JSON);
    • L'application doit utiliser une base de données locale (SQLite);
    • L'application doit respecter une architecture standard enseignée dans le cours.

À propos des laboratoires notés :

  • Les laboratoires notés ont lieu en présence et sont remis à la fin de la séance du laboratoire.

  • Le laboratoire noté 1 porte sur le module 1 du cours et consiste à développer une application mobile intégrant l'ensemble des apprentissages acquis dans le module.

  • Le laboratoire noté 2 porte sur le module 2 du cours et consiste à réaliser le design d'une application mobile intégrant l'ensemble des apprentissages acquis dans le module et incluant un minimum de fonctionnalités.

À propos de l'examen intra :

  • L'examen intra a lieu en présence.

À propos de l'examen final :

  • L'examen final a lieu en présence.
  • Aucune documentation et aucun accès Internet ne sont permis.
  • Les étudiantes et les étudiants donneront leurs réponses sur Enaquiz.

Double seuil : 

  • Une note moyenne pondérée de 50 % est exigée pour l’ensemble des évaluations à caractère individuel. Ce seuil est une condition nécessaire à la réussite du cours mais ne la garantit pas.

À propos de la langue utilisé

  • Afin de respecter les exigences relatives à la langue française telles que stipulées à la Politique linguistique de l’École, le code et les commentaires de code doivent être principalement en français tel que c'est le cas pour tous les exemples et documents qui seront fournis aux étudiantes et étudiants.



Double seuil
Note minimale : 50



Dates des examens intra
Groupe(s) Date
1 24 février 2025
2 25 février 2025
3, 5 28 février 2025
4 26 février 2025



Date de l'examen final
Votre examen final aura lieu pendant la période des examens finaux, veuillez consulter l'horaire à l'adresse suivante : https://www.etsmtl.ca/programmes-et-formations/horaire-des-examens-finaux


Politique de retard des travaux
Tout travail (devoir pratique, rapport de laboratoire, rapport de projet, etc.) remis en retard sans motif valable, c’est-à-dire autre que ceux mentionnés dans le Règlement des études (1er cycle, article 7.2.5/ cycles supérieurs, article 6.5.2) se verra attribuer la note zéro, à moins que d’autres dispositions ne soient communiquées par écrit par l’enseignante ou l’enseignant dans les consignes de chaque travail à remettre ou dans le plan de cours pour l’ensemble des travaux.



Absence à une évaluation

Afin de faire valider une absence à une évaluation en vue d’obtenir un examen de compensation, l’étudiante ou l’étudiant doit utiliser le formulaire prévu à cet effet dans son portail MonÉTS pour un examen final qui se déroule durant la période des examens finaux ou pour tout autre élément d’évaluation surveillé de 15% et plus durant la session. Si l’absence concerne un élément d’évaluation de moins de 15% durant la session, l’étudiant ou l’étudiante doit soumettre une demande par écrit à son enseignante ou enseignant.

Toute demande de validation d’absence doit se faire dans les cinq (5) jours ouvrables suivant la tenue de l’évaluation, sauf dans les cas d’une absence pour participation à une activité prévue aux règlements des études où la demande doit être soumise dans les cinq (5) jours ouvrables avant le jour de départ de l’ÉTS pour se rendre à l’activité.

Toute absence non justifiée par un motif majeur (voir articles 7.2.6.1 du RÉPC et 6.5.2 du RÉCS) entraînera l’attribution de la note zéro (0).




Infractions de nature académique
Les clauses du « Règlement sur les infractions de nature académique de l’ÉTS » s’appliquent dans ce cours ainsi que dans tous les cours du département. Les étudiantes et les étudiants doivent consulter le Règlement sur les infractions de nature académique (www.etsmtl.ca/a-propos/gouvernance/secretariat-general/cadre-reglementaire/reglement-sur-les-infractions-de-nature-academique) pour identifier les actes considérés comme étant des infractions de nature académique ainsi que prendre connaissance des sanctions prévues à cet effet. À l’ÉTS, le respect de la propriété intellectuelle est une valeur essentielle et tous les membres de la communauté étudiante sont invités à consulter la page Citer, pas plagier ! (www.etsmtl.ca/Etudiants-actuels/Baccalaureat/Citer-pas-plagier).

Systèmes d’intelligence artificielle générative (SIAG)
L’utilisation des systèmes d’intelligence artificielle générative (SIAG) dans les activités d’évaluation constitue une infraction de nature académique au sens du Règlement sur les infractions de nature académique, sauf si elle est explicitement autorisée par l’enseignante ou l’enseignant du cours.



Documentation obligatoire

Aucune référence obligatoire.




Ouvrages de références
  • Développement mobile pour Android en Java :
    • Android Programming : The Big Nerd Ranch Guide, Bryan Sills & al., Addison-Wesley Professional, 2022, ISBN : 978-0-13764-554-1.
    • Android Programming for Beginners, 3d edition, John Horton, Packt Publishing, 2021, ISBN : 978-1-80056-343-8.
  • Interfaces Personne-Machine et UX :
    • UX Design et ergonomie des interfaces, 7e édition, Jean-François Nogier, Dunod, 2020, ISBN: 978-2-10-080696-6.
    • Méthodes de design UX : 30 méthodes fondamentales pour concevoir des expériences optimales, Carine Lallemand et Guillaume Gronier, Eyrolles, 2018, ISBN : 978-2-212-67398-2.



Adresse internet du site de cours et autres liens utiles