Donner les éléments essentiels du génie logiciel afin d'être en mesure de concevoir des logiciels simples et de qualité et d'aborder les concepts avancés d'architecture des logiciels.
Introduction aux composants et à l'ingénierie du logiciel: spécification des besoins, architecture, analyse, conception, codage, tests formels. Caractéristiques du produit informatique et des composants. Réutilisation, normes de codage, style, règles de conception. Documentation des logiciels et utilisation de «doxygen». Réutilisation et STL - Standard Template Library. Concept de composants en POO. Structure physique des composants et encapsulation. Revue des mécanismes d'encapsulation en C/C++. Composition versus héritage. Techniques de test, traitement des erreurs. Composants et interface utilisateur - GUI. Composants commerciaux et concept d'interfaces. Component Object Model - COM. Indépendance du langage et de la plate-forme. Modèle client, serveur «in-process». Librairies dynamiques. Aspects éthiques du développement des logiciels.
Préalable(s): (8INF259 et 8PRO128)
Formule pédagogique : Cours Magistral
Ce cours n'est dans aucun programme ouvert aux admissions.