Développement d'applications mobiles

Chapitres

Pour référence uniquement, version officielle publiée sur LÉA

Plan de cours

A-2025

Développement d'applications mobiles

420-2SS-SW

2-2-2

2.0

Préalable(s) et prérequis à ce cours

420-0SS-SW

Préalable ou prérequis pour le(s) cours suivant(s)

Aucun

Informations sur les groupes-cours ainsi que sur les enseignant(e)s
ÉtudiantsSess.ProgrammeEnseignantLocalCourriel
125420.B0 - Techniques de l'InformatiqueJames Hoffman1131Ajhoffman@cshawi.ca
Compétences
ObjectifCode
Effectuer le développement d’applications natives avec base de données
1. Analyser le projet de développement de l’application.
2. Préparer l’environnement de développement.
3. Préparer la ou les bases de données.
4. Générer ou programmer l’interface graphique.
5.1 à 5.6 Programmer la logique applicative.
7. Participer à la mise en service de l’application.
8. Rédiger la documentation.
0SS

Le cours complète la formation en programmation en assurant le développement et la mise en oeuvre d’une application mobile native à partir d’un devis client en exploitant les technologies des bases de données relationnelles.

Composante de formation
Formation générale commune
Formation générale propre
Formation générale complémentaire
Formation spécifique
DépartementInformatique
Coordonnateur(trice)Maude-Amélie Dufresne, Lyne Amyot
Date d'approbationAoût 2025

Note préliminaire

Le cours de développement d'applications mobiles complète la formation en programmation en s'appuyant sur les cours de développement web et d'application de bureau. Il intègre les concepts d'interface utilisateur, de base de données et de programmation pour réaliser la preuve de concept d'une application mobile fonctionnelle.

Situé en 5ème session, il permet également de mettre la table à l'approche utilisée durant le projet synthèse de la session 6 et de faire vivre le cycle complet de développement d'un logiciel:

Objectifs d’apprentissage et contenus essentiels

Progression des apprentissages et contenus essentiels
DuréeObjectifs d'apprentissageContenus essentiels
~4hPréparer l'environnement de développement
  • Écosystème du développement mobile
  • React Native
~36hProgrammer l'interface graphique et la logique applicative
  • UI vs UX
  • Bonne pratiques et ergonomie
  • Interfaces graphique
  • Événements
  • Navigation
  • Requêtes HTTP
  • Interactions CRUDL, avec la base de données
~4hAnalyse le projet de développement
  • Devis du projet
  • Équipes et rôles
  • Collaboration avec Git
~4hPréparer la base de données
  • Cohérence et intégrité des données
  • Scripts de création et d'insertions de départ
~8hRédiger la documentation
  • Procédurier
  • Guide de déploiement
  • Manuel de l'utilisateur
~4hParticiper à la mise en service de l'application
  • Exécution sur un appareil Android
  • Démonstration des fonctionnalités

Méthodologie

Nous commencerons la session en présentant les différentes technologies disponibles pour le développement d'applications mobiles. Nous nous concentrerons ensuite sur le framework React Native.

Les premières semaines de la session seront dédiées à l'exploration des mécaniques nécessaires à la mise en place de l'application: configuration de l'environnement de développement, programmation des interfaces graphiques, gestion des interactions et requêtes HTTP. Une brève introduction théorique, suivie d'une démonstration pratique vous permettra d'expérimenter et intégrer ces items dans une application de démonstration qui évoluera au fil des semaines.

Finalement, à partir de la mi-session, vous serez regroupés en équipe pour réaliser un projet de développement, de l'analyse à la documentation, incluant évidemment la programmation des fonctionnalités.

Vous êtes responsable de votre réussite, je suis là pour vous guider et vous aider dans votre apprentissage. N'hésitez pas à expérimenter et me contacter pour vos questions spécifiques.

Présence aux cours, laboratoires et examens (règlement pédagogique 3)

La présence aux cours (théorie, laboratoires, stages...) est obligatoire et l’enseignant est tenu de la vérifier et de la consigner.

Lorsqu’un enseignant constate l’absence d’un étudiant et que celle-ci est justifiée, il peut offrir ou imposer des mesures de récupération appropriées.

L'étudiant qui s'absente à plus de 10% des périodes d'un cours s'expose à se voir refuser l'accès au cours et aux évaluations. Pour ma part, je prendrai les présences à chacun des cours.

