Présentation
Le génie logiciel
Le génie logiciel devient un aspect incontournable des activités de production logicielle. Bien que l’organisation en général ait constaté son importance, son implantation dans les processus de développement demeure souvent longue et difficile. Pourtant, le génie logiciel doit faire partie de la culture de développement et être intégré à la pratique de tous les intervenants et plus particulièrement des analystes et des développeurs. Nous savons que les gains à long terme peuvent se concrétiser par des délais de développement plus courts, des équipes de taille réduite, une plus faible probabilité de s’enliser dans des développements longs, coûteux, voire voués à l’échec, de plus faibles coûts d’entretien des systèmes en opération, une meilleure gestion de la complexité et du risque, et une plus grande capacité à faire face à des problèmes complexes. Dans le contexte actuel, l’attention des organisations se tourne de plus en plus vers des approches en génie logiciel qui utilisent des technologies de l’orientée objet pour le développement de logiciels. Cette technologie de l’orientée objet s’est développée de manière à offrir des méthodes, des techniques et des outils capables de supporter des solutions propres aux pratiques en matière de génie logiciel. Dans les faits, la modélisation orientée objet se présente comme une approche fédératrice au cœur du système informatique actuel et transforme les pratiques en matière de génie logiciel en offrant la modularité, la réutilisabilité, l’extensibilité, la lisibilité, et la capacité à manipuler la complexité. Pour la conception orientée objet, l’industrie se tourne vers la notation unifiée, le langage de notation UML (Unified Modeling Language). Ce dernier s’impose dans le monde des entreprises comme un des principaux outils de conception des modèles utilisés pour représenter les systèmes à développer. Pour la première fois, un langage de notation réussit à s’imposer autant dans l’industrie que dans les établissements d’enseignement. La notation unifiée de modélisation objet connaît une très forte croissance. La connaissance de cette notation est très demandée en raison de sa flexibilité, de sa rigueur, et de sa polyvalence.
Les objectifs du cours
Le cours INF 1410 Génie logiciel appartient au programme de certificat de premier cycle en informatique appliquée de la TÉLUQ. L’objectif général de ce programme vise à vous initier à l’analyse des possibilités d’intégration des technologies informatiques en fonction des besoins d’une organisation. À l’intérieur du programme de certificat, le cours INF 1410 couvre l’ensemble des objectifs spécifiques du programme. Il complète la formation en développement orienté objet que proposent les cours INF 2005 et INF 1220. À ce stade, vous possédez une connaissance suffisante du domaine de l’orienté objet pour participer à des projets de conception logicielle dans votre milieu de travail. Quant au cours INF 1410, il permet de vous familiariser avec un sous-ensemble de concepts et de techniques du génie logiciel adoptant une approche orientée objet et d’appliquer des méthodes et des outils du génie logiciel, comme les logiciels de modélisation et le langage de notation UML. D’une manière plus spécifique, il permettra d’acquérir les trois compétences suivantes :
- analyser les besoins d’un client et le domaine;
- concevoir une solution informatique empruntant le modèle orienté objet et utilisant le langage de notation UML;
- concevoir des plans de tests à partir d’un dossier d’analyse;
- passer de la conception au code.
Tout au long de son apprentissage, vous serez invité à réaliser des activités propres au développement industriel d’un logiciel, telles que l’analyse des besoins du client, la modélisation du domaine du problème et la réalisation de revues techniques.
La démarche d’apprentissage
Dans le cadre du cours INF 1410, vous abordez la problématique de la conception logicielle selon l’approche orientée objet. La structure du cours s’inspire de la gestion de projet dans un contexte organisationnel, tout en tenant compte du processus d’apprentissage que vit l’apprenant. Nous avons ainsi prévu trois temps correspondant à trois étapes de la réalisation d’un projet : Se préparer, Réaliser le projet et Conclure. L’étape Réaliser le projet constitue, en fait, le cœur de votre activité d’apprentissage. Elle est composée des modules 2, 3, 4 et 5. Les deux autres étapes que sont le module 1 Se préparer et le module 6 Conclure n’en sont pas moins importantes. Comme vous le constaterez en lisant leur description, elles ajoutent un plus à la démarche d’apprentissage en vous donnant l’opportunité de bien vous y préparer pour en tirer le plus d’aisance possible et pour vous inciter à vous interroger sur l’apprentissage réel que vous avez fait et sur son lien avec le marché du travail. Aussi, ces deux modules permettent de situer le cours par rapport au domaine du génie logiciel et par rapport au développement d’un système informatique dans un contexte réel.
Module 1 – Se préparer
Ce module se voit comme un moment de préparation. Avant de plonger tête première dans votre apprentissage, prenez le temps de situer le cours INF 1410 par rapport au domaine du génie logiciel et de vous informer sur son fonctionnement. Consacrez également quelques minutes pour tester vos connaissances du paradigme objet de manière à vous assurer que vous êtes vraiment prêt à entreprendre les apprentissages proposés dans les trois modules suivants. Enfin, explorez le cahier des charges d’un projet de génie logiciel. Ce projet sera développé en guise d’exemple tout au long du cours.
Module 2, 3, 4 et 5 – Réaliser le projet
Les modules 2, 3, 4 et 5 constituent le cœur du cours. Ils sont articulés autour d’un volet théorique et d’un volet pratique, ce dernier prenant la forme d’un projet. C’est le moment de travailler à l’acquisition de compétences et à leur rodage en réalisant les diverses activités liées à la rédaction d’un document d’analyse, à la conception d’une solution informatique, à l’élaboration de tests logiciels et à son implémentation. En réalisant ces activités, vous vous confronterez à la mise en œuvre des notions préalablement acquises ainsi qu’à l’application systématique des éléments d’une méthode d’analyse et de conception orientée objet à la production d’un logiciel. La réalisation de ces modules vous amènera à produire des livrables du type de ceux utilisés dans les organisations. Certains auront été soumis à des revues techniques pour en contrôler la qualité. Après la réalisation de ces modules, vous serez donc prêts à conduire et à réaliser des projets de production logicielle dans votre organisation, en utilisant l’approche orientée objet ainsi que des méthodes et des outils logiciels adaptés.
Module 6 – Conclure
Le module 6 consiste à conclure le projet d’apprentissage. Après une présentation de la deuxième itération dans la solution du projet exemple, le module vous propose une réflexion sur votre apprentissage et sur le génie logiciel et vous invite à statuer sur votre perception du domaine étudié et sur la réalisation du projet. La feuille de route constitue un outil pour vous aider à planifier votre démarche dans le cours. Les échéances de remise des travaux le sont à titre indicatif. Sur la base de cette feuille de route, élaborez votre propre calendrier de remise des travaux en prenant en compte vos habitudes et préférence d’étude, ainsi que vos disponibilités pendant la session.
L’environnement d’apprentissage et le matériel didactique
À l’exception du manuel de base de Craig Larman, UML 2 et les design patterns, toutes les ressources nécessaires sont rassemblées sur le site du cours.
Le site du cours
À partir de la page d’accueil du site du cours INF 1410, vous accédez à l’aide du menu À PROPOS DU COURS au document que vous êtes en train de lire (Présentation), à la Feuille de route, au cahier des charges du projet que vous allez réaliser (Projet), à la liste des ressources qui vous utiliserez dans le cours (Ressources), au Glossaire, au Forum télématiques de la Téluq et à une foire aux questions (FAQ). À l’aide du menu APPRENTISSAGE, vous accédez à la présentation de chacun des modules du cours et aux consignes de l’ensemble des activités. Au sein de chaque consigne d’activité, des indications et des liens hypertextes vous permettent d’accéder aux documents dont vous aurez besoin pour réaliser l’activité.
Documents de référence
La matière à étudier se trouve principalement dans des textes extraits de l’ouvrage de Craig Larman et des vidéoclips répartis dans les modules 2, 3 et 5 du cours. Ces textes et vidéoclips traitent de l’analyse des besoins du client et du domaine, de la conception d’une solution orientée objet, de l’élaboration de tests logiciels et du passage de la conception au code.
Autres ressources
Des guides d’utilisation du logiciel StarUML, des guides résumant les éléments fondamentaux de la notation UML, des gabarits pour la réalisation des travaux notés sont aussi mis à votre disposition sur le site du cours. Ils sont accessibles à partir des consignes des activités quand c’est le temps de les utiliser mais ils sont aussi tous répertoriés dans la page Ressources.
L’encadrement
La TÉLUQ vous offre des services de tutorat pour vous assister tout au long de la réalisation de vos apprentissages. Ces services sont offerts par la personne tutrice dont les coordonnées vous sont communiquées en début du cours. Elle intervient auprès de vous en utilisant divers outils de communication comme le courriel, le téléphone et autres selon la situation de l’étudiante ou de l’étudiant.
La nature des services d’encadrement
Définissons la nature de ces services en fonction des trois grandes étapes de votre cours : se préparer, réaliser le projet (modules 2, 3, 4 et 5) et conclure. Dans la première étape, la personne tutrice engage l’activité de démarrage. Elle le fait pendant la première semaine du cours en établissant un contact personnalisé par téléphone ou par courriel. C’est le moment idéal pour obtenir des réponses, individuellement, à vos interrogations touchant l’organisation de votre environnement d’apprentissage. Dans la deuxième étape, soit pendant toute la durée des apprentissages, la personne tutrice intervient auprès de vous en guidant votre cheminement et en répondant à vos questions. Elle évalue vos travaux tout en vous proposant une rétroaction constructive sur leur contenu. Enfin, à la troisième étape, la personne tutrice vous aide à évaluer votre apprentissage, à faire votre propre mise au point sur celui-ci; elle peut également vous accompagner dans l’évaluation du cours.
L’évaluation des apprentissages
L’évaluation comporte sept travaux notés. Le tableau suivant propose la liste des travaux notés, leur pondération ainsi que les critères d’évaluation qu’appliquera votre personne tutrice lors de l’étude de vos travaux.
| Travaux notés | Critères d’évaluation | Remise | % |
|---|---|---|---|
| Travail noté 1 Modèle de cas d’utilisation |
| Semaine 5 | 15 % |
| Travail noté 2 Revue technique des cas d’utilisation |
| Semaine 5 | 5 % |
| Travail noté 3 Dossier d’analyse |
| Semaine 7 | 20 % |
| Travail noté 4 Dossier de conception |
| Semaine 12 | 35 % |
| Travail noté 5 Modèle de cas de test |
| Semaine 13 | 10 % |
| Travail noté 6 Dossier d’implémentation |
| Semaine 14 | 10 % |
| Travail noté 7 Bilan personnel |
| Semaine 15 | 5 % |
100% |