Développement de logiciels

Sécurité d'applications de bureau, mobiles et Web

Attestation d'études collégiales (AEC)

Informatique, Programmation

Ce programme mène à une attestation d’études collégiales permettant d’acquérir les compétences qui seront soit introduites, développées ou finalisées, afin de satisfaire aux normes du secteur de développement de logiciels. Il n’est pas nécessaire d’avoir une expérience préalable de la programmation pour s’inscrire au programme.

Notez que les participants devront suivre un cours de préparation à l’anglais de niveau collégial (45 heures) afin d’acquérir les compétences que le Collège juge essentielles à la poursuite du programme.

  • Accomplir des tâches de développement de logiciels dans un environnement professionnel.
  • Fournir un avis spécialisé sur les tâches de développement de logiciels en se basant sur les techniques et les concepts fondamentaux appropriés pour traduire les exigences commerciales en applications fonctionnelles.
  • Suivre un processus de développement de logiciels en respectant l’éthique et les normes de qualité fournies.

Ce programme comprend un stage de 8 semaines au sein d’une petite, moyenne ou grande entreprise visant à mettre en pratique les connaissances et les savoir-faire appliqués à des situations authentiques liées au contexte de travail.

  • Vouloir compléter des compétences en programmation ou réorienter sa carrière vers le développement de logiciels.
Exemples d’emplois :
  • Programmeur-analyste
  • Développeur Web
  • Programmeur-analyste Java ou .net
Exemples de domaines d’emploi :
  • Solutions logicielles
  • Sécurité informatique
  • Supervision d’objets connectés
  • Services en ligne
  • Commerce électronique

Cette formation peut être offerte avec la participation financière du gouvernement du Québec dans le cadre de Montez de niveau.  Pour bénéficier de ce financement, vous devez être recommandé par un agent d’aide à l’emploi et répondre aux critères d’admissibilité. En savoir plus

Consultez l'offre complète de formations

Les étudiants peuvent compter sur l’aide d’enseignants qualifiés et sur des installations à la fine pointe de la technologie :

  • Salles de classe actives
  • Salle de serveurs
  • Espace ouvert pour vos travaux et projets étudiants
  • Laboratoire de recherche informatique LRIMa
  • 11 centres d’aide, dont un en informatique
  • 8 laboratoires dédiés au programme
  • Il est possible de devenir membre du club informatique du Collège et de participer à plusieurs concours informatiques en étant accompagné par des professeurs.
  • Un conseiller pédagogique assure le suivi de la réussite des étudiants.
  • Le Collège offre un accès à des machines virtuelles performantes à distance pour les formations offertes en ligne.

Numéro du programme : LEA.8F

Nombre d’heures : 1 440

Ce cours prépare les étudiants inscrits au programme Développement de logiciels : sécurité des applications de bureau, mobiles et Web à communiquer efficacement dans la profession. Ce cours offre aux étudiants la possibilité de mettre en pratique les compétences de communication écrite et orale requises pour mener à bien un processus logiciel. Ils liront, analyseront, produiront et réviseront les principaux documents utilisés dans le processus de production de logiciels et apprendront à communiquer efficacement lors d’entretiens oraux avec les clients et à traduire leurs besoins en documentation utilisable. Pour démontrer leur compétence dans la production de ces textes, les étudiants prendront part à une simulation en équipe d’un processus de développement de logiciels dans lequel ils créeront des questions pour les entretiens avec les clients, rédigeront et réviseront la documentation et les arriérés de travail.
L’objectif de ce cours est de permettre aux étudiants d’acquérir les compétences mathématiques et logiques nécessaires au programme d’AEC Développement de logiciels : sécurité d’applications de bureau, mobiles et Web. Les sujets abordés comprennent la représentation des nombres dans la mémoire de l’ordinateur, les mathématiques discrètes, la géométrie et les statistiques de base. La représentation des nombres couvre les nombres entiers et décimaux, les bits et les octets et les différents types de représentation des nombres. La section des mathématiques discrètes couvre l’algèbre booléenne, les tables de vérité, les ensembles, les relations et les fonctions. La section géométrie couvre les formes bidimensionnelles de base et leurs transformations. La partie statistique du cours couvre le calcul de la moyenne, de la médiane, de la variance et de l’écart-type, ainsi que les différentes manières de représenter les données.
Ce cours présente la programmation informatique aux étudiants n’ayant aucune expérience préalable de la programmation. Il explique également les compétences de base en matière de résolution de problèmes et de conception d’algorithmes, ce qui permet aux étudiants d’écrire et de tester leurs programmes à l’aide d’un langage de programmation orienté objet (comme C#, Java ou Python) et d’un environnement de développement intégré (IDE). Il introduit également les concepts fondamentaux de la programmation comme la structure du programme, les types de données et les variables, les constructions conditionnelles et en boucle, les objets, les méthodes, les classes, les tableaux et les listes de tableaux.
Dans ce cours, les étudiants apprennent comment fonctionnent les logiciels de bas niveau, y compris certains aspects du matériel sous-jacent ainsi que la structure et les principales fonctions du système d’exploitation. Ce cours donnera aux étudiants une vue d’ensemble de la manière d’utiliser les ressources d’information, les applications informatiques et le matériel pour s’adapter aux technologies de l’information, qui seront étendues dans le cadre du stage.
Dans ce cours, les étudiants approfondissent leurs connaissances des concepts et de l’utilisation des langages de programmation dans un contexte de programmation orientée objet. À l’issue de ce cours, les étudiants devraient être en mesure d’utiliser d’autres éléments et constructions du langage de programmation comme les tableaux multidimensionnels, les constructions de programmation orientée objet comme les classes, les méthodes, les classes abstraites, les interfaces et le polymorphisme. Les étudiants devraient également être capables d’appliquer les procédures de gestion des versions du code d’un programme.
Dans ce cours, les étudiants apprennent la conception et la mise en œuvre de bases de données. Après avoir suivi ce cours, les étudiants devraient être capables de concevoir et de créer une base de données basée sur les exigences d’un modèle de données, d’utiliser un langage de requête pour définir une base de données, d’insérer, d’extraire, de mettre à jour et de manipuler les données. Les étudiants devraient également être capables d’assurer la confidentialité et la cohérence des données et de respecter les procédures de sauvegarde et de restauration des bases de données.
Les étudiants apprennent les algorithmes de base courants, comme les algorithmes de tri, les modèles de conception et les modèles architecturaux. À l’issue de ce cours, les étudiants devraient être en mesure d’analyser des exigences données, de choisir un algorithme en fonction de son efficacité, d’appliquer les algorithmes appropriés, de mettre en œuvre les modèles de conception adéquats et de mettre en œuvre les modèles architecturaux pertinents. Les étudiants devraient également être capables de documenter, de déployer et de contrôler la qualité du programme.
Sans connaissances préalables en matière de logiciel frontal, les étudiants apprendront les outils, techniques et cadres technologiques essentiels qui sont utilisés pour développer des interfaces utilisateur frontales sur le Web. À l’issue de ce cours, les étudiants devraient être en mesure de développer des interfaces utilisateur Web, y compris la structure, le style, l’interactivité, la logique d’application côté client et le traitement des données.
Dans ce cours, les étudiants se familiarisent avec le processus de développement de logiciels et de gestion de projet et mettent leurs connaissances en pratique par le biais d’un travail collaboratif. À l’issue de ce cours, les étudiants devraient être en mesure d’effectuer une analyse des exigences du système, de planifier et de consigner leur travail dans des outils de gestion de projet, de collaborer à la conception, à la mise en œuvre, au déploiement, aux tests et à la documentation d’un programme. Les étudiants devraient également être capables de mettre en pratique leurs connaissances acquises précédemment en matière de développement de logiciels et d’utiliser des outils de test et de conditionnement de logiciels.
Le cours sur les services Web couvre les composants logiciels qui gèrent les interactions des programmes logiciels distants communiquant sur le Web. Après avoir suivi ce cours, les étudiants devraient être en mesure de décrire l’interfonctionnement des protocoles Web, de concevoir et de développer des interfaces de programmation d’applications Web (API), des services Web et le code client qui interagit avec ces services. Les étudiants devraient également être capables de préparer l’environnement de développement informatique, de déployer et de documenter les services Web, et de contrôler la qualité du code développé.
Dans ce cours, les étudiants apprennent à développer une application de bureau comprenant une interface utilisateur. Ils devraient être en mesure de mettre en pratique leurs connaissances acquises précédemment en matière de développement de logiciels dans le contexte d’une application de bureau. À l’issue de ce cours, les étudiants devraient être capables de préparer l’environnement de développement informatique, de développer la logique du programme et l’interface utilisateur pour une application de bureau, de sélectionner et d’appliquer des algorithmes, des modèles de conception et d’architecture, et de déployer, de documenter et de contrôler la qualité d’une application de bureau.
À la fin de ce cours les étudiants seront en mesure d’établir des relations professionnelles au sein et en dehors de leur équipe de développement logiciels, de s’investir efficacement au sein d’une équipe pluridisciplinaire et de pouvoir se familiariser avec les obligations professionnelles, légales et déontologiques de base dans le domaine.
Le cours sur la cybersécurité couvre les mesures qui doivent être appliquées à l’environnement logiciel et au logiciel développé pour assurer la protection contre les menaces de cybersécurité. À l’issue de ce cours, les étudiants devraient être en mesure d’analyser et d’évaluer les risques liés à la sécurité de l’information, d’appliquer des mesures de sécurité dans le cadre du processus de développement afin de protéger le logiciel développé et son environnement, de garantir la confidentialité et l’intégrité des données, et de travailler dans un contexte d’authentification et d’autorisation. Les étudiants devraient également être capables d’intégrer les mesures de sécurité dans leurs pratiques et techniques de développement acquises précédemment.
Dans ce cours, les étudiants apprennent à appliquer et à compléter leurs connaissances en matière de programmation de bases de données, et d’application dorsale et frontale en développant des applications fonctionnelles complètes. À l’issue de ce cours, les étudiants devraient être en mesure d’analyser les exigences de l’application, de préparer l’environnement de développement informatique, de préparer la base de données, de programmer l’interface Web, de programmer la logique de l’application côté serveur et côté client, de contrôler la qualité, de déployer l’application dans un hébergeur Web et de produire de la documentation. Les étudiants devraient également être capables de participer aux tâches données dans un environnement d’équipe collaborative et de les réaliser.
Dans ce cours, les étudiants apprennent à développer des applications mobiles qui interagissent avec une unité finale. À l’issue de ce cours, les étudiants devraient être capables de préparer l’environnement informatique pour le développement mobile, de développer l’interface utilisateur mobile, de programmer la logique de l’application, de contrôler la qualité de l’application, et de déployer et de produire la documentation d’une application mobile.
À venir.
1. Satisfaire à l’une des conditions suivantes
  • Avoir interrompu ses études à temps plein OU poursuivi des études postsecondaires à temps plein pendant au moins 2 sessions consécutives ou une année scolaire.
  • Être visé par une entente conclue entre le collège et un employeur ou bénéficier d’un programme gouvernemental.
  • Avoir interrompu ses études à temps plein pendant une session ET avoir poursuivi des études postsecondaires à temps plein pendant une session.
ET
2. Satisfaire à l’une des conditions suivantes
  • Détenir un diplôme d’études secondaires (DES) ou un diplôme d’études professionnelles (DEP).
ET
3. Satisfaire à l’une des conditions suivantes
  • Vouloir obtenir un diplôme d’une formation technique dans un domaine pour lequel il n’existe aucun programme d’études conduisant au diplôme d’études collégiales.
  • Être visé par une entente conclue entre le ministre et un ministère ou un organisme du gouvernement du Québec en matière de formation.
  • Réussir le test informatique.

Un courriel contenant les directives pour la passation du test est transmis 48 heures avant l’examen.

Avant de vous inscrire, consultez la page Admission et inscription et la liste des documents nécessaires à l’admission commune à tous les programmes.

Autres documents spécifiques à ce programme à transmettre lors de la demande d’admission :

  • Attestation d’emploi au besoin

Après avoir fait votre demande d’admission en ligne, vous pourrez consulter le statut de votre dossier ou compléter celui-ci.

La formation en bref

Frais

Admission

30$

Inscription 2023-2024

181$

Choisissez au moins un bloc de disponibilité

Si aucune date n’est affichée, soyez informé par courriel des prochaines dates en vous inscrivant à l’alerte ci-dessous.

Pas disponible?

Inscrivez-vous à une alerte pour connaître les prochaines dates offertes.