L'étudiant absent à une évaluation sommative se verra attribuer la note zéro pour cette évaluation. Selon le motif à l'origine de cette absence, l’enseignant concerné décide, s'il y a lieu, des mesures à prendre en vue de compléter l'évaluation.

L’enseignant peut refuser l'accès à son cours à tout élève qui se présente en retard sans motif raisonnable.

L’enseignant peut exclure de son cours tout élève qui en entrave la bonne marche.

Fraude

Le plagiat, la fraude, la tentative de fraude ou la coopération à de tels actes entraînent des pénalités pouvant aller jusqu'à l'attribution de la note zéro.

L'utilisation des outils d'intelligence artificielle et LLM n'est pas prescrite mais doit s'inscrire dans une démarche d'apprentissage responsable et délibérée. L'inclusion d'artéfacts produits par ces outils lors de la remise d'un travail pourrait être considérée comme du plagiat.

Netiquette

La netiquette est appliquée selon les recommandations des services pédagogiques pour encadrer les échanges via les plateformes numériques utilisées au département.

Évaluation des apprentissages

Dans le cheminement du cours, mes interventions formatives prendront la forme d'encadrement personnalisé lors des exercices et des laboratoires effectués en classe.

Sauf indications contraires, les ressources suivantes sont disponibles lors des examens: les notes de cours de l'enseignant, la documentation officielle des outils utilisés et une feuille de note manuscrite recto-verso OU recto seulement pour un document numérique imprimé.

Ci-dessous, un calendrier des évaluations sommatives qui auront lieu pendant la session. Je t’indique à quelle semaine l’évaluation a lieu, le type d’évaluation, ainsi que l’objectif visé par cette évaluation.

Calendrier approximatif des évaluations
SemaineÉvaluationObjectif
4

Recipeasy - UI

5%

  • Mise en page
6

Recipeasy - UX

5%

  • Navigation et interactions

Recipeasy - Données

5%

  • Requêtes Liste, HTTP et Persistence
9

Projet - Analyse de devis

5%

  • Analyse des fonctionnalités et interactions
10

Projet - Conception

10%

  • Prototypes d'interfaces
  • Modèle de données
13

Projet - Suivi 1

15%

  • Mise en place du projet
  • Liste
  • Consultation
15

Projet - Suivi 2

15%

  • Rétroaction
  • Régression
  • Insertion
  • Modification
16

Projet - Livraison

40%

  • Code
  • Manuel d'utilisateur
  • Procédurier
  • Déploiement
  • Démonstration du fonctionnement

Réussite du cours

Pour réussir ce cours, tu dois obtenir un cumulatif de 60% sur l’ensemble des évaluations sommatives. Aucune évaluation de reprise n’est prévue.

Une pénalité de 10% sera appliquée par jour de retard pour la remise des travaux, excepté s'il est précisé qu'aucun retard n'est permis pour un travail spécifique.

Suite à une évaluation sommative, tu peux me demander une révision de note dans les 5 jours ouvrables suivant la réception du résultat cette évaluation. Je m’engage à te donner une réponse dans les 5 jours suivants.

Une attention particulière sera portée sur la qualité du français écrit et oral lors des évaluations sommatives pour un poids maximum de 10% de l’évaluation.

Les règles définies dans la RDEA s’appliquent, toutefois les précisions de ce plan de cours ont préséance, le cas échéant.

Évaluation terminale

Objectif

Effectuer le développement d’applications natives avec base de données

Nature

Développer une application qui exploite une base de données, démontrer la fonctionnalité et l’intégrité du développement de l’application et assurer une cohérence de l’interface/expérience utilisateur

Contexte de réalisation

Démonstration du fonctionnement de l’application développée lors d’une présentation orale

Critères essentiels

Respect du devis

Mise en place et manipulation de la base de données

Interface graphique en respect des normes UI/UX

Implémentation des fonctionnalités

Ressources

Écouteurs

Notes de cours
http://jh.shawinigan.info/app-mobiles


http://react.dev

http://reactnative.dev

http://expo.dev


https://lawsofux.com/

https://www.refactoringui.com/

https://www.open-xchange.com/resources/mobile-developers-guide-to-the-galaxy/

https://reports.exodus-privacy.eu.org/en/