Advanced software design methods and choice of architecture. Multi-tier, client-server, extensible, and dynamic software architectures. Advanced design and implementation of libraries and dynamic binding of components. Frameworks and pluggable architectures. Design and composition of component architectures. Advanced design patterns for distributed architectures: service access and configuration, event processing, synchronization, and parallelism. Emerging design and architecture approaches cloud architectures, service-oriented architectures, and others.

--------------------------------------------------------------
Méthodes de conception avancées de logiciels et choix d'architecture. Architectures logicielles : multi-niveaux, clients-serveurs, extensibles et dynamiques. Concepts et implantations avancées des bibliothèques et du chargement de composantes dynamiques. Cadres de référence et plugiciels. Composition et architecture par composantes. Patrons de conception avancés pour les systèmes distribués : accès aux services et configuration, traitement d'événements, synchronisation et accès simultanés. Approches émergentes de conception et d'architecture : conception orientée aspect, architecture orientée services et autres.