Ce cours vise l’acquisition des principes de la réingénierie du logiciel. Différentes techniques à différents niveaux d’un logiciel seront étudiées de manière théorique ou pratique.
Au terme de ce cours, l'étudiant sera en mesure de proposer des solutions concrètes pour la réingénierie dans le milieu professionnel. Les concepts suivants seront abordés :
- maintenance du logiciel;
- exigences des systèmes modernes et les techniques de transformations des systèmes patrimoniaux;
- définition des systèmes patrimoniaux;
- stratégies de transformation des systèmes patrimoniaux;
- approches centrées sur les règles d’affaires;
- réusinage de code;
- patrons en réingénierie;
- réingénierie de bases de données;
- rétro-ingénierie et ses outils.