Objectif

Permettre à l'étudiant d'approfondir ses connaissances du processus de développement de logiciel et de décomposition modulaire. Permettre à l'étudiant d'analyser les différentes méthodes et les outils qui améliorent la qualité et diminuent le coût de développement et de gestion de systèmes logiciels.

Contenu

Rappel sur les différentes phases de développement de logiciel. Méthodes de développement de logiciels (classiques, itératives, spirales et agiles). Processus unifié (RUP): concept et modèle. Spécification des exigences selon une norme standard. Approche du développement par modèles : cas d'utilisation, modèles en langage UML. Décomposition et composition modulaires des applications. Réutilisation, évolution et maintenance du logiciel. Développement des applications avec les patrons de conception et l'architecture orientée modèle (MDA: Model Driven Architecture). Techniques de développement orientées objet, aspect et composant (programmation orientée objet, programmation par aspect, programmation par sujet, programmation par vue). Norme de qualité (ISO9000). Système qualité. Vérification et validation des logiciels.