Gestion de projets (PROJ531_IDU)
Volume horaire
Présentation
Ce module constitue une introduction à la gestion de projet en général et de projet informatique en particulier. Les étudiants se familiarisent avec les différentes éléments à prendre en compte, les différentes étapes (cadrage, planification, suivi, cycle de vie de logiciel), les pratiques et outils menant à des systèmes logiciels de petite taille.
This course is an introduction to required skills for managing small-size software projects. Besides the general aspects and tasks to take into account in any project (scope, panning, organisation, resource allocation, product life-cycle), students learn practices, methods and tools that are specific to software projects. At the end of this course, students will be able will be able to identify and manage the project/product scope, build a work breakdown structure, create a project plan, define and allocate resources, choose a process development method/model for the software product, manage the project development. Students learn on the different ways software development can be organized (waterfall, evolutive, spiral, and agile methods) and on what relevant tools they may use. Students will practice some of those methods and tools (PERT/GANTT, Scrum, Trello, SVN, GitHub) through a concrete project.
Objectifs
Ce cours vise à rendre l'élève apte à :
|
Niveau |
A l'issue de ce cours l'élève sera capable : |
expliquer les différents éléments à prendre en compte dans la gestion d'un projet informatique |
Application |
d'expliquer les contraintes de temps, coûts et délais liés à un projet |
distinguer les différents modèles/méthodes de développement d'un système logiciel (en cascade, évolutifs, en spirale, agiles) |
Application |
de comprendre et d'expliquer l'intérêt de l'utilisation d'un modèle par rapport à des caractéristiques liées au produit à développer (produit critique, produit à structure stable, produit amené à évoluer fréquemment, etc.) de comprendre et d'expliquer l'intérêt de l'utilisation d'un modèle par rapport à des caractéristiques liées au processus de développement (taille des équipes, nombre/complexité/durée des tâches, gestion des risques, etc. ) |
mettre en œuvre une méthode de gestion de projet de petite taille et des outils collaboratifs associés (e.g. Scrum, Trello) |
Application |
de choisir et mettre en application une méthode de gestion de projet de petite taille en sélectionnant les outils collaboratifs associés (e.g. Scrum, Trello) |
mettre en œuvre et utiliser des outils de planification et de suivi de projet (e.g. PERT/GANTT, SWOT, SCORing/Gestion des risques) |
Application |
de planifier et de suivre un projet en utilisant des outils tels que PERT/GANTT, SWOT et SCORing |
Plan du cours
Cours 1 : Qu'est-ce qu'un logiciel et comment le développer ?
- Qu'est-ce qu'un logiciel ?
- Cycle de vie d'un logiciel
- Crise du développement logiciel
- Approche en Cascades
- Limite de l'approche en Cascades
Cours 2 : Autres approches pour le développement
- En spirales
- Adaptable (Unified Process)
- Agile
Cours 3 : Planification d'un projet
- PERT/GANTT
- SWOT
- SCORing
- Gestion de risques
Cours 4 : Outils pour le développement logiciel
- Approche Open Source
- Outils collaboratifs
- Intégration Continue
- Gestion des erreurs et des besoins
L'ensemble des TD portera sur les notions vues en Cours à savoir définir le projet en termes de durée et de ressources, sa planification et la gestion SWOT