Les systèmes d’information sont des éléments essentiels du fonctionnement d’une entreprise industrielle. L’ingénieur en génie logiciel et des technologies de l’information doit être en mesure de gérer le développement, le déploiement et les opérations de ces systèmes ainsi que de s'assurer de leur qualité.
Dans ce cours, les différentes modèles de cycles de vie de projets logiciels sont introduits et expérimentés à l'aide d'un simulateur. Un projet fait l'objet de planification des tâches, des activités, des rôles et des livrables par l'équipe de projet (c'est-à -dire à l'aide d'une approche classique et/ou agile/DevOps de gestion de projet), l'estimation de l'effort/coût est approfondie et la notion de gestion du risque. Des notions de culture qualité, neurosciences, savoir-être (Sorftskills), leadership, éthique, d'intelligences artificielles et considérations environmentales sont abordées. Les notions de gestion des fournisseurs et de contrats sont aussi présentées. La deuxième partie du cours porte sur des sujets d'assurance qualité logicielle (AQL), incluant la définition d'exigences qualité, de revues/inspection, vérification & validation et d'audits sont couverts. Les normes et modèles de pratiques exemplaires les plus importants du domaine sont aussi introduits: SWEBOK, PMBOK, BABOK, ISO 12207, CMMi, ISO 9001/90003, ITIL/ISO20000, CobiT, EN50128 pour le ferroviaire, DO-178C pour l'aéronautique et ISO13485 pour les machines médicales sont introduits. Par la suite un chapitre se consacre aux mesures utilisées dans un projet logiciel.
Finalement l'étudiant pourra comprendre l'importance de la formalisation des politiques, processus et procédures du domaine du logiciel pour une entreprise. Les séances de laboratoire sont axées sur l’application des concepts vus en classe et portant sur l'expérimentation des cycles de vies, la planification d'un projet, incluant les activités d'AQL et l'estimation